/*
 * http://github.com/peteboere/css-crush ()
 */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons|Material+Icons+Outlined&display=block);
/* Generic Selectors */
/* Reset standards */
*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    }
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    }
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
    }
nav ul {
    list-style: none;
    }
blockquote,
q {
    quotes: none;
    }
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: none;
    }
img {
    -ms-interpolation-mode: bicubic;
    }
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    }
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
    }
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
    }
del {
    text-decoration: line-through;
    }
abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
    }
table {
    border-collapse: collapse;
    border-spacing: 0;
    }
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
    }
input,
select,
td {
    vertical-align: middle;
    }
* {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    }
html,
body {
    font-size: 17px;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    }
body.in-frame {
    height: initial;
    weidth: initial;
    }
html {
    text-rendering: optimizeLegibility !important;
    }
body {
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    background: #fff;
    overflow-x: hidden;
    font-weight: normal;
    font-style: normal;
    color: #000;
    font-family: "Trebuchet MS","Arial",sans-serif;
    }

/*General*/
ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    }
h1,
h2,
h3,
h4,
h5,
h6,
.text-heading-h1 {
    margin: 1em 0;
    font-weight: 700;
    line-height: 1.4;
    }
h1,
.text-heading-h1 {
    font-size: 40px;
    line-height: 1.2;
    }
h2 {
    font-size: 36px;
    }
h3 {
    font-size: 28px;
    }
h4 {
    font-size: 24px !important;
    }
h5 {
    font-size: 18px !important;
    }
h6 {
    font-size: 17px !important;
    }
h1 + h2 {
    margin-top: 0;
    }
a:not(.btn),
a:not(.btn):link,
a:not(.btn):visited,
a:not(.btn):active,
a:not(.btn):hover,
a:not(.btn):focus {
    color: #326eb3;
    text-decoration: none;
    }
a:not(.btn):hover,
a:not(.btn):link:hover,
a:not(.btn):visited:hover,
a:not(.btn):active:hover,
a:not(.btn):hover:hover,
a:not(.btn):focus:hover {
    color: #387ac7;
    text-decoration: underline;
    }
a:not(.btn):active,
a:not(.btn):link:active,
a:not(.btn):visited:active,
a:not(.btn):active:active,
a:not(.btn):hover:active,
a:not(.btn):focus:active {
    color: #2c629f;
    }
h1 a:not(.btn),
h1 a:not(.btn):link,
h1 a:not(.btn):visited,
h1 a:not(.btn):active,
h1 a:not(.btn):hover,
h1 a:not(.btn):focus,
h2 a:not(.btn),
h2 a:not(.btn):link,
h2 a:not(.btn):visited,
h2 a:not(.btn):active,
h2 a:not(.btn):hover,
h2 a:not(.btn):focus,
h3 a:not(.btn),
h3 a:not(.btn):link,
h3 a:not(.btn):visited,
h3 a:not(.btn):active,
h3 a:not(.btn):hover,
h3 a:not(.btn):focus,
h4 a:not(.btn),
h4 a:not(.btn):link,
h4 a:not(.btn):visited,
h4 a:not(.btn):active,
h4 a:not(.btn):hover,
h4 a:not(.btn):focus,
h5 a:not(.btn),
h5 a:not(.btn):link,
h5 a:not(.btn):visited,
h5 a:not(.btn):active,
h5 a:not(.btn):hover,
h5 a:not(.btn):focus,
h6 a:not(.btn),
h6 a:not(.btn):link,
h6 a:not(.btn):visited,
h6 a:not(.btn):active,
h6 a:not(.btn):hover,
h6 a:not(.btn):focus {
    text-decoration: none !important;
    }
strong {
    font-weight: 600;
    }
textarea {
    overflow: auto;
    }
.gap-20 {
    gap: 20px;
    }
.gap-40 {
    gap: 40px;
    }
.mr-1 {
    margin-right: 10px;
    }
.mr-2 {
    margin-right: 20px;
    }
.wrapper {
    display: block;
    margin: 0 auto;
    max-width: -webkit-calc(1600px + 5em);
    max-width: calc(1600px + 5em);
    padding: 0 5em;
    }
.ajax-message {
    display: block;
    padding: 12px 16px;
    font-size: 14px;
    margin-bottom: 15px;
    }
.ajax-message a {
    font-weight: 600;
    text-decoration: underline;
    }
.ajax-error {
    background-color: rgba(235,59,90,.1) !important;
    border-color: #eb3b5a !important;
    color: #eb3b5a !important;
    text-align: left;
    }
.ajax-error a {
    color: #eb3b5a !important;
    }
.ajax-success {
    background-color: rgba(32,191,107,.1) !important;
    border-color: #20bf6b !important;
    color: #20bf6b !important;
    }
.ajax-success a {
    color: #20bf6b !important;
    }
i[class*="material-icons"] {
    font-family: "Material Icons";
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "liga";
    }
i[class*="material-icons"].material-icons-outlined {
    font-family: "Material Icons Outlined";
    }
input[type="date"]:not(.no-datepicker) {
    cursor: pointer;
    }
input[type="date"]::-webkit-datetime-edit,
input[type="date"]::-webkit-datetime-edit-fields-wrapper,
input[type="date"]::-webkit-datetime-edit-text,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-day-field,
input[type="date"]::-webkit-datetime-edit-year-field {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1.3;
    padding: 0;
    margin: 0;
    }
input[type="date"]:not(.no-datepicker)::-webkit-inner-spin-button,
input[type="date"]:not(.no-datepicker)::-webkit-calendar-picker-indicator,
input[type="date"]:not(.no-datepicker)::-webkit-clear-button {
    display: none;
    }

/* Page Loader */
div#page_loader {
    position: fixed;
    z-index: 3999;
    width: 100%;
    height: 100%;
    text-align: center;
    top: 0;
    left: 0;
    opacity: .6;
    background: url(/images/loader.gif) center no-repeat #fff;
    }

/* HEADER */
header {
    -webkit-box-shadow: 0 1px 4px 0 rgba(0,0,0,.1);
    box-shadow: 0 1px 4px 0 rgba(0,0,0,.1);
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    }
.home header {
    background: transparent;
    }
.home .main {
    margin-top: 0;
    }
.home.scrolled header .site-main-header {
    background-color: #fff;
    }
header .top-header {
    font-weight: 700;
    color: #373435;
    text-align: right;
    overflow: visible;
    position: relative;
    top: 16px;
    font-size: 13px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    z-index: 2;
    pointer-events: none;
    }
header .top-header a,
header .top-header button {
    pointer-events: auto;
    }
header .top-header .nav {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    }
header .top-header ul.nav li {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin: 0 0 0 40px;
    }
header .top-header ul.nav > li.only-mobile,
header .site-main-header .nav-container .main-header ul.nav > li.only-mobile {
    display: none;
    }
header {
    background: #fff7a;
    }
header .top-header .icon a {
    transition: background .5s ease,border .2s ease,color .2s ease;
    -webkit-transition: background .5s ease,border .2s ease,color .2s ease;
    -moz-transition: background .5s ease,border .2s ease,color .2s ease;
    -ms-transition: background .5s ease,border .2s ease,color .2s ease;
    -o-transition: background .5s ease,border .2s ease,color .2s ease;
    }
header .icon .fa-apple {
    font-size: 28px;
    margin-bottom: 4px;
    }
header .logo {
    display: block;
    padding: 0;
    }
header .logo img {
    max-height: 80px;
    max-width: 100%;
    }
header .main-header {
    padding: 10px 0;
    }
header .main-header .nav li:not(.button) {
    line-height: 50px;
    }
header .main-header .nav a {
    display: inline-block;
    padding: 25px 0;
    height: 100%;
    line-height: 1.4;
    font-weight: 900;
    color: #326eb3;
    text-transform: uppercase;
    }
header .top-header .nav {
    text-transform: uppercase;
    }
header .main-header.web .nav a[href="about-us"],
header .main-header.web .nav a[href="support"],
header .main-header.web .nav a[href="/provider-settings"] {
    padding: 4px 0 16px 0;
    }

/* .mobilenav.on + .main-header ul.nav a[href="about-us"], .mobilenav.on + .main-header ul.nav a[href="support"], .mobilenav.on + .main-header ul.nav a[href="/provider-settings"] {
  padding: 8px 10px !important;
} */
header .site-main-header .wrapper {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 95px;
    }
header .site-main-header .nav-container .main-header ul.nav li {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin: 0 0 0 60px;
    }
header .site-main-header .nav-container .main-header ul.nav li.active > .no-link,
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn),
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn):link,
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn):visited,
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn):active,
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn):hover,
header .site-main-header .nav-container .main-header ul.nav li.active > a:not(.btn):focus {
    color: #326eb3;
    }
header .site-main-header .nav-container .main-header > ul.nav > li > .no-link:after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):link:after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):visited:after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):active:after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):hover:after,
header .site-main-header .nav-container .main-header > ul.nav > li > a:not(.btn):focus:after {
    content: " ";
    display: block;
    background: #326eb3;
    height: 3px;
    width: 100%;
    margin: 4px 0 -7px 0;
    opacity: 0;
    -webkit-transform: scale(0,1);
    -ms-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transition: all .1s ease-out;
    transition: all .1s ease-out;
    }
header .site-main-header .nav-container .main-header > ul.nav > li:hover > .no-link:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > .no-link:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > .no-link:after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):link:after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):visited:after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):active:after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):hover:after,
header .site-main-header .nav-container .main-header > ul.nav > li:hover > a:not(.btn):focus:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):link:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):visited:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):active:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):hover:after,
header .site-main-header .nav-container .main-header > ul.nav > li.touch-hover > a:not(.btn):focus:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):link:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):visited:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):active:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):hover:after,
header .site-main-header .nav-container .main-header > ul.nav > li.active > a:not(.btn):focus:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    }
header .site-main-header .nav-container .main-header ul.nav li .no-link:hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):link:hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):visited:hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):active:hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):hover:hover,
header .site-main-header .nav-container .main-header ul.nav li a:not(.btn):focus:hover {
    color: #326eb3;
    text-decoration: none;
    }
header .site-main-header .nav-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: right;
    position: relative;
    white-space: nowrap;
    }
.mobilenav {
    display: none;
    }
header .main-header .nav li.button a {
    border-radius: 4px;
    background-color: #ff9300;
    padding: 14px 28px;
    margin: 5px 0;
    color: #2b1800;
    font-weight: 700;
    -webkit-transition: background .2s ease,border .2s ease,color .2s ease;
    transition: background .2s ease,border .2s ease,color .2s ease;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
header .main-header .nav li.button a:hover {
    text-decoration: none;
    background-color: #cc7600;
    color: #2b1800 !important;
    }
header .main-header .nav li.button.active > a {
    color: #2b1800 !important;
    }
li.main-header-moved-below.first-item-below {
    border-top: 1px solid #677174;
    margin-top: 15px !important;
    padding-top: 15px;
    }
li.main-header-moved-above.last-item-above {
    border-bottom: 1px solid #677174;
    margin-bottom: 15px !important;
    padding-bottom: 15px;
    }
header.loggedin .login-only,
footer.loggedin .login-only {
    display: none !important;
    }
header.loggedout .logout-only,
footer.loggedout .logout-only {
    display: none !important;
    }
header.loggedout .desktop-only,
header.loggedin .desktop-only {
    display: inline-block !important;
    }
header.loggedout .mobile-devices-only {
    display: none;
    }
header.loggedin .mobile-devices-only {
    display: none !important;
    }
header li.hidden {
    display: none !important;
    }

/* Submenu */
header .nav li.hasSubmenus .sub:not(.show) {
    display: none;
    }
header .nav li.hasSubmenus .sub.show {
    display: block;
    }
header .nav li.hasSubmenus .sub li {
    width: 100%;
    padding: 0 15px;
    }
header .nav li.hasSubmenus .sub li:hover {
    background-color: #ff9300;
    color: #fff;
    }
header .nav li.hasSubmenus .sub li:hover a,
header .nav li.hasSubmenus .sub li a:hover span {
    color: #fff;
    }
header .nav li.hasSubmenus:after {
    font-family: "Font Awesome 5 Free";
    content: "▼";
    font-weight: 900;
    color: #326eb3;
    margin-left: 2px;
    }
header .nav li.hasSubmenus .sub .nav {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    -webkit-box-shadow: 0 4px 24px 0 rgba(0,0,0,.2);
    box-shadow: 0 4px 24px 0 rgba(0,0,0,.2);
    background-color: #fff;
    padding: 5px 0;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 15px;
    z-index: 101;
    text-align: left;
    }
header .site-main-header .nav-container .main-header > ul.nav > li.hasSubmenus .sub .nav li {
    margin-left: 0;
    }
header .nav li.hasSubmenus .sub .nav a {
    padding: 7px 0;
    line-height: 25px;
    color: #326eb3;
    width: 100%;
    font-size: 1em;
    }
.border-bottom {
    border-bottom: 1px solid #677174;
    }
.border-top {
    border-top: 1px solid #677174;
    }
img.apple-logo,
img.android-logo {
    height: 24px;
    }

/* LEGACY FOOTER — replaced by the redesign footer at end of file (commented 2026-06-15) */
/*
footer {
  border-top: 1px solid $(light-gray);
}

footer .footer-section.top .split {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

footer .footer-section.top .split > .left-side {
  width: 29%;
}

footer .footer-section.top .split > .center-side {
  width: 40%;
}

footer .footer-section.top .split > .right-side {
  width: 31%;
}

footer .footer-section.top .left-side {
  padding: 35px 0 0 0;
}

footer .footer-section.top .left-side .logo-container {
  display: flex;
}

footer .footer-section.top .left-side .logo-container a img {
  max-height: auto;
  width: 100%;
  max-width: 435px;
  margin-right: auto;
}

footer .footer-section.top .center-side {
  padding: 35px 10px 25px 10px;
  margin: 0 0;
}

footer .footer-section.top .center-side .nav {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 200px;
  font-weight: bold;
}

footer .footer-section.top .center-side .nav > li {
  padding: 9px 0px;
  margin: 0 15px;
}

footer .footer-section.top .right-side  {
  text-align: center;
  padding: 55px 0;
}

footer .footer-section.top .right-side .icon-logo:first-of-type {
  padding-right: 10px;
}

footer .footer-section.top .right-side .icon {
  padding-top: 15px;
  color: $(blue);
  font-size: 17px;
}

footer .footer-section.top .right-side ul.nav {
  display: flex;
}

footer .footer-section.top .right-side .icon-logo img {
  width: 100%;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}

footer .footer-section.top .social {
  padding-top: 30px;
}

footer .footer-section.top .social > * {
  padding: 15px;
  font-size: 1.5em;
  padding-right: 0;
}

footer .footer-section.top .social a.fb {
  color: #3C5A99;
}

footer .footer-section.top .social a.tw {
  color: #1CA1F2;
}

footer .footer-section.top .social a.in {
  color: #FB5E57;
}

footer .footer-section.top .social a.yt {
  color: #D82624;
}

.social span {
  color: #57575b;
  font-weight: 720;
  font-family: $(font-lato);
  font-size: 1.55em !important;
  margin-right: -4px;
}

footer .footer-section.bottom {
  background-color: $(hero-blue);
  padding: 30px 20px;
  color: $(white);
  text-align: center;
  font-size: 0.9em;
}
*/
body .main {
    margin-top: 95px;
    }
.btn {
    background-color: #f0f4f8;
    color: #1860ab;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid transparent;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
    font-family: "MontserratCustom",BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
    padding: 18px 24px;
    position: relative;
    text-align: center;
    text-decoration: none;
    -webkit-transition: background .2s ease,border .2s ease,color .2s ease;
    transition: background .2s ease,border .2s ease,color .2s ease;
    vertical-align: middle;
    outline: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    max-width: 100%;
    text-transform: uppercase;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
.btn:hover {
    background: #d8e2ed;
    border-color: transparent;
    text-decoration: none;
    }
.btn.secondary {
    background: #326eb3;
    color: #fff;
    }
.btn.secondary:hover {
    background: #2a5d97;
    }
.btn.tertiary {
    background-color: #ff9300;
    border-color: transparent;
    color: #2b1800;
    }
.btn.tertiary:hover {
    background-color: #cc7600;
    }
.mobile-sticky-cta {
    display: none;
    }
.btn.teal {
    background-color: #007e93;
    border-color: transparent;
    color: #fff;
    }
.btn.teal:hover {
    background-color: #005260;
    }
.btn.disabled {
    background-color: #677174;
    border-color: transparent;
    color: white;
    cursor: default;
    }
.btn.disabled:hover {
    background-color: #677174;
    }
.button.button-icon {
    width: -webkit-calc(20% - 20px);
    width: calc(20% - 20px);
    min-width: 200px;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-transition: background .2s ease,border .2s ease,color .2s ease;
    transition: background .2s ease,border .2s ease,color .2s ease;
    }
.btn-download-pdf {
    margin-right: 15px;
    display: none;
    }
.provider-settings .button.button-icon {
    width: -webkit-calc(25% - 20px);
    width: calc(25% - 20px);
    }
.button.button-icon .icon {
    width: 25%;
    min-width: 60px;
    text-align: center;
    background-color: #145da7;
    color: white;
    padding: 20px 12px;
    font-size: 1.3em;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
    border-left: 2px solid #145da7;
    border-top: 2px solid #145da7;
    border-bottom: 2px solid #145da7;
    }
.provider-settings .button.button-icon .icon {
    font-size: 1.8em;
    }
.button.button-icon .inner-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 75%;
    padding: 0 15px;
    font-weight: bold;
    color: black;
    border-right: 2px solid #145da7;
    border-top: 2px solid #145da7;
    border-bottom: 2px solid #145da7;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    }
.button.small {
    padding: 11px 16px;
    }
.btn.small {
    padding: 11px 16px;
    }
.btn.extra-small {
    padding: 6px 8px;
    font-size: .85em;
    }
.button-container {
    display: block;
    margin: -4px;
    }
form.gray,
.gray {
    background-color: #f0f4f8;
    }
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    }
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=search],
input[type=url],
input[type=date],
input[type="time"],
input[type="datetime-local"],
input[type="month"],
textarea,
select,
.select-container > select,
.select-container.scroll > .faux-select,
.add-credit-card,
.selectize-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #d0dbe5;
    border-radius: 4px;
    color: #373435;
    display: inline-block;
    font-family: inherit;
    font-size: 17px;
    margin: 0;
    padding: 12px 24px;
    resize: none;
    line-height: 1.2;
    -webkit-transition: border .2s ,background .2s ,color .2s ,box-shadow .2s;
    transition: border .2s ,background .2s ,color .2s ,box-shadow .2s;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
input[type=email]:hover,
input[type=number]:hover,
input[type=password]:hover,
input[type=tel]:hover,
input[type=text]:hover,
input[type=search]:hover,
input[type=url]:hover,
input[type=date]:hover,
input[type="time"]:hover,
input[type="datetime-local"]:hover,
input[type="month"]:hover,
textarea:hover,
select:hover,
.select-container > select:hover,
.select-container.scroll > .faux-select:hover {
    border-color: #677174;
    }
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=search]:focus,
input[type=url]:focus,
input[type=date]:focus,
input[type="time"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
textarea:focus,
select:focus,
.select-container > select:focus,
.select-container.scroll > .faux-select:focus {
    border-color: #677174;
    outline: 0;
    outline-color: transparent;
    outline-style: none;
    }
input[type=email].gray:not(:focus),
input[type=number].gray:not(:focus),
input[type=password].gray:not(:focus),
input[type=tel].gray:not(:focus),
input[type=text].gray:not(:focus),
input[type=search].gray:not(:focus),
input[type=url].gray:not(:focus),
input[type=date].gray:not(:focus),
input[type="time"].gray:not(:focus),
input[type="datetime-local"].gray:not(:focus),
input[type="month"].gray:not(:focus),
textarea.gray:not(:focus),
select.gray:not(:focus),
.select-container > select.gray:not(:focus),
.select-container.scroll > .faux-select.gray:not(:focus) {
    background: #f8f8f8;
    border-color: transparent;
    }
input[type=email].gray:not(:focus):hover,
input[type=number].gray:not(:focus):hover,
input[type=password].gray:not(:focus):hover,
input[type=tel].gray:not(:focus):hover,
input[type=text].gray:not(:focus):hover,
input[type=search].gray:not(:focus):hover,
input[type=url].gray:not(:focus):hover,
input[type=date].gray:not(:focus):hover,
input[type="time"].gray:not(:focus):hover,
input[type="datetime-local"].gray:not(:focus):hover,
input[type="month"].gray:not(:focus):hover,
textarea.gray:not(:focus):hover,
select.gray:not(:focus):hover,
.select-container > select.gray:not(:focus):hover,
.select-container.scroll > .faux-select.gray:not(:focus):hover {
    background: #f3f3f3;
    border-color: transparent;
    }
input[type=email].tiny,
input[type=number].tiny,
input[type=password].tiny,
input[type=tel].tiny,
input[type=text].tiny,
input[type=search].tiny,
input[type=url].tiny,
input[type=date].tiny,
input[type="time"].tiny,
input[type="datetime-local"].tiny,
input[type="month"].tiny,
textarea.tiny,
select.tiny,
.select-container > select.tiny,
.select-container.scroll > .faux-select.tiny {
    padding: 8px;
    font-size: 12px;
    }
input[type=email].small,
input[type=number].small,
input[type=password].small,
input[type=tel].small,
input[type=text].small,
input[type=search].small,
input[type=url].small,
input[type=date].small,
input[type="time"].small,
input[type="datetime-local"].small,
input[type="month"].small,
textarea.small,
select.small,
.select-container > select.small,
.select-container.scroll > .faux-select.small {
    padding: 8px 12px;
    }
input[type=email].large,
input[type=number].large,
input[type=password].large,
input[type=tel].large,
input[type=text].large,
input[type=search].large,
input[type=url].large,
input[type=date].large,
input[type="time"].large,
input[type="datetime-local"].large,
input[type="month"].large,
textarea.large,
select.large,
.select-container > select.large,
.select-container.scroll > .faux-select.large {
    padding: 16px;
    }
input[type=email].huge,
input[type=number].huge,
input[type=password].huge,
input[type=tel].huge,
input[type=text].huge,
input[type=search].huge,
input[type=url].huge,
input[type=date].huge,
input[type="time"].huge,
input[type="datetime-local"].huge,
input[type="month"].huge,
textarea.huge,
select.huge,
.select-container > select.huge,
.select-container.scroll > .faux-select.huge {
    padding: 16px;
    font-size: 20px;
    }
input[type="checkbox"]:not(.rating-input),
input[type="radio"]:not(.rating-input) {
    display: none;
    }
input[type="checkbox"]:not(.rating-input) + label,
input[type="radio"]:not(.rating-input) + label {
    margin: 0;
    position: relative;
    vertical-align: middle;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    opacity: 1;
    padding-left: 28px;
    text-align: left;
    cursor: pointer;
    font-weight: normal !important;
    }
input[type="checkbox"]:not(.rating-input) + label.address_same,
input[type="radio"]:not(.rating-input) + label.address_same {
    padding-left: 40px !important;
    font-size: 1.3rem;
    }
input[type="checkbox"]:not(.rating-input) + label:last-child,
input[type="radio"]:not(.rating-input) + label:last-child {
    margin: 0;
    }
input[type="checkbox"]:not(.rating-input) + label:before,
input[type="radio"]:not(.rating-input) + label:before,
input[type="checkbox"]:not(.rating-input) + label:after,
input[type="radio"]:not(.rating-input) + label:after {
    content: " ";
    background: #fff;
    border: 2px solid #677174;
    color: #3c6171;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all .1s ease-out;
    transition: all .1s ease-out;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    }
input[type="checkbox"]:not(.rating-input) + label.address_same:before,
input[type="radio"]:not(.rating-input) + label.address_same:before {
    width: 30px;
    height: 30px;
    }
input[type="checkbox"]:not(.rating-input) + label.address_same:after,
input[type="radio"]:not(.rating-input) + label.address_same:after {
    width: 20px;
    height: 20px;
    margin-right: 20px !important;
    }
input[type="radio"]:not(.rating-input) + label:before {
    border-radius: 50%;
    border: 1px solid #c1c9cd;
    }
input[type="checkbox"]:not(.rating-input) + label:active:before,
input[type="radio"]:not(.rating-input) + label:active:before {
    background: #f8f8f8;
    }
input[type="checkbox"]:not(.rating-input) + label:after,
input[type="radio"]:not(.rating-input) + label:after {
    border: none;
    display: block;
    width: 10px;
    height: 10px;
    background: #326eb3;
    left: 5px;
    opacity: 0;
    clip-path: circle(0% at 50% 50%);
    }
input[type="radio"] + label:after {
    width: 8px;
    height: 8px;
    left: 6px;
    }
input[type="checkbox"]:not(.rating-input):checked + label:after,
input[type="radio"]:not(.rating-input):checked + label:after {
    clip-path: circle(150% at 50% 50%);
    opacity: 1;
    }
input[type="checkbox"].circle:not(.rating-input) + label:before {
    border-radius: 50%;
    border: 1px solid #c1c9cd;
    }
input[type="checkbox"].circle.check-to-right:not(.rating-input) + label:before {
    border-radius: 50%;
    border: 1px solid #c1c9cd;
    right: 15px;
    left: unset;
    }
input[type="checkbox"].circle.check-to-right:not(.rating-input) + label:after {
    right: 20px;
    left: unset;
    }
input[type="checkbox"].circle.check-to-right:not(.rating-input) + label {
    padding-left: 0;
    padding-right: 28px;
    }
input[type="checkbox"].circle:not(.rating-input):checked + label:before {
    border-radius: 50%;
    border: 5px solid #326eb3;
    }
input[type="checkbox"].circle:not(.rating-input) + label:after {
    border-radius: 50%;
    background: #fff;
    }
.radio-group.horizontal {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    padding: 10px 0;
    padding-left: 0;
    margin: 0 -10px;
    }
.radio-group.horizontal .flex-column {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    -webkit-flex-basis: -webkit-calc(25% - 20px);
    -webkit-flex-basis: calc(25% - 20px);
    flex-basis: -webkit-calc(25% - 20px);
    flex-basis: calc(25% - 20px);
    max-width: -webkit-calc(25% - 20px);
    max-width: calc(25% - 20px);
    min-width: 200px;
    background-color: #fff;
    margin: 10px;
    border-radius: 8px;
    }
.radio-group.horizontal.has-two-options .flex-column {
    -webkit-flex-basis: 160px;
    flex-basis: 160px;
    max-width: 160px;
    min-width: 160px;
    }
.radio-group.horizontal .flex-column input[type="radio"] + label {
    padding: 20px 10px;
    border-radius: 8px;
    border: 1px solid #145da7;
    }
.radio-group.horizontal .flex-column input[type="radio"] + label:hover {
    background: #d0dbe5;
    }
.radio-group.horizontal:not(.has-two-options) .flex-column input[type="radio"] + label:before,
.radio-group.horizontal:not(.has-two-options) .flex-column input[type="radio"] + label:after {
    display: none;
    }
.radio-group.horizontal.has-two-options .flex-column input[type="radio"] + label:before {
    right: 15px;
    left: unset;
    background: #fff;
    }
.radio-group.horizontal.has-two-options .flex-column input[type="radio"] + label:after {
    right: 22px;
    left: unset;
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    height: 19px;
    font-weight: 900;
    color: #a85c00;
    }
.radio-group.horizontal .flex-column input[type="radio"]:checked + label {
    background-color: #326eb3;
    color: #fff;
    }
.radio-group.horizontal .flex-column input[type="checkbox"]:not(.rating-input) + label,
.radio-group.horizontal .flex-column input[type="radio"]:not(.rating-input) + label {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
input[type="checkbox"]:not(.rating-input) + label:empty,
input[type="radio"]:not(.rating-input) + label:empty {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    }
input[type="radio"]:not(.rating-input):checked + label:before {
    background: #326eb3;
    border-color: transparent;
    }
input[type="radio"]:not(.rating-input):checked + label:after {
    background: #fff;
    border-radius: 50%;
    }
label.custom-dropdown {
    overflow: hidden;
    height: 45px;
    position: relative;
    border-radius: 4px;
    display: block;
    border: 1px solid #d0dbe5;
    padding: 0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
label.custom-dropdown:after {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #326eb3;
    position: absolute;
    right: 10px;
    top: 11px;
    font-size: 1.3em;
    z-index: 1;
    width: 10%;
    height: 100%;
    pointer-events: none;
    text-align: right;
    }
label.custom-dropdown:before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    font-size: 1.3em;
    z-index: 1;
    width: 33px;
    height: 100%;
    pointer-events: none;
    text-align: right;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-left: 1px solid #d0dbe5;
    background-color: #f0f4f8;
    }
.custom-select .custom-dropdown .dropdown {
    width: 100%;
    height: 45px;
    font-size: 1em;
    background-color: #fafcff;
    border: 0;
    padding: 0 17px 3px 24px;
    border-radius: 4px;
    outline: 1px solid transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    }
select::-ms-expand {
    display: none;
    }
a.ui-state-active {
    background-color: #ff9300 !important;
    color: #2b1800 !important;
    }
select.ui-datepicker-month,
select.ui-datepicker-year {
    padding: 0;
    appearance: revert;
    }
form.full-width {
    padding: 40px 30px;
    }
form .row.one-column > div {
    padding: 10px 0;
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
form .row.two-column:not(.one-column) {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    }
form .row.two-column:not(.one-column) > * {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
form .row.two-column:not(.one-column) div > label:not(.custom-dropdown):not(.checkbox-row) {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    font-weight: bold;
    width: 120px;
    min-width: 120px;
    }
form.big-lbl .row.two-column:not(.one-column) div > label:not(.custom-dropdown):not(.checkbox-row) {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    font-weight: 700;
    width: 190px;
    min-width: 190px;
    }
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container.scroll > .faux-select {
    width: -webkit-calc(100% - 190px);
    width: calc(100% - 190px);
    padding: 12px 24px;
    margin: 5px 20px 5px 0;
    }
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container.scroll > .faux-select {
    width: -webkit-calc(100% - 190px);
    width: calc(100% - 190px);
    padding: 12px 24px;
    margin: 5px 0 5px 0;
    }
form .row.two-column:not(.one-column) div:first-of-type > input[type=email],
form .row.two-column:not(.one-column) div:first-of-type > input[type=number],
form .row.two-column:not(.one-column) div:first-of-type > input[type=password],
form .row.two-column:not(.one-column) div:first-of-type > input[type=tel],
form .row.two-column:not(.one-column) div:first-of-type > input[type=text],
form .row.two-column:not(.one-column) div:first-of-type > input[type=search],
form .row.two-column:not(.one-column) div:first-of-type > input[type=url],
form .row.two-column:not(.one-column) div:first-of-type > input[type=date],
form .row.two-column:not(.one-column) div:first-of-type > input[type="time"],
form .row.two-column:not(.one-column) div:first-of-type > input[type="datetime-local"],
form .row.two-column:not(.one-column) div:first-of-type > input[type="month"],
form .row.two-column:not(.one-column) div:first-of-type > textarea,
form .row.two-column:not(.one-column) div:first-of-type > select,
form .row.two-column:not(.one-column) div:first-of-type > .select-container > select,
form .row.two-column:not(.one-column) div:first-of-type > .select-container.scroll > .faux-select,
form .row.two-column:not(.one-column) div:first-of-type > .custom-select {
    width: -webkit-calc(100% - 120px);
    width: calc(100% - 120px);
    padding: 10px 20px 10px 0;
    }
form .row.two-column:not(.one-column) div:last-of-type > input[type=email],
form .row.two-column:not(.one-column) div:last-of-type > input[type=number],
form .row.two-column:not(.one-column) div:last-of-type > input[type=password],
form .row.two-column:not(.one-column) div:last-of-type > input[type=tel],
form .row.two-column:not(.one-column) div:last-of-type > input[type=text],
form .row.two-column:not(.one-column) div:last-of-type > input[type=search],
form .row.two-column:not(.one-column) div:last-of-type > input[type=url],
form .row.two-column:not(.one-column) div:last-of-type > input[type=date],
form .row.two-column:not(.one-column) div:last-of-type > input[type="time"],
form .row.two-column:not(.one-column) div:last-of-type > input[type="datetime-local"],
form .row.two-column:not(.one-column) div:last-of-type > input[type="month"],
form .row.two-column:not(.one-column) div:last-of-type > textarea,
form .row.two-column:not(.one-column) div:last-of-type > select,
form .row.two-column:not(.one-column) div:last-of-type > .select-container > select,
form .row.two-column:not(.one-column) div:last-of-type > .select-container.scroll > .faux-select,
form .row.two-column:not(.one-column) div:last-of-type > .custom-select {
    width: -webkit-calc(100% - 120px);
    width: calc(100% - 120px);
    padding: 10px 0 10px 30px;
    }
form .row.two-column:not(.one-column) div:first-of-type > .checkbox-row,
form .row.two-column:not(.one-column) div:last-of-type > .checkbox-row {
    width: 100%;
    }
form .row.two-column:not(.one-column) > div.btn-right {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    }
form.center .row.one-column > div,
form.form-see-provider .payments .row.one-column > div {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
form .row.one-column > div > label:not(.custom-dropdown):not(.lbl-top):not(.checkbox-row) {
    display: inline-block;
    width: 100px;
    min-width: 100px;
    vertical-align: middle;
    text-align: left;
    font-weight: bold;
    }
form .row.one-column > div > input:not(.input-full-width),
form .row.one-column > div > div,
form .row.one-column .custom-select,
form .row.one-column .radio-group,
form .row.one-column .column-inputs {
    width: -webkit-calc(50% - 100px);
    width: calc(50% - 100px);
    text-align: left;
    }
form .row.one-column > div > div > input.small-input,
form.big-lbl .row.one-column > div > div > input.small-input {
    width: 90px;
    }
form .row.one-column.lbl-top > div > input:not(.input-full-width),
form .row.one-column.lbl-top > div > div,
form .row.one-column.lbl-top .custom-select,
form .row.one-column.lbl-top .radio-group,
form .row.one-column.lbl-top .column-inputs,
form.big-lbl .row.one-column.lbl-top > div > input:not(.input-full-width),
form.big-lbl .row.one-column.lbl-top > div > div,
form.big-lbl .row.one-column.lbl-top .custom-select,
form.big-lbl .row.one-column.lbl-top .radio-group,
form.big-lbl .row.one-column.lbl-top .column-inputs {
    width: -webkit-calc(50%);
    width: calc(50%);
    }
form .row.one-column .radio-group {
    text-align: left;
    }
form .row.one-column .radio-group > div {
    display: inline-block;
    }
form .row.one-column .radio-group > div:first-of-type {
    padding-right: 30px;
    }
form .row.one-column .radio-group > div:nth-child(3) {
    padding-left: 30px;
    }
form .row.one-column.lbl-top > div {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
form.big-lbl .row.one-column > div > label:not(.custom-dropdown):not(.lbl-top) {
    width: 190px;
    min-width: 190px;
    }
form.big-lbl .row.one-column > div > input:not(.input-full-width),
form.big-lbl .row.one-column > div > div,
form.big-lbl .row.one-column .custom-select,
form.big-lbl .row.one-column .column-inputs,
form.big-lbl .row.one-column .radio-group {
    width: -webkit-calc(50% - 190px);
    width: calc(50% - 190px);
    }
form .input-full-width {
    width: 100%;
    }
form .row.one-column.lbl-top > div > label,
form.big-lbl .row.one-column.lbl-top > div > label,
form .lbl-top {
    width: 100%;
    padding-bottom: 10px;
    font-weight: bold;
    }
form .row.one-column.lbl-top textarea {
    width: 100%;
    }
form .btn-group {
    padding: 15px 0 0;
    }
form .btn-group .btn {
    padding: 18px 38px;
    }
form .row.one-column .column-inputs {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: -5px 0;
    }
form .row.one-column .column-inputs > * {
    width: 100% !important;
    margin: 5px 0;
    }

/* Form half width */
form.half-width {
    padding: 40px 40px;
    }
form.half-width .row.one-column div input:not(.input-full-width),
form.half-width .row.one-column .custom-select {
    width: -webkit-calc(100% - 100px);
    width: calc(100% - 100px);
    }
form.half-width .btn-group {
    text-align: center;
    }
form.half-width .btn-group > * {
    padding: 18px 20%;
    }

/* Pagination  */
.pagination {
    display: block;
    text-align: center;
    margin: 48px 0 0;
    }
.pagination span,
.pagination a:not(.button),
.pagination a:not(.button):link,
.pagination a:not(.button):visited,
.pagination a:not(.button):active,
.pagination a:not(.button):hover,
.pagination a:not(.button):focus {
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
    border: 1px solid transparent;
    border-radius: 50%;
    color: #373435;
    cursor: pointer;
    display: inline-block;
    font-size: 1.2em;
    font-weight: bold;
    margin: 0;
    padding: 10px 20px;
    width: 50px;
    height: 50px;
    position: relative;
    text-align: center;
    text-decoration: none;
    -webkit-transition: background .2s ease,border .2s ease,color .2s ease;
    transition: background .2s ease,border .2s ease,color .2s ease;
    vertical-align: middle;
    outline: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    max-width: 100%;
    text-transform: uppercase;
    margin: 0 4px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    }
.pagination span.item.active {
    cursor: default;
    color: #145da7;
    }
.pagination a.item:hover,
.pagination .ui.right.floated.pagination.menu a.item.icon:hover {
    color: #677174;
    }
.pagination .ui.right.floated.pagination.menu a.item.icon {
    background: black;
    }
.pagination .ui.right.floated.pagination.menu a.item.icon i {
    font-size: 1.1em;
    }
.hero {
    position: relative;
    background-color: #faf4f4;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #000;
    padding-top: 95px;
    }

/* Affects hero.php, full screen, default */
.hero h1 {
    font-family: arial;
    font-size: 40px !important;
    word-spacing: 0;
    margin-top: 0;
    margin-bottom: 16px;
    width: 750px;
    }
.hero h1 .subtitle {
    font-weight: normal;
    margin-top: 20px;
    font-size: 20px !important;
    padding-right: 45px;
    }
.hero .inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 70%;
    padding: 112px 0;
    }
.hero .hero-image {
    width: 50%;
    height: auto;
    position: absolute;
    top: 95px;
    right: 0;
    bottom: 0;
    left: auto;
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
    z-index: 1;
    }
.hero .wrapper {
    position: relative;
    z-index: 2;
    }
.hero .btn-group {
    margin: 0 -10px;
    white-space: nowrap;
    }
.hero .btn-group > * {
    margin: 20px 10px;
    }
.hero .hero-availability {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #d8e6d5;
    border-radius: 999px;
    color: #1f3325;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
    padding: 10px 16px;
    -webkit-box-shadow: 0 8px 22px rgba(26,76,41,.1);
    box-shadow: 0 8px 22px rgba(26,76,41,.1);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    }
.hero .hero-availability-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #2eb85c;
    -webkit-box-shadow: 0 0 0 5px rgba(46,184,92,.2);
    box-shadow: 0 0 0 5px rgba(46,184,92,.2);
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* Seen on */
.seen-on {
    padding: 20px 0;
    border-bottom: 2px solid #f0f4f8;
    }
.seen-on h4 {
    text-align: center;
    }
.seen-on h4:before {
    content: "\2015\00a0\00a0\00a0\00a0";
    color: #d8d9d9;
    }
.seen-on h4:after {
    content: "\00a0\00a0\00a0\00a0\2015";
    color: #d8d9d9;
    }
.seen-on .img-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 0 20px;
    }
.seen-on .img-container > * {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    text-align: center;
    margin: 10px 10px;
    }
.seen-on .img-container a img {
    max-width: 100%;
    height: auto;
    }

/* Tak to real dr */
.talk-to .wrapper {
    padding-top: 80px;
    padding-bottom: 80px;
    }
.talk-to .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-evenly;
    justify-content: space-evenly;
    font-family: Arial;
    }
.talk-to .categories-btns-overflow {
    display: none;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
    }
.talk-to .categories-btns-overflow > * {
    margin: 0 8px;
    }
@media all and (max-width: 1100px) {
.talk-to .categories {
    display: none;
    }
.talk-to .categories-btns-overflow {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
}

@media all and (max-width: 640px) {
.talk-to .categories {
    display: block;
    }
.talk-to .categories-btns-overflow {
    display: none;
    }
.talk-to .wrapper {
    padding-top: 30px;
    padding-bottom: 0;
    }
}

@media all and (max-width: 750px) {
.talk-to .wrapper {
    padding-top: 30px;
    padding-bottom: 20px;
    }
}

.talk-to .split .img-container {
    padding: 0 20px 0 0;
    text-align: center;
    }
.talk-to .split .inner-text {
    padding: 0 0 0 20px;
    width: 50%;
    }
.talk-to .split .inner-text p {
    padding-bottom: 40px;
    font-size: 20px;
    }
.talk-to .img-container img {
    max-width: 100%;
    height: auto;
    }
.talk-to .categories > * {
    margin: 3px 5px;
    }
.talk-to a.btn {
    font-size: 16px;
    }

/* Membership Highlights Section — redesigned 2026-06-16; styles moved to .membership-band (appended at end of file) */
/* Membership Pricing Section */
.membership-pricing {
    padding: 40px 0;
    }
.membership-pricing .membership-main-headline {
    font-size: 54px !important;
    line-height: 1.15;
    margin: 0 0 14px;
    text-align: center;
    }
.membership-pricing .membership-math-text {
    font-size: 24px;
    line-height: 1.45;
    color: #4f5b67;
    margin: 0 auto 28px;
    text-align: center;
    max-width: 1100px;
    }
.membership-pricing .membership-title {
    margin: 0 0 10px;
    }
.membership-pricing .dollar-sign {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: -3px;
    }
.membership-pricing .dollar-amount {
    letter-spacing: -2px;
    }
.membership-pricing .membership-cost-container {
    width: 100%;
    margin-top: 25px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.membership-pricing .membership-cost-container h4 {
    margin-top: 20px;
    margin-bottom: 5px;
    }
.membership-pricing .membership-cost-container .membership-cost:first-of-type {
    margin-right: 20px;
    }
.membership-pricing .membership-cost-container .membership-cost {
    padding: 20px 30px;
    margin-bottom: 20px;
    background-color: #eff4f8;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    }
.membership-cost-btn-group {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.membership-pricing .membership-image {
    display: none;
    }
.membership-pricing .membership-cost-container .membership-cost .cost {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2em;
    font-weight: bolder;
    vertical-align: middle;
    line-height: 1.1;
    }
.membership-pricing .membership-cost-container .gray-text p:first-of-type {
    margin-bottom: 10px;
    }
.bold {
    font-weight: bold;
    }
@media only screen and (max-width: 767px) {
.membership-pricing .dollar-sign {
    font-size: 18px;
    }
.membership-pricing .membership-main-headline {
    font-size: 34px !important;
    }
.membership-pricing .membership-math-text {
    font-size: 18px;
    margin-bottom: 20px;
    }
}

/* Family section */
.family {
    background-color: #eff4f8;
    }
.family h2 {
    text-align: center;
    padding: 80px 0 20px 0;
    }
.family .container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.family .container > * {
    width: -webkit-calc(25%);
    width: calc(25%);
    }
.family .img-container img {
    height: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.family .container .column {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.family .container .column h3 {
    padding-bottom: 30px;
    }
.family .container {
    height: 100%;
    }

/* scroll Box Map */
.scroll-box .scroll-steps {
    padding: 40px 0 80px 0;
    }
.scroll-box .scroll-box-map {
    padding: 90px 0;
    }
.scroll-box .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.scroll-box .split .img-container {
    width: 100%;
    max-width: 800px;
    position: relative;
    }
.scroll-box .scroll-steps .split .img-container img {
    position: absolute;
    top: 0;
    width: 42%;
    }
.scroll-box .split .inner-text {
    width: 100%;
    font-family: Arial;
    }
.scroll-box .scroll-box-map .split .inner-text {
    padding: 40px 10px 0 10px;
    }
.scroll-box .img-container .img-scroll-show {
    width: 100%;
    }
.scroll-box .step {
    opacity: 0;
    transition: all .4s cubic-bezier(.22,1,.36,1);
    -webkit-transition: all .4s cubic-bezier(.22,1,.36,1);
    -moz-transition: all .4s cubic-bezier(.22,1,.36,1);
    -ms-transition: all .4s cubic-bezier(.22,1,.36,1);
    -o-transition: all .4s cubic-bezier(.22,1,.36,1);
    }
.scroll-box .step.visible {
    opacity: 1;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    }
.scroll-box .inner-text p {
    font-size: 20px;
    line-height: 1.7;
    opacity: .7;
    }
.scroll-box h2.not-active,
.scroll-box p.not-active {
    opacity: .3;
    }
span.break {
    display: block;
    word-wrap: break-word;
    width: 50px;
    white-space: normal;
    }
.grayscale,
.scroll-box .step.grayscale {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .25;
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
    }

/* Testimonial */
.testimonial {
    background-color: #fff;
    padding: 90px 0;
    font-family: Arial;
    }
.testimonial .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.testimonial .split .inner-text p:first-of-type {
    font-style: italic;
    font-weight: 400;
    line-height: 1.7;
    font-size: 20px;
    padding-bottom: 15px;
    }
.testimonial .split .inner-text p:last-of-type {
    font-weight: bold;
    line-height: 1.7;
    font-size: 1.3em;
    }
.testimonial .split .img-container {
    width: 30%;
    padding-right: 20px;
    }
.testimonial .split .img-container img {
    width: 100%;
    max-width: 330px;
    height: auto;
    }
.testimonial .split .inner-text {
    width: 70%;
    padding: 20px 20px 10px 10px;
    }
.testimonial .split .inner-text .testimonial-stars {
    font-size: 2em;
    text-align: center;
    padding: 12px 0;
    color: #ffd82f;
    }
.testimonial .split .inner-text .testimonial-stars > * {
    margin: 10px 5px;
    }

/* Fee section */
.fee-banner {
    padding: 30px 0;
    background-color: #145da7;
    }
.fee-banner h2 {
    text-align: center;
    color: #fff;
    padding-bottom: 20px;
    }
.fee-banner .circle,
.pricing .circle {
    border-radius: 50%;
    }
.fee-banner .outer,
.pricing .outer {
    background-color: #2678bc;
    width: 300px;
    height: 300px;
    position: relative;
    margin-bottom: 40px;
    margin: auto;
    }
.fee-banner .inner,
.pricing .inner {
    background-color: #e9e9e9;
    top: 6%;
    left: 6%;
    width: 88%;
    height: 88%;
    position: relative;
    }
.fee-banner .circle-text,
.pricing .circle-text {
    font-size: 5.7em;
    font-weight: 900;
    text-align: center;
    position: relative;
    top: 50%;
    color: #145da7;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    }
.fee-banner .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.fee-banner .split > * {
    width: 50%;
    text-align: center;
    padding: 0 20px;
    }
.fee-banner .price-description {
    text-align: center;
    color: #fff;
    font-size: 1.6em;
    line-height: 2.7;
    padding-top: 40px;
    padding-bottom: 60px;
    }
.fee-banner .book .card {
    margin: auto;
    background-color: #fff;
    padding: 20px 10px;
    max-width: 330px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
.fee-banner .image-wrapper {
    width: 145px;
    margin: auto;
    }
.fee-banner .image-wrapper img {
    width: 100%;
    border-radius: 50%;
    }
.fee-banner .stars {
    color: #326eb3;
    }
.fee-banner h4 {
    margin-top: 10px;
    margin-bottom: 5px;
    }
.fee-banner h6 {
    color: #677174;
    margin-top: 0;
    }
.fee-banner .icons {
    margin: 0 -8px;
    padding-top: 20px;
    }
.fee-banner .icons > * {
    margin: 0 8px;
    font-size: 1.2em;
    }
.fee-banner .inner-text {
    padding-top: 20px;
    font-size: 1.1em;
    padding-bottom: 40px;
    }
.fee-banner .inner-text p span {
    font-weight: 900;
    font-size: 1.2em;
    color: #326eb3;
    }
.fee-banner .btn-group {
    padding-bottom: 10px;
    }
.fee-banner .payment-available {
    padding-top: 10px;
    }
.fee-banner .payment-available > * {
    font-size: 3em;
    margin: 10px 5px;
    color: #f8f8f8;
    }

/* Devices section */
.devices {
    border-top: 1px solid #d0dbe5;
    padding: 50px 0;
    }
.devices h2 {
    text-align: center;
    }
.devices .devices-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin: 0 -16px;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding-bottom: 26px;
    }
.devices .devices-container > div {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
    padding: 10px 10px;
    text-align: center;
    width: 25%;
    }
.devices .devices-container > div img {
    width: 100%;
    height: auto;
    }
.devices .devices-container > div:hover {
    color: #145da7;
    cursor: pointer;
    }
.devices .devices-container span {
    display: block;
    margin-top: 25px;
    font-weight: bold;
    font-size: 1.05em;
    }

/* Ready section — redesigned 2026-06-16; styles moved to .home-cta (appended at end of file) */
/* Subpage hero */
.subpage-hero {
    padding: 50px 0 0;
    }
.subpage-hero h1 {
    margin: 0;
    }
.subpage-hero .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.subpage-hero .inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    letter-spacing: 1.2px;
    padding: 50px 10px 50px 0;
    line-height: 1.7;
    font-size: 1.3em;
    width: 45%;
    -webkit-align-self: baseline;
    -ms-flex-item-align: baseline;
    align-self: baseline;
    }
.subpage-hero .split > .image-container {
    width: 55%;
    margin-top: -35px;
    }
.subpage-hero .split > .image-container img {
    width: 100%;
    height: auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.subpage-hero .split p.subtext {
    font-style: italic;
    }
.subpage-hero .subcontent.join-our-network {
    padding-top: 60px;
    }
.subpage-hero .inner .inner-text.pricing {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.subpage-hero .inner .inner-text.pricing:after {
    content: "";
    width: -webkit-calc(100% - 1px);
    width: calc(100% - 1px);
    height: 180px;
    background-color: #eff4f8;
    background-image: url(/images/resources/insurance-cards.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    }
.subpage-hero .inner .inner-text.pricing > * {
    width: -webkit-calc(100% / 2);
    width: calc(100% / 2);
    text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    }
.subpage-hero .inner .inner-text.pricing .subcontent.pricing {
    padding: 20px 0;
    }
.subpage-hero .split .inner.pricing .image-container.insurance-img {
    width: 100%;
    max-width: 250px;
    margin: auto;
    }
.subpage-hero .split .inner.pricing .image-container.insurance-img img {
    width: 100%;
    }
.subpage-hero .inner .content.pricing {
    background-color: #eff4f8;
    padding: 30px 8px;
    text-align: center;
    }
.subpage-hero .inner .content.pricing h4 {
    font-size: 19px !important;
    }
.subpage-hero .inner .content.pricing span.fee-symbol {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.subpage-hero .inner .content.pricing .price-row {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2px;
    white-space: nowrap;
    }
.subpage-hero .inner .content.pricing span.fee-symbol .you-pay {
    font-size: 1.1em;
    }
.membership-btn {
    text-transform: none;
    padding: 5px 10px;
    }
.subpage-hero .inner .content.pricing .insurance-price-amount.is-hidden,
.subpage-hero .inner .content.pricing .insurance-copay-text.is-hidden {
    display: none;
    }
.subpage-hero .inner .content.pricing .insurance-copay-text {
    display: block;
    margin-top: 8px;
    color: #6f7785;
    }
.subpage-hero .inner .content.pricing .best-value-badge {
    display: inline-block;
    background: #f2b300;
    color: #fff;
    border-radius: 999px;
    padding: 4px 8px;
    margin-left: 8px;
    font-size: 12px;
    line-height: 1;
    vertical-align: middle;
    }
.subpage-hero .inner .content.pricing .member-tier-subtext {
    margin-top: 6px;
    color: #5f6874;
    font-size: 15px;
    font-weight: 600;
    }
.subpage-hero .inner .content.pricing .member-tier-highlight {
    margin: 12px auto 0;
    color: #1f5f9d;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 700;
    max-width: 280px;
    background: #ecf2ff;
    border: 1px solid #cfdbff;
    border-radius: 8px;
    padding: 8px 10px;
    }
.subpage-hero .inner .content.pricing span.fee-symbol .dollar {
    font-size: 1.4em;
    font-weight: bold;
    }
.subpage-hero .inner .content.pricing span.fee {
    font-size: 2.5em;
    font-weight: bolder;
    vertical-align: middle;
    line-height: 1.1;
    }
.subpage-hero + .scroll-box,
.subpage-hero + .pricing {
    padding-top: 30px;
    }
.subpage-hero .pricing-statement-wrapper {
    background-color: #eff4f8;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0;
    }
.subpage-hero .pricing .subcontent {
    background-color: #eff4f8;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.subpage-hero .pricing-trust-badges-row {
    background-color: #eff4f8;
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 16px 0;
    }
.subpage-hero .pricing-trust-badges-row .pricing-trust-badges,
.subpage-hero .pricing .subcontent .pricing-trust-badges {
    width: 100%;
    max-width: 1200px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px;
    padding: 0 20px;
    margin: 0 auto;
    }
.subpage-hero .pricing-trust-badges-row .pricing-trust-badges .trust-badge,
.subpage-hero .pricing .subcontent .pricing-trust-badges .trust-badge {
    background: #e5ebf1;
    color: #4e5968;
    border-radius: 999px;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 700;
    }
.subpage-hero .pricing-statement-wrapper ul {
    color: #ff9300;
    font-size: 1.5rem;
    margin: 0 10px;
    list-style-type: disc;
    padding: 25px 20px;
    white-space: nowrap;
    }
.subpage-hero .split > .image-container.pricing {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    margin-top: 0;
    }
.subpage-hero .split > .image-container.pricing img {
    max-width: 598px;
    max-height: 300px;
    margin: auto auto 0 auto;
    }
.subpage-hero .split > .inner.pricing {
    padding: 0 20px 20px 0;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    }

/* Pricing */
.pricing-section .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 20px;
    }
.pricing-section .split > * {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    background-color: #eff4f8;
    padding: 20px;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    }
.pricing-section .accept-container {
    text-align: center;
    }
.pricing-section .accept-container .image-container {
    margin: 20px 0 !important;
    }
.pricing-section .accept-container img.insurance {
    width: 290px;
    }
.pricing-section .price-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding-top: 20px;
    margin: 0 -10px;
    }
.pricing-section .price-container .image-container {
    width: 33%;
    text-align: center;
    margin: 0 10px;
    }
.pricing-section .price-container .image-container img {
    width: 100%;
    max-width: 100px;
    }

/* Accordion */
.faq-section {
    padding: 50px 0 10px 0;
    }
.accordion {
    padding-top: 20px;
    }
.accordion-item {
    margin: 10px 0;
    }
.accordion-item .top {
    padding: 10px 20px;
    background-color: #eff4f8;
    cursor: pointer;
    }
.accordion-item .top .layout {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.accordion-item .top .layout .info-accordion {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0;
    }
.accordion-item .top .layout .icon {
    font-size: 42px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    margin-right: 20px;
    }
.accordion-item .top .layout .icon i {
    font-size: 32px;
    }
.accordion-item.on .top .layout .icon {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    }
.accordion-item:not(.on) .bottom {
    height: 0;
    max-height: 0;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 0;
    }
.accordion-item .bottom {
    padding: 25px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    }

/* About us */
.about-us .our-mission {
    background-color: #eff4f8;
    }
.main > .about-us .content .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.about-us .content .split .image-container {
    width: 33%;
    min-width: 320px;
    margin-top: -20px;
    margin-bottom: -60px;
    }
.about-us .content .split .inner {
    width: 77%;
    padding-left: 30px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.about-us .split .inner h3 {
    margin: 10px 0;
    }
.about-us .split .inner h4 {
    margin: 0 0 10px;
    }
.about-us .image-container img {
    width: 100%;
    height: auto;
    }
.about-us .main-content {
    padding: 60px 0 0;
    }
.subpage-hero .inner .content.about-us {
    padding-bottom: 30px;
    }
.about-us .main-content > h3:first-of-type {
    margin: 0 0 30px;
    }
.about-us .main-content .split div > h3 {
    margin: 30px 0 30px 0;
    }
.about-us .main-content .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 28px 0 0;
    }
.about-us .main-content .split > div:first-of-type {
    padding-right: 40px;
    -webkit-flex: 2 2;
    -ms-flex: 2 2;
    flex: 2 2;
    padding-bottom: 40px;
    }
.about-us .main-content .split > div:last-of-type {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    max-width: 300px;
    min-width: 200px;
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
    }
.about-us .main-content .image-container img {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.about-us .main-content {
    line-height: 1.7;
    }
.about-us .main-content p {
    font-size: 1.15em;
    letter-spacing: 1px;
    }
.about-us .logos-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 10px 0;
    margin: 10px 0;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.about-us .logos-container div {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 10px 15px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.about-us .logos-container div {
    width: -webkit-calc(50% - 30px);
    width: calc(50% - 30px);
    min-width: 170px;
    }
.about-us .logos-container div img {
    max-width: 170px;
    min-width: 100px;
    width: -webkit-calc(100% - 170px);
    width: calc(100% - 170px);
    height: auto;
    }
.about-us .logos-container div p {
    margin-left: 10px;
    line-height: 1.4;
    }

/* Twilio */
div#remote-media {
    max-width: 100%;
    max-height: 100%;
    min-height: 350px;
    padding-top: 15px;
    }
div#remote-media.twilio-voice {
    margin: auto;
    }
div#remote-media .twilio-voice-call {
    color: #326eb3;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    height: 300px;
    max-width: 350px;
    font-size: 8em;
    background-color: #eff4f8;
    margin: 20px auto 0 auto;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    }
div#remote-media .twilio-voice-call i {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 300px;
    }
div#remote-media > * {
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    font-weight: bold;
    font-size: 1.2em;
    text-align: center;
    padding-bottom: 25px;
    }
div#remote-media div > video {
    background-color: rgba(0,0,0,1);
    }
div#remote-media > div:not(#local-media):not(#twilio-voice-call-icon) > * {
    width: 100%;
    max-width: 100%;
    max-height: -webkit-calc(100vh - 150px);
    max-height: calc(100vh - 150px);
    margin-top: 15px;
    }
div#local-media {
    width: 25%;
    max-width: 250px;
    min-width: 70px;
    position: absolute;
    left: 7%;
    bottom: 3px;
    }
div#local-media > * {
    width: 100%;
    border: 2px solid #145da7;
    border-radius: 4px;
    }
.twilio .button-group {
    text-align: center;
    padding-bottom: 20px;
    }
.twilio .button-group > * {
    margin: 5px 5px;
    }
div#change_video_device {
    width: 50%;
    min-width: 220px;
    max-width: 380px;
    text-align: center;
    margin: 10px auto;
    }
div#change_video_device label:not(.custom-select) {
    font-weight: bold;
    }
div#change_video_device .custom-select {
    margin-top: 8px;
    }
video::-webkit-media-controls-panel {
    opacity: 0;
    }
video::-webkit-media-controls-panel:hover {
    opacity: 1;
    }
#chat {
    border: 1px solid #d0dbe5;
    overflow-y: auto;
    width: 100%;
    height: 56vh;
    }
#chat_out_container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    margin: 5px 0;
    }
.twilio .split .button-group {
    padding: 20px 0 0;
    }
#chat_txt_out {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    min-width: 0;
    }
#chat_send {
    margin-left: 4px;
    }
.twilio h2 {
    padding: 50px 0 10px;
    }
.twilio .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
    }
.twilio .split > div:first-of-type {
    margin-right: 20px;
    margin-bottom: 50px;
    }
.twilio .split > div:last-of-type {
    text-align: center;
    }
.twilio .split .img-container {
    width: 128px;
    margin: auto;
    padding-bottom: 5px;
    }
.twilio .split .img-container img {
    width: 100%;
    border-radius: 50%;
    background-color: #d0dbe5;
    }
.twilio .split > * {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    }
.chat_msg {
    padding: 5px;
    margin: 5px;
    word-break: break-all;
    }
.chat_msg div img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin: 0 5px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    }
.chat_msg > div {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.chat_msg div div {
    background-color: #add8e6;
    padding: 8px 10px;
    border-radius: 4px;
    width: -webkit-calc(100% - 60px);
    width: calc(100% - 60px);
    }
.chat_msg div span.chat_user_name {
    display: inline-block;
    margin-bottom: 5px;
    }
.chat_msg .current-user + .chat_ts {
    text-align: left;
    }
.chat_msg .chat_ts {
    text-align: right;
    }
.chat_ts {
    font-size: .8em;
    font-style: italic;
    display: block;
    margin-top: 3px;
    }

/* Get support */
.main > .support {
    background-color: #eff4f8;
    }
.support .support-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 40px 0;
    }
.support .support-container h2 {
    padding-bottom: 25px;
    }
.support .support-container span div {
    margin: 15px 0;
    }
.support .support-container span div:first-of-type {
    margin: 5px 0 15px 0;
    }
.support .support-container span div label {
    font-weight: bold;
    }
.support .support-container .form-data {
    width: 70%;
    padding: 0 30px 0 0;
    border-right: 2px solid #d0dbe5;
    }
.support .support-container .support-info {
    width: 30%;
    padding: 0 0 0 30px;
    }
.support .support-container .support-email {
    display: block;
    }
.support .support-container .phone-number {
    color: #6d716c;
    font-weight: bold;
    display: block;
    }
.support .support-container .address {
    color: #6d716c;
    font-weight: bold;
    display: block;
    }

/* How it works */
.main .how-it-works {
    padding-top: 0;
    }
.how-it-works h1 {
    padding-bottom: 0;
    }
.how-it-works .separator {
    margin: 10px 50px;
    outline: 2px solid #145da7;
    }
.how-it-works > .gray-with-shape {
    background-color: #eff4f8;
    }
.how-it-works .step-title {
    padding-bottom: 20px;
    }
.how-it-works .step-title h3 {
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
    max-width: 650px;
    font-weight: 300;
    }
.how-it-works .step-title div.big-number {
    font-size: 4em;
    font-weight: bold;
    line-height: .9;
    }
.how-it-works .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 90px 0 40px 0;
    }
.how-it-works .split .inner-step {
    width: 50%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.how-it-works .split .image-container {
    width: 50%;
    text-align: center;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.how-it-works .split .image-container.bottom {
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
    margin-bottom: -42px;
    }
.how-it-works .split .image-container img {
    max-width: 100%;
    height: auto;
    }
.how-it-works .inner-step p {
    font-size: 1.15em;
    line-height: 1.6;
    }
.how-it-works .gray-with-shape:not(.not-before) .wrapper .split:before {
    content: "";
    position: absolute;
    right: 15%;
    top: 0;
    width: 0;
    height: 0;
    border-left: 165px solid transparent;
    border-right: 165px solid transparent;
    border-top: 50px solid #fff;
    clear: both;
    }
.how-it-works .gray-with-shape:not(.not-after) .wrapper .split:after {
    content: "";
    position: absolute;
    right: 15%;
    bottom: -50px;
    width: 0;
    height: 0;
    border-left: 165px solid transparent;
    border-right: 165px solid transparent;
    border-top: 50px solid #eff4f8;
    clear: both;
    }

/* What we Treat */
.main > .what-we-treat {
    padding: 50px 0 0;
    }
.what-we-treat .content {
    background-color: #eff4f8;
    }
.tabs-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.tabs-container h1 {
    width: 25%;
    padding-right: 15px;
    display: block;
    }
.tabcontent .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 60px 0 0;
    }
.tabcontent:not(.chronic-conditions):not(.psychiatry) .split .inner {
    -webkit-flex: 2 2;
    -ms-flex: 2 2;
    flex: 2 2;
    }
.tabcontent .split .inner .row {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
span.underline {
    text-decoration: underline;
    }
.tabcontent .split .inner .row .card {
    border: 1px solid #d0dbe5;
    background-color: #fff;
    -webkit-box-shadow: 5px 0 5px -2px #9fb5ca,-5px 0 5px -2px #9fb5ca;
    box-shadow: 5px 0 5px -2px #9fb5ca,-5px 0 5px -2px #9fb5ca;
    padding: 20px 20px;
    margin: 10px 10px;
    cursor: pointer;
    transition: .2s;
    width: -webkit-calc(47% - 20px);
    width: calc(47% - 20px);
    text-decoration: none;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    }
.tabcontent .split .inner .row.one-column .card {
    width: -webkit-calc(94% - 20px);
    width: calc(94% - 20px);
    }
.tabcontent .split .inner .row .card:hover {
    background-color: #f7f7f7;
    }
.tabcontent .split .inner .row .card.active {
    background-color: #145da7;
    color: #fff;
    }
.tabcontent .split .inner .row .card.active p.gray-text {
    color: "#B6CEE5";
    }
.tabcontent:not(.chronic-conditions):not(.psychiatry) .split .image-container {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    margin-top: 10px;
    }
.tabcontent.urgent-care .split .inner,
.tabcontent.chronic-conditions .split .inner,
.tabcontent.psychiatry .split .inner {
    width: 40%;
    max-width: 40%;
    }
.tabcontent.chronic-conditions .split .inner .row .card,
.tabcontent.psychiatry .split .inner .row .card {
    width: 90%;
    }
.tabcontent.urgent-care .split .image-container,
.tabcontent.chronic-conditions .split .image-container,
.tabcontent.psychiatry .split .image-container {
    width: 60%;
    margin: 10px 0 20px 0;
    }
.tabcontent .split .image-container img {
    width: 100%;
    height: auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
    }
.what-we-treat .tabcontent.animate {
    -webkit-animation: fadeEffect 1s;
    animation: fadeEffect 1s;
    }
ul.dash {
    list-style: none;
    padding: 10px 0 10px 16px;
    }
ul.dash > li:before {
    display: inline-block;
    content: "-";
    width: 10px;
    margin-left: -16px;
    }
.card ul li {
    font-size: 1.05em;
    line-height: 1.7;
    }
@-webkit-keyframes fadeEffect {
from {
    opacity: 0;
    }
to {
    opacity: 1;
    }
}

@-webkit-keyframes fadeEffect {
from {
    opacity: 0;
    }
to {
    opacity: 1;
    }
}

@keyframes fadeEffect {
from {
    opacity: 0;
    }
to {
    opacity: 1;
    }
}

.what-we-treat .tabcontent:not(.active) {
    display: none;
    }
.what-we-treat .tabcontent.active {
    display: block;
    }
.what-we-treat .tab {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 75%;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    }
.what-we-treat .tab .tablinks {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.what-we-treat .tab .tablinks:first-of-type {
    border-left: 1px solid #eff4f8;
    }
.what-we-treat .tab .tablinks {
    border-right: 1px solid #eff4f8;
    }
.what-we-treat .tab .tablinks:last-of-type {
    border-right: unset;
    }
.what-we-treat .tab .tablinks .image-container img {
    max-width: 100%;
    height: auto;
    }
.what-we-treat .tab button {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    background-color: inherit;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 16px 16px;
    -webkit-transition: .3s;
    transition: .3s;
    font-size: 1.3em;
    font-weight: bold;
    height: auto;
    }
.what-we-treat .tab button span {
    -webkit-align-self: start;
    align-self: start;
    padding-left: 10px;
    }
.what-we-treat .tab button:hover {
    background-color: #ddd;
    }
.what-we-treat .tab button.active {
    background-color: #eff4f8;
    }

/* Sign In & Forgot Password & Terms & Privacy */
.initial-page-padding {
    padding: 40px 0;
    }
.sign-in h1,
.forgot-password h1,
.terms-service h1,
.privacy-policy h1,
.sign-up h1,
.write-review h1,
.appointment-start h1,
.provider-diagnosis h1,
.provider-disposition h1 {
    margin-top: 0;
    }
.sign-in .forgot-password-link,
.forgot-password .sign-in-link,
.sign-up .forgot-password-link {
    padding-top: 30px;
    }
.sign-in .sign-up-link,
.sign-up .sign-up-link {
    padding: 10px 0 0;
    }
.forgot-password .instructions {
    margin: auto;
    padding: 20px 0;
    max-width: intrinsic;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    font-size: 1.1em;
    }
.forgot-password .instructions p {
    text-align: left;
    }
.terms-service .content,
.privacy-policy .content {
    padding: 40px 30px;
    word-spacing: 1.2px;
    line-height: 1.6;
    }

/* DRB-175: the Membership Terms page. Same shell as the other legal pages, but its copy
   is static in parts/membershipterms.php (not fetched from the API), so the headings are
   ours to style: navy section h2s like the source document. */
.membership-terms .content h2 {
    color: #002669;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    margin: 30px 0 10px;
    }
.membership-terms .content p {
    margin: 0 0 14px;
    }
.membership-terms__effective {
    color: #677174;
    font-size: 14px;
    }
.terms-service ul,
.privacy-policy ul,
.consent-terms ul {
    list-style-type: disc;
    padding: 10px 0 10px 16px;
    }
.terms-service ol,
.privacy-policy ol,
.consent-terms ol {
    padding: 10px 0 10px 16px;
    }
.terms-service .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: -40px;
    margin-bottom: -40px;
    }
.privacy-policy .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: -40px;
    margin-bottom: 20px;
    }
.consent-terms {
    margin: 40px 0 40px 0;
    }
.consent-terms .container {
    background-color: #f0f4f8;
    padding: 1px 20px 70px 20px;
    }
.terms-service .container.cn p,
.terms-service .container.cn span,
.terms-service .container.cn li,
.privacy-policy .container.cn p,
.privacy-policy .container.cn span,
.privacy-policy .container.cn li,
.consent-terms .container.cn p,
.consent-terms .container.cn span,
.consent-terms .container.cn li {
    font-size: 16px;
    line-height: 1.7;
    }
.terms-service .container.cn h4.hd,
.privacy-policy .container.cn h4.hd,
.consent-terms .container.cn h4.hd {
    margin: 0;
    color: #539adf;
    }
.terms-service .container.cn h6,
.privacy-policy .container.cn h6,
.consent-terms .container.cn h6 {
    margin: 0;
    }
.terms-service .li,
.privacy-policy .li .consent-terms .li {
    margin-top: 20px;
    }
.sign-up .instructions {
    margin: 0 auto;
    padding: 25px 0 5px 0;
    width: 50%;
    }
.sign-in-to-other {
    padding-top: 10px;
    }
.sign-up form .row.one-column div input.verify-code {
    margin-top: 15px;
    width: 50px;
    text-align: center;
    padding-left: 0;
    padding-right: 0;
    }
.sign-up .btn-group {
    margin: 0 -10px;
    }
.sign-up .btn-group > * {
    margin: 0 10px;
    }
.sign-up form .row.one-column > div.one-row {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    }
::-webkit-file-upload-button,
input[type="file"]::-webkit-file-upload-button {
    padding: 10px;
    }

/* Join our network */
.main > .join-our-network {
    background-color: #eff4f8;
    padding: 60px 0;
    }
.bg-img-join-our-network {
    background-image: url(/images/resources/asian-doctor.png),url(/images/resources/circles.png);
    background-position: left center,center right;
    background-repeat: no-repeat,no-repeat;
    height: 100%;
    background-size: contain,contain;
    }
.join-our-network .split form.submit-join-our-network {
    position: absolute;
    top: -440px;
    right: 0;
    max-width: 560px;
    width: 35%;
    border: 8px solid #eff4f8;
    background-color: #fff;
    }
.join-our-network .split .other-actions {
    padding-top: 40px;
    }
.join-our-network .split .other-actions a {
    padding-top: 15px;
    display: block;
    }
.join-our-network .split form.submit-join-our-network h4 {
    padding-bottom: 30px;
    }
.image-container.join-our-network {
    height: 419px;
    padding: 0;
    }
.join-our-network .list-facts h1,
.join-our-network .list-facts h2,
.join-our-network .list-facts h3,
.join-our-network .list-facts h4,
.join-our-network .list-facts h5,
.join-our-network .list-facts h6 {
    margin-top: 10px;
    }
.join-our-network .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -20px;
    }
.join-our-network .split > * {
    width: 50%;
    margin: 0 20px;
    }
.main > .why-join {
    padding: 70px 0;
    }
.why-join .first-paragraph {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-bottom: 30px;
    }
.why-join .first-paragraph .image-wrapper {
    width: 20%;
    min-width: 120px;
    margin: 0 30px 10px 0;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.why-join .first-paragraph .inner-text {
    width: -webkit-calc(80% - 30px);
    width: calc(80% - 30px);
    }
.why-join .image-wrapper img {
    width: 100%;
    }
.why-join .inner-text {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.why-join .inner-text h4 {
    margin-top: 0;
    margin-bottom: 15px;
    }
.why-join .inner-text p {
    word-spacing: 1.5px;
    }
.why-join .inner-text p:not(.quote) {
    opacity: .7;
    line-height: 1.8;
    font-weight: bold;
    }
.why-join .inner-text p.quote {
    font-weight: bold;
    }
ul.facts {
    padding-left: 15px;
    }
ul.facts > * {
    margin: 20px 0;
    }
li.fact {
    background: url(/images/resources/shield-icon.png) no-repeat left top;
    height: 44px;
    padding-left: 60px;
    padding-top: 9px;
    font-size: 1.2em;
    font-weight: bold;
    }

/* My Account Patient */
.my-account .patient-profile-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: start;
    align-items: start;
    margin: -10px -8px;
    }
.me-title {
    font-size: 32px !important;
    margin: 0 0 5px;
    }
.subpage-hero .membership-pricing-subpage .inner {
    width: 56%;
    }
.subpage-hero .membership-pricing-subpage > .image-container {
    width: 44%;
    }
@media (max-width: 640px) {
.my-account .patient-profile-container {
    margin: 30px -8px;
    }
.my-account .patient-profile-container > .img-container {
    position: relative;
    overflow: visible !important;
    border-right: 2px solid #d0dbe5;
    min-width: 85px;
    padding-right: 10px;
    }
.me-title {
    font-size: 20px !important;
    }
}

.assigned-providers h6.my-providers-title {
    display: none;
    }
.my-account .patient-profile-container > * {
    margin: 0 8px;
    }
.my-account .patient-profile-container .img-container {
    width: 90px;
    overflow: hidden;
    }
.my-account .patient-profile-container .img-container img {
    width: 100%;
    border-radius: 50%;
    height: auto;
    border: 6px solid #d0dbe5;
    }
.my-account .patient-profile-container .text-container {
    width: -webkit-calc(100% - 90px);
    width: calc(100% - 90px);
    }
.my-account .patient-profile-container .text-container h1,
.my-account .patient-profile-container .text-container h2,
.my-account .patient-profile-container .text-container h3,
.my-account .patient-profile-container .text-container h4,
.my-account .patient-profile-container .text-container h5,
.my-account .patient-profile-container .text-container h6 {
    margin: 0;
    }
.my-account .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    padding-top: 15px;
    margin: 0 -15px;
    }
.my-account .split > * {
    margin: 0 15px;
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    }
.my-account .split .appointments,
.all-appointments .appointments,
.results-container .appointments {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    margin: -15px -10px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 20px;
    }
.my-account .split .appointments > * {
    margin: 15px 10px;
    -webkit-flex-basis: -webkit-calc(50% - 20px);
    -webkit-flex-basis: calc(50% - 20px);
    flex-basis: -webkit-calc(50% - 20px);
    flex-basis: calc(50% - 20px);
    }
.all-appointments .appointments > *,
.results-container .appointments > * {
    margin: 15px 10px;
    -webkit-flex-basis: -webkit-calc(25% - 20px);
    -webkit-flex-basis: calc(25% - 20px);
    flex-basis: -webkit-calc(25% - 20px);
    flex-basis: calc(25% - 20px);
    }
.my-account .appointments .appointment .appointment-content,
.all-appointments .appointments .appointment .appointment-content,
.write-review .appointment .appointment-content,
.appointment .appointment-content {
    padding: 0 15px 20px 15px;
    text-align: center;
    position: relative;
    z-index: 10;
    }
.my-account .appointments .appointment .appointment-content .rectangle-decoration,
.all-appointments .appointments .appointment .appointment-content .rectangle-decoration,
.appointment .appointment-content .rectangle-decoration {
    position: absolute;
    top: 55px;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 8px;
    border: 3px solid #f0f4f8;
    z-index: -1;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    }
.appointment-start form.gray .appointment .appointment-content .rectangle-decoration,
.gray .appointment .appointment-content .rectangle-decoration {
    border: 3px solid #d0dbe5;
    }
.my-account .appointments .appointment-actions,
.all-appointments .appointments .appointment-actions,
.results-container .appointments .appointment-actions {
    padding-top: 15px;
    text-align: center;
    }
.my-account .appointments .appointment-actions p,
.all-appointments .appointments .appointment-actions p {
    font-weight: bold;
    color: #677174;
    }
.my-account .appointments .appointment-actions p span.time-left,
.all-appointments .appointments .appointment-actions p span.time-left {
    color: #a85c00;
    }
.my-account .appointments-container .all-appointments-link,
.notifications-container .past-notifications {
    font-weight: bold;
    }
.my-account .appointments-container.todays-appointments .appointments {
    width: intrinsic;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin-bottom: 20px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 30px;
    }
.my-account .appointments .appointment .appointment-content .img-container,
.all-appointments .appointments .appointment .img-container,
.provider-notes .provider-note .img-container,
.write-review .appointment .appointment-content .img-container,
.appointment .appointment-content .img-container {
    width: 110px;
    margin: auto;
    z-index: 50;
    }
.my-account .appointments .appointment .appointment-content .img-container img,
.all-appointments .appointments .appointment .img-container img,
.provider-notes .provider-note .img-container img,
.write-review .appointment .appointment-content .img-container img,
.appointment .appointment-content .img-container img {
    width: 100%;
    border-radius: 50%;
    background-color: #d0dbe5;
    }
.all-appointments .appointments .appointment .btn-group {
    padding-top: 15px;
    }
.appointment .appointment-content .stars,
.appointment .appointment-content .method-available-icons {
    color: #145da7;
    }
.appointment .appointment-content .method-available-icons {
    padding-top: 10px;
    margin: 0 -5px;
    }
.appointment .appointment-content .method-available-icons > * {
    margin: 0 5px;
    }
.appointment .appointment-content p.dr-name {
    font-size: 1.1em;
    font-weight: bold;
    padding-top: 5px;
    white-space: nowrap;
    }
.appointment .appointment-content p.dr-specialty {
    font-weight: bold;
    color: #677174;
    padding: 7px 0;
    }
.notifications-container .notifications {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: -10px 0;
    }
.notifications-container .notifications > * {
    margin: 10px 0;
    }
.notifications-container .notifications .notification {
    padding: 12px 20px;
    border: 2px solid #145da7;
    max-width: 760px;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    }
.notifications-container .notifications .notification.no-show-notification {
    display: none;
    }
.notifications-container .notifications .notification a {
    cursor: pointer;
    }
.notifications-container .notifications .notification p.subject {
    font-weight: bold;
    color: #145da7;
    font-size: 1.1em;
    padding-bottom: 5px;
    }
.notifications-container .notifications .notification p.description {
    padding-bottom: 10px;
    color: #677174;
    }
.notifications-container .notifications .notification .split-bottom {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    }
.notifications-container .notifications .notification .split-bottom > * {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.notifications-container .notifications .notification .split-bottom .btn-group {
    text-align: right;
    margin: 0 -5px;
    }
.notifications-container .notifications .notification .split-bottom .btn-group > * {
    margin: 0 5px;
    }
.notifications-container .notifications .notification .split-bottom .small-text {
    font-size: .8em;
    color: #677174;
    }
.previous-notifications .btn-group-actions,
.all-appointments .btn-group-actions {
    padding-top: 25px;
    }
.wrapper .btn-group-actions {
    padding-bottom: 40px;
    }
.notifications-container .past-notifications {
    text-align: left;
    }
.my-account .split .notifications {
    padding-bottom: 20px;
    }
.my-account .my-account-actions-container,
.provider-settings .my-account-actions-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    margin: 0 -10px;
    padding-top: 10px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 20px;
    }
.provider-settings .my-account-actions-container {
    padding-top: 60px;
    }
.my-account .my-account-actions-container > *,
.provider-settings .my-account-actions-container > * {
    margin: 10px 10px;
    }

/* Dependents */
.patient-dependent p.dependent-name,
.payments p.payment-name,
.form-see-provider .patient-box p.patient-name,
.form-medical-history-selector .patient-box p.patient-name {
    font-weight: bold;
    font-size: 1.1em;
    padding-bottom: 5px;
    }
.patient-dependent .dependent-box,
.payments .payment-box,
.form-see-provider .patient-box,
.form-medical-history-selector .patient-box {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 20px;
    border-radius: 8px;
    border: 2px solid #145da7;
    background-color: #f8f8f8;
    width: -webkit-calc(50%);
    width: calc(50%);
    margin: 10px 0;
    }
.form-medical-history-selector .patient-box {
    margin: 10px auto;
    }
.patient-dependent .dependent-box .inner-text,
.payments .payment-box .inner-text,
.form-see-provider .patient-box .inner-text {
    padding-right: 20px;
    text-align: left;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions,
.payments .payment-box .btn-group-payment-actions {
    margin: -5px -10px;
    text-align: right;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions > *,
.payments .payment-box .btn-group-payment-actions > * {
    margin: 5px 10px;
    }
form.center h1,
form.center h2,
form.center h3,
form.center h4,
form.center h5,
form.center h6,
.see-provider .payments h1,
.see-provider .payments h2,
.see-provider .payments h3,
.see-provider .payments h4,
.see-provider .payments h5,
.see-provider .payments h6 {
    padding-left: 25%;
    text-align: left;
    }
.see-provider .payments h1,
.see-provider .payments h2,
.see-provider .payments h3,
.see-provider .payments h4,
.see-provider .payments h5,
.see-provider .payments h6 {
    padding: 0 25%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
form.big-lbl.center h1,
form.big-lbl.center h2,
form.big-lbl.center h3,
form.big-lbl.center h4,
form.big-lbl.center h5,
form.big-lbl.center h6 {
    padding-left: 25%;
    text-align: left;
    }
form .row.one-column div.height,
form .row.one-column div.weight {
    width: -webkit-calc(50% - 100px);
    width: calc(50% - 100px);
    text-align: left;
    }
form.big-lbl .row.one-column div.height,
form.big-lbl .row.one-column div.weight {
    width: -webkit-calc(50% - 190px);
    width: calc(50% - 190px);
    text-align: left;
    }
form .row.one-column div.height > input,
form .row.one-column div.weight > input {
    width: 110px;
    }
form .row.one-column div.weight span {
    padding-right: 20px;
    }
.patient-dependent .dependent-box.center,
.payments .payment-box.center {
    margin: 10px auto;
    }
.patient-dependent .dependents-container,
.payments .payments-container {
    padding-bottom: 30px;
    }
.patient-dependent .btn-group,
.payments .btn-group {
    margin: 0 -10px;
    }
.patient-dependent .btn-group > *,
.payments .btn-group > * {
    margin: 10px 10px;
    }
.add-credit-card {
    background-color: #fff;
    }

/* Provider Notes */
.provider-notes .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0 -10px;
    }
.provider-notes .split > * {
    margin: 0 10px;
    }
.provider-notes .split .provider-notes-container {
    width: 30%;
    margin: -25px 10px;
    }
.provider-notes .split .provider-notes-container a {
    text-decoration: none;
    }
.provider-notes .split .provider-notes-container a:hover div,
.provider-notes .split .provider-notes-container a:active div {
    background-color: #e2e7e6;
    }
.provider-notes .split .provider-notes-container .provider-note.active {
    background-color: #e2e7e6;
    }
.provider-notes .split .provider-notes-container .provider-note {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #373435;
    margin: 25px 0;
    padding: 10px 10px;
    border: 2px solid #d0dbe5;
    }
.provider-notes .split .provider-notes-container .provider-note .image-text-container {
    padding-right: 15px;
    width: 40%;
    max-width: 200px;
    text-align: center;
    }
.provider-notes .split .provider-notes-container .provider-note .appointment-details {
    margin: auto;
    }
.provider-notes .split .provider-notes-container .img-container {
    width: 65px;
    }
.provider-notes .split .result-notes {
    width: 70%;
    margin: 0 10px;
    }

/* See a Provider */
.progress-bar {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #f0f4f8;
    padding: 10px 10px;
    margin-bottom: 30px;
    }
.progress-bar h1,
.progress-bar h2,
.progress-bar h3,
.progress-bar h4,
.progress-bar h5,
.progress-bar h6 {
    padding: 0 15px;
    }
.progress-bar .progress-bar-icons {
    margin: 0 -3px;
    padding: 0 15px;
    }
.progress-bar .progress-bar-icons > * {
    margin: 0 3px;
    }
.progress-bar .progress-bar-icons i {
    font-size: 38px;
    color: #b6cde4;
    }
.progress-bar .progress-bar-icons i.active {
    color: #1760ab;
    }
.form-see-provider .patient-box:hover {
    background-color: #e2e7e6;
    }
.form-see-provider .split,
.form-medical-history-selector .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 -15px;
    -webkit-flex-wrap: wrap-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
    }
.form-see-provider .split > *,
.form-medical-history-selector .split > * {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    margin: 0 15px;
    }
.form-see-provider .patient-box {
    width: 100%;
    min-width: 280px;
    }
.form-see-provider .patients-warning-message {
    min-width: 230px;
    }
.form-see-provider .btn-group-multiple-actions {
    margin: 5px 5px;
    }
.form-see-provider .btn-group-multiple-actions > * {
    margin: 5px 10px;
    }
.form-see-provider .search-bar {
    margin: -5px 15px;
    }
.form-see-provider .search-bar > * {
    margin: 5px 5px;
    }
.form-see-provider .map-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0 -15px;
    padding-top: 35px;
    }
.form-see-provider .map-container > * {
    width: 50%;
    margin: 10px 15px;
    }
.form-see-provider .map-results {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 30px 10px;
    margin: 7px 0;
    background-color: #145da7;
    color: #fff;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
.form-see-provider .map-results:first-of-type {
    margin-top: 0;
    }
.form-see-provider .map-results > * {
    margin: 0 10px;
    }
.form-see-provider .map-results .text-icon {
    text-align: center;
    width: 120px;
    }
.form-see-provider .map-results .text-icon i {
    font-size: 28px;
    margin-top: 10px;
    }
.form-see-provider .map-results .container-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: -webkit-calc(100% - 120px);
    width: calc(100% - 120px);
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.form-see-provider .map-results .container-text .btn-group-pharmacies-actions {
    text-align: center;
    width: 40%;
    min-width: 100px;
    }
.form-see-provider .map-results .container-text .inner-text {
    padding: 0 15px 5px 15px;
    width: 60%;
    }
.form-see-provider .pharmacy-selected {
    padding: 10px 0 30px 50px;
    font-size: 1.1em;
    }
.form-see-provider .form-container .custom-select,
.form-see-provider .form-container .radio-group,
.medical-history-section .form-container .custom-select,
.medical-history-section .form-container .radio-group {
    padding-left: 10px;
    }
.medical-history-section .row.one-column .weight {
    padding-left: 10px;
    }
.green {
    color: #629c44;
    }
.blue {
    color: #145da7;
    }
.teal {
    color: #007e93;
    }
.green-bk-ground {
    background-color: #e2e7e6;
    }
.reveal-if-active {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    transition: .2s;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    -ms-transition: .2s;
    -o-transition: .2s;
    }
input[type="radio"]:checked ~ .reveal-if-active,
input[type="checkbox"]:checked ~ .reveal-if-active {
    opacity: 1;
    max-height: 1900px;
    overflow: visible;
    padding: 5px 30px;
    margin-bottom: 15px;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    }
input[type="radio"]:checked ~ .reveal-if-active.combo,
input[type="checkbox"]:checked ~ .reveal-if-active.combo {
    padding: 5px 0 5px 30px;
    }
.reveal-if-active.combo .custom-select,
form .row.one-column .reveal-if-active.combo .custom-select,
form .row.one-column .reveal-if-active .radio-group,
form.big-lbl .row.one-column .reveal-if-active.combo .custom-select,
form.big-lbl .row.one-column .reveal-if-active .radio-group {
    width: 100%;
    padding-bottom: 15px;
    }
.reveal-if-active > label {
    font-weight: bold;
    display: block;
    padding: 15px 0 10px 0;
    }
.symptoms-list ul.list {
    padding: 10px 20px 30px 20px;
    background-color: #f0f4f8;
    }
.symptoms-list ul.list > li {
    padding: 3px 0 3px 15px;
    }
.symptoms-list ul.list > li > div > ul > li {
    padding: 4px 0 4px 0;
    }
.symptoms-list ul.list h5 {
    color: #145da7;
    }
.symptoms-list .search {
    margin-bottom: 30px;
    }
form .row.one-column .radio-group > div.flex-column {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 3px 0;
    }
form .row.one-column .radio-group > div.flex-row {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 0;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    }
.form-container {
    padding: 20px 30px;
    margin-top: 30px;
    }
#myDropzonePics {
    width: 100%;
    }
.dz-progress {
    display: none !important;
    }
.form-see-provider .map {
    height: 600px;
    }

/* Review */
.rating {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    text-align: left;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    }
.rating input {
    display: none;
    }
.rating label {
    float: right;
    font-size: 24px;
    color: lightgrey;
    margin: 0 2px;
    text-shadow: 1px 1px #bbb;
    }
.rating label:before {
    content: "\2605";
    }
.rating input:checked ~ label {
    color: #145da7;
    text-shadow: 1px 1px #ff9300;
    }
.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label {
    color: #145da7;
    }
.rating input:checked > label:hover,
.rating input:checked > label:hover ~ label {
    color: #145da7;
    text-shadow: 1px 1px white;
    }
.review-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.review-container > div:first-of-type {
    width: 35%;
    }
.review-container > div:last-of-type {
    width: 65%;
    }
.review-container h6 {
    margin: 0 0 6px;
    }
.review-container textarea {
    margin-top: 10px;
    width: 60%;
    }

/* Appointment start  */
.appointment-start .appointment-start-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.appointment-start .appointment-start-container h1,
.appointment-start .appointment-start-container h2,
.appointment-start .appointment-start-container h3,
.appointment-start .appointment-start-container h4,
.appointment-start .appointment-start-container h5,
.appointment-start .appointment-start-container h6 {
    margin-top: 0;
    }
.appointment-start .appointment-start-container .appointment {
    width: 40%;
    padding-right: 20px;
    }
.appointment-start .appointment-start-container .appointment .appointment-content {
    max-width: 300px;
    min-width: 210px;
    margin: auto;
    }
.appointment-start .appointment-start-container .appointment-details {
    width: 60%;
    text-align: center;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    padding-left: 20px;
    }

/*.appointment-start .appointment-start-container .appointment-details .inner-text,
.appointment-details .btn-group {
  max-width: 600px;
}*/
.appointment-start .appointment-start-container .appointment-details .btn-group p {
    margin-bottom: 15px;
    }
.appointment-start .inner-text h1,
.appointment-start .inner-text h2,
.appointment-start .inner-text h3,
.appointment-start .inner-text h4,
.appointment-start .inner-text h5,
.appointment-start .inner-text h6 {
    margin: 0;
    }
h2.time-appt {
    font-size: 3.7em;
    }
.appointment-details .btn-group {
    margin: 0 -5px;
    }
.appointment-details .btn-group > button {
    margin: 5px 5px;
    }
.appointment-start .appointment-start-container h5 {
    text-align: center;
    }
.appointment-start .actions {
    margin-top: 30px;
    padding: 20px 15px;
    border: 3px solid #d0dbe5;
    background: white;
    border-radius: 4px;
    }
.appointment-start .actions p {
    font-weight: bold;
    }
.appointment-start .count-down {
    padding-top: 5px;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    white-space: break-spaces;
    }
.appointment-start .start-appointment {
    margin-top: 15px;
    }
.appointment-start .start-appointment i {
    font-size: 1.5em;
    padding-bottom: 5px;
    }
.reveal-if-active ul {
    padding-left: 24px;
    }
.selectize-control.selectized:before {
    -moz-transition: opacity .2s;
    -webkit-transition: opacity .2s;
    transition: opacity .2s;
    content: " ";
    z-index: 2;
    position: absolute;
    display: block;
    top: 12px;
    right: 24px;
    width: 16px;
    height: 16px;
    background: url(images/spinner.gif);
    background-size: 16px 16px;
    opacity: 0;
    }
.selectize-control.selectized.loading:before {
    opacity: .85;
    }
.selectize-input.dropdown-active {
    z-index: 10;
    }
.selectize-dropdown-content > * {
    padding: 5px 5px;
    }
.selectize-input > * {
    display: block;
    }
.selectize-dropdown,
.selectize-input,
.selectize-input input {
    font-size: 1em;
    font-family: "Trebuchet MS","Arial",sans-serif;
    }
.selectize-control.plugin-remove_button .remove-single {
    top: -5px;
    right: 4px;
    }
.selectize-control.plugin-remove_button [data-value] .remove {
    top: 3px;
    }
.selectize-control.multi .selectize-input > div {
    padding: 4px 10px;
    margin: 0 34px 5px 0;
    }
.reveal-if-active-horizontal {
    padding: 15px 0 15px 10px;
    display: none;
    }
.reveal-if-active-horizontal label {
    display: block;
    }
.medical-history .reveal-if-active-horizontal {
    width: 50%;
    }
.medical-history .reveal-if-active-horizontal textarea {
    width: 100%;
    }
.dropdown-empty-message {
    width: 100% !important;
    }
.other-issues-container .dropdown-empty-message {
    margin-top: 45px;
    }
.reveal-if-active-horizontal .selectized {
    padding-bottom: 10px;
    }
.reveal-if-active-horizontal .selectize-input {
    width: 100% !important;
    }
.reveal-if-active-horizontal .row.one-column.lbl-top input:not([type="date"]) {
    width: 100%;
    }
.reveal-if-active-horizontal .row.one-column.lbl-top input[type="date"] {
    width: 50%;
    }
.surgery-inputs .delete {
    position: absolute;
    right: 45%;
    top: 50%;
    -webkit-transform: translateY(-webkit-calc(-50% - 5px));
    -webkit-transform: translateY(calc(-50% - 5px));
    -ms-transform: translateY(calc(-50% - 5px));
    transform: translateY(-webkit-calc(-50% - 5px));
    transform: translateY(calc(-50% - 5px));
    -moz-transform: translateY(calc(-50% - 5px));
    -o-transform: translateY(calc(-50% - 5px));
    }
.other-issues-inputs .delete {
    position: absolute;
    right: 5px;
    top: 50%;
    -webkit-transform: translateY(-webkit-calc(-50% - 5px));
    -webkit-transform: translateY(calc(-50% - 5px));
    -ms-transform: translateY(calc(-50% - 5px));
    transform: translateY(-webkit-calc(-50% - 5px));
    transform: translateY(calc(-50% - 5px));
    -moz-transform: translateY(calc(-50% - 5px));
    -o-transform: translateY(calc(-50% - 5px));
    }
.add-surgery,
.add-other-issues {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.surgery-inputs.default,
.other-issues-inputs.default {
    display: none;
    }
.relative {
    position: relative;
    }
.btn-group-medical-history-actions {
    margin: 15px -5px 0 -5px;
    }
.btn-group-medical-history-actions > * {
    margin: 5px 5px;
    }
.no-margins {
    margin: 0;
    }
.appt-options-box {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 20px;
    margin: 30px auto;
    border-radius: 8px;
    border: 2px solid #145da7;
    background-color: #f8f8f8;
    width: -webkit-calc(70%);
    width: calc(70%);
    }
.appt-options-box p,
.appt-options-box h1,
.appt-options-box h2,
.appt-options-box h3,
.appt-options-box h4,
.appt-options-box h5,
.appt-options-box h6 {
    text-align: left;
    }
.btn-group-appt-options-actions {
    margin-left: 15px;
    }
.no-wrap {
    white-space: nowrap;
    }
.info {
    font-size: 1.1em;
    padding: 15px 0;
    }
.loader-gif-section {
    padding: 40px 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.loader-gif-section div:first-of-type {
    padding-right: 30px;
    }
.loader-gif-section div:last-of-type {
    font-size: 1.2em;
    }
.provider-appt-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 40px 0;
    }
.provider-appt-container .provider-container {
    width: -webkit-calc(40% - 30px);
    width: calc(40% - 30px);
    padding-right: 30px;
    }
.provider-appt-container .appt-details {
    width: 60%;
    }
.provider-container .appointment {
    max-width: 350px;
    min-width: 250px;
    margin: auto;
    }
.appt-details .card {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 800px;
    padding: 20px 20px;
    margin: 20px 0;
    border: 2px solid #145da7;
    background-color: #f8f8f8;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
.appt-details .card div:first-of-type {
    padding-right: 30px;
    }
.info-message {
    padding-bottom: 15px;
    }
.info-message p {
    opacity: .7;
    }
.favorites {
    padding: 10px 0;
    }
.book-actions {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: -5px 0;
    }
.book-actions > * {
    margin: 5px 0;
    }
.fancybox-block {
    display: block;
    }
.fancybox-hidden {
    display: none;
    }
.fancybox-is-open .fancybox-bg {
    opacity: .95;
    }
.fancybox-container.transparent .fancybox-content {
    padding: 0;
    background: transparent !important;
    }
.fancybox-container.transparent .fancybox-slide--html {
    padding: 7rem 0;
    }
.fancybox-container.transparent .fancybox-slide--html .fancybox-close-small {
    color: #fff;
    }
.fancybox-content {
    min-height: 200px;
    }
.bg-blue,
.appt-details .bg-blue {
    background-color: #145da7;
    color: #fff;
    }
.info.bg-blue {
    padding: 20px 25px;
    margin-bottom: 10px;
    }
.reviews h5 {
    padding-top: 20px;
    padding-bottom: 10px;
    }
.review-header {
    padding: 10px 0;
    }
.review-inner {
    padding: 10px 0;
    }
.review-header .review-stars {
    display: block;
    padding-top: 5px;
    }
.review-content {
    line-height: 1.5;
    }
.gray-text {
    color: #6d716c;
    }
.global-stars {
    padding: 0 0 10px;
    font-size: 1.4em;
    }
.left,
.info-message.left {
    text-align: left;
    }
.big-text {
    font-size: 1.15em;
    }
.filters {
    display: none;
    padding: 25px 20px;
    margin: 15px 0;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    }
.show-filters {
    padding-left: 15px;
    }
.filters h1,
.filters h2,
.filters h3,
.filters h4,
.filters h5,
.filters h6 {
    margin-top: 0;
    }
.price-appointment {
    font-weight: bold;
    }
.results-container {
    padding: 20px 0;
    }
.times-available {
    padding-top: 10px;
    }
.favorite-icon {
    position: absolute;
    top: 0;
    right: 5px;
    color: red;
    z-index: 51;
    }
.align-top-warning-message {
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
    }
.appointment-start .btn-group-go-back {
    margin-top: 15px;
    }

/* Providers Settings */
.provider-header-split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.provider-header-image-container {
    width: 90px;
    }
.provider-header-split + hr,
.provider-settings hr {
    border-width: 2px;
    border-color: #f0f4f8;
    }
.provider-home .provider-header-split + hr {
    display: block;
    margin-bottom: 0;
    }
.provider-header-image-container img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    border: 6px solid #d0dbe5;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    }
.provider-settings .container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-evenly;
    justify-content: space-evenly;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 15px 0;
    }
.provider-settings .container h4 {
    margin: 0 0 12px;
    }
.provider-settings .container > * {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 260px;
    }
.provider-settings .container .stars-container {
    padding-bottom: 18px;
    }
.provider-settings .container .stars-container i {
    font-size: 1.4em;
    color: #145da7;
    }
.provider-settings .container .stars-container span {
    padding-left: 8px;
    font-size: 1.6em;
    font-weight: bold;
    }
.provider-settings .container .earnings-container span {
    font-size: 1.6em;
    font-weight: bold;
    padding-bottom: 18px;
    }
.provider-settings .container .stars-container span {
    color: #000;
    }

/* Provider Bank Account */
.provider-bank-account .btn-group {
    margin: -5px -10px;
    }
.provider-bank-account .btn-group > * {
    margin: 5px 10px;
    }

/* Provider Contact information */
.provider-contact .btn-group {
    margin: -5px -10px;
    }
.provider-contact .btn-group > * {
    margin: 5px 10px;
    }
.btn-group-top {
    margin-bottom: 15px;
    }
.provider-reviews h1 {
    margin-bottom: 10px;
    }
.padding-small {
    padding: 20px 30px;
    }

/* Provider Reviews */
.provider-reviews .review-inner {
    overflow-x: auto;
    }
table:not(.ui-datepicker-calendar):not(.datatable) {
    width: 100%;
    border-collapse: collapse;
    border: none;
    table-layout: fixed;
    border-bottom: 1px solid #111;
    }
table:not(.ui-datepicker-calendar):not(.datatable).table-center {
    text-align: center;
    }
tr,
td,
th {
    border: none;
    }
table:not(.ui-datepicker-calendar):not(.datatable) th {
    text-align: left;
    }
table:not(.ui-datepicker-calendar) td .btn {
    margin: 1px 1px;
    }
table:not(.ui-datepicker-calendar):not(.datatable).table-center th {
    text-align: center;
    }
table:not(.ui-datepicker-calendar):not(.datatable) tr.header {
    border-bottom: 1px solid #111;
    }
table:not(.ui-datepicker-calendar):not(.datatable) tr.header > th {
    padding: 10px 18px;
    font-size: 1.1em;
    }
table.datatable th {
    font-size: 1.1em;
    }
table.datatable .profile-picture {
    height: 4rem;
    }
table:not(.ui-datepicker-calendar):not(.datatable) tr:not(.header) > td:not(.appointment-comment) {
    padding: 5px 10px;
    }
table:not(.ui-datepicker-calendar):not(.reviews):not(.datatable) tr:not(.header):nth-child(even):not(th):not(:hover) {
    background-color: #fff;
    border-top: 1px solid #ddd;
    }
table:not(.ui-datepicker-calendar):not(.reviews):not(.datatable) tr:not(.header):nth-child(odd):not(th):not(:hover) {
    background-color: #f9f9f9;
    border-top: 1px solid #ddd;
    }
.provider-reviews table:not(.datatable) tr:not(.header) {
    background-color: #f9f9f9;
    border-top: 1px solid #ddd;
    }
.provider-reviews table:not(.datatable) tr:not(.header):nth-child(4n + 2),
.provider-reviews table:not(.datatable) tr:not(.header):nth-child(4n + 3) {
    background-color: #fff;
    border-top: 1px solid #ddd;
    }
table:not(.datatable).table-hover:not(.reviews) tr:not(.header):hover {
    background-color: #f6f6f6;
    border-top: 1px solid #ddd;
    }
.provider-reviews table:not(.datatable) td.appointment-comment {
    padding: 30px 10px;
    }
.provider-reviews table:not(.datatable) tr.no-show {
    display: none;
    }
.provider-reviews table:not(.datatable) tr.no-show.active {
    display: table-row;
    }
.datatable thead tr {
    text-align: left;
    }

/* Earning History */
.provider-earnings .earnings-pick-year {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.provider-earnings .earnings-pick-year > label {
    margin-right: 20px;
    }
.provider-earnings .earnings-pick-year .custom-select {
    width: 150px;
    }
.provider-earnings .earnings-pick-year {
    padding-bottom: 25px;
    }
.earnings-table {
    max-width: 600px;
    overflow-x: auto;
    display: block;
    }

/* Provider Home */
.provider-home .earnings-container {
    padding: 10px 18px;
    }
.provider-home .earnings-container h5 {
    padding-bottom: 6px;
    }
.provider-home .earnings-container span {
    font-size: 1.4em;
    font-weight: bold;
    }
.provider-home .earnings-container a {
    padding-left: 160px;
    font-weight: bold;
    }
.provider-home .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.provider-home .split > * {
    width: 50%;
    }
.provider-home .split > div:first-of-type {
    padding-right: 10px;
    }
.provider-home .split > div:last-of-type {
    padding-left: 10px;
    }
.split .right {
    text-align: right;
    }
.provider-home .provider-patients-today {
    margin: 20px 0;
    }
.provider-home .home-section {
    margin: 30px 0;
    }
.provider-home .home-section h1,
.provider-home .home-section h2,
.provider-home .home-section h3,
.provider-home .home-section h4,
.provider-home .home-section h5,
.provider-home .home-section h6,
.provider-home .provider-patients-today h1,
.provider-home .provider-patients-today h2,
.provider-home .provider-patients-today h3,
.provider-home .provider-patients-today h4,
.provider-home .provider-patients-today h5,
.provider-home .provider-patients-today h6 {
    padding-bottom: 10px;
    }
.provider-home .home-section table tr td:not(.blue),
.provider-appointments .appt-table table tr td:not(.blue),
.provider-co-sign table tr td:not(.blue) {
    color: #6d716c;
    }
.provider-home .home-table {
    padding-bottom: 20px;
    }
.provider-home .split .right.blue {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    padding-bottom: 20px;
    padding-right: 40px;
    }
.provider-home .messages-section {
    padding-top: 10px;
    }
.small-text {
    font-size: .9em;
    }
.extra-small-text {
    font-size: .8em;
    }
.banner-support {
    text-align: center;
    padding: 25px 0;
    }
.banner-support h5 a {
    color: #fff !important;
    }
.banner-support h5 a:hover {
    text-decoration: underline !important;
    }

/* Provider View Note */
.provider-view-note .result-notes {
    width: 100%;
    min-height: 100vh;
    }

/* Manage Cosigner */
.cosigner-list {
    max-width: 700px;
    }
.cosigner-list ul {
    padding: 25px 0;
    }
.cosigner-list ul li input[type="checkbox"] + label {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 12px 0;
    }
.cosigner-list ul li:nth-child(even):not(:hover) {
    background-color: #fff;
    }
.cosigner-list ul li:nth-child(odd):not(:hover) {
    background-color: #eff4f8;
    }
.cosigner-list ul li:hover {
    background-color: #d0dbe5;
    }
.cosigner-list label div > span.blue {
    font-size: 1.1em;
    }
.cosigner-list label div:first-of-type {
    max-width: 60px;
    display: inline-block;
    margin-left: 10px;
    }
.cosigner-list label div:last-of-type {
    display: inline-block;
    padding-left: 25px;
    padding-right: 18px;
    }
.cosigner-list label div img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    }
.provider-manage-co-signers .btn-group {
    margin: 0 -5px;
    }
.provider-manage-co-signers .btn-group > * {
    margin: 5px 5px;
    }

/* Provider Service Details */
.provider-service-details .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.provider-service-details .split > div:first-of-type {
    margin-right: 20px;
    }
.provider-service-details .split > div:last-of-type {
    margin-left: 20px;
    }
.provider-service-details .split > * {
    width: 50%;
    }
.provider-service-details input {
    min-width: 220px;
    }

/* Notes inline */
.notes-inline {
    padding: 10px 10px;
    max-width: 956px;
    border: 1px solid #d0dbe5;
    }
.notes-inline ol {
    padding-left: 15px;
    }
.notes-inline hr {
    margin: 5px 0;
    }
.notes-inline .notes-header .logo-container {
    max-width: 330px;
    min-width: 240px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.notes-inline .notes-header .logo-container img {
    width: 100%;
    }
.notes-inline .notes-header {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.notes-inline .provider-inner-text {
    text-align: center;
    font-size: .9em;
    }
.notes-inline .notes-header > * {
    margin: 5px 5px;
    }
.notes-inline .provider-image {
    max-width: 60px;
    margin: auto;
    }
.notes-inline .provider-image img {
    width: 100%;
    height: auto;
    }
.notes-main-content .summary-main-content > * {
    padding: 5px 10px;
    }
.notes-main-content h3 {
    margin-top: 7px;
    margin-bottom: 7px;
    }
.notes-main-content .two-column-notes {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 15px;
    padding-bottom: 15px;
    }
.notes-main-content .two-column-notes > * {
    -webkit-flex: 50%;
    -ms-flex: 50%;
    flex: 50%;
    padding-left: 15px;
    margin-top: 8px;
    margin-bottom: 8px;
    }
.notes-main-content p strong {
    display: block;
    font-size: 1.05em;
    padding-bottom: 3px;
    color: #145da7;
    }
.small-padding-top-bottom > * {
    padding: 2px 0;
    }

/* Attachments */
.attachments-container:after {
    content: "";
    display: table;
    clear: both;
    }
.column-attachment-img {
    float: left;
    width: 25%;
    }
.column-attachment-img img {
    width: 100%;
    }
.attachments-container > .column-attachment-img {
    padding: 5px 8px;
    }

/* The Modal  */
.modal-appt-images {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 120px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,.4);
    }
.modal-appt-images .modal-content {
    position: relative;
    background-color: #fefefe;
    margin: auto;
    padding: 0;
    width: 95%;
    max-width: 1150px;
    }
.modal-appt-images .close {
    color: white;
    position: absolute;
    top: 100px;
    right: 25px;
    font-size: 35px;
    font-weight: bold;
    }
.modal-appt-images .close:hover,
.modal-appt-images .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    }
.modal-appt-images .mySlides {
    display: none;
    }
.cursor {
    cursor: pointer;
    }
.modal-appt-images .prev,
.modal-appt-images .next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    padding: 12px;
    margin-top: -50px;
    color: #fff;
    background-color: rgba(0,0,0,.3);
    font-weight: bold;
    font-size: 20px;
    -webkit-transition: .6s ease;
    transition: .6s ease;
    border-radius: 0 3px 3px 0;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none;
    }
.modal-appt-images .next {
    right: 0;
    border-radius: 3px 0 0 3px;
    }
.modal-appt-images .prev:hover,
.modal-appt-images .next:hover {
    background-color: rgba(0,0,0,.8);
    }
.modal-appt-images .numbertext {
    color: #f2f2f2;
    font-size: 12px;
    padding: 8px 12px;
    position: absolute;
    top: 0;
    }
.modal-appt-images .active {
    opacity: 1;
    }
img.hover-shadow {
    -webkit-transition: .3s;
    transition: .3s;
    }
.hover-shadow:hover {
    -webkit-box-shadow: 0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);
    box-shadow: 0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);
    }

/* Appointments */
.provider-appointments .tabs-container {
    padding-top: 1em;
    }
.provider-appointments .tab {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 70%;
    }
.provider-appointments h1 {
    width: 30%;
    }
.provider-appointments .tab .tablinks {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.provider-appointments .tab button {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    background-color: inherit;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 15px 16px;
    -webkit-transition: .3s;
    transition: .3s;
    font-size: 1.3em;
    font-weight: bold;
    }
.provider-appointments .tab button:hover {
    background-color: #ddd;
    }
.provider-appointments .tab button.active {
    background-color: #eff4f8;
    }
.provider-appointments .tab .tablinks:first-of-type {
    border-left: 1px solid #eff4f8;
    }
.provider-appointments .tab .tablinks {
    border-right: 1px solid #eff4f8;
    }
.provider-appointments .tab .tablinks:last-of-type {
    border-right: unset;
    }
.provider-appointments .tabcontent.active {
    display: block;
    }
.provider-appointments .tabcontent:not(.active) {
    display: none;
    }

/*.provider-appointments .tabcontent {
  -webkit-animation: fadeEffect 1s;
  animation: fadeEffect 1s;
}*/
.appt-table {
    padding-top: 15px;
    }
.appt-table .dataTables_wrapper .dataTables_filter {
    padding-right: 5px;
    }
.dataTables_wrapper .dataTables_paginate {
    padding-bottom: 15px;
    }
.co-sign-table {
    margin-top: 10px;
    }
.dataTables_wrapper .dataTables_filter input {
    background-color: white;
    }

/* Cosign */
.provider-co-sign .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.provider-co-sign .co-sign-table {
    overflow-x: auto;
    }
.pager {
    margin: 5px -5px;
    }
.pager > * {
    padding: 5px;
    margin: 5px 5px;
    }
.pager a.page.active-page {
    color: #000;
    text-decoration: underline;
    }
#cosign-reason .content-scroll {
    width: 280px;
    min-width: 200px;
    max-height: 300px;
    overflow: auto;
    padding: 0;
    }
#cosign-reason.fancybox-content {
    min-height: 250px;
    }
.red {
    color: red;
    }
.btn-group-co-sign {
    margin: 0 -5px;
    padding-top: 20px;
    }
.btn-group-co-sign > * {
    margin: 0 5px;
    }
#cosign-form.fancybox-content,
#cosign-app-edit.fancybox-content,
#cosign-app-resend,
#cosign-pending {
    min-height: 250px;
    }
#cosign-reject-form.fancybox-content {
    min-height: 350px;
    width: 500px;
    min-width: 200px;
    }
#cosign-attestation-form.fancybox-content {
    min-height: 350px;
    width: 500px;
    min-width: 200px;
    }
#cosign-attestation-form.fancybox-content textarea,
#cosign-reject-form.fancybox-content textarea {
    width: 100%;
    }
.fancybox-hidden h5 {
    margin-bottom: 10px;
    }

/* Provider disposition */
.provider-disposition .btn-group {
    margin: 0 -5px;
    }
.provider-disposition .btn-group > * {
    margin: 5px 5px;
    }
.selectize-input.items.not-full,
.selectize-input.items.has-options {
    min-height: 45px;
    }
.provider-disposition .other-issues-container .dropdown-empty-message {
    margin-top: 0;
    }
#prescription-modal.fancybox-content {
    min-height: 450px;
    width: 500px;
    min-width: 200px;
    }
#prescription-modal .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
#prescription-modal .split-start {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin: 0 -2px;
    }
#prescription-modal .split-start > * {
    margin: 2px 2px;
    }
#prescription-modal #medication-frequency {
    min-width: 90px;
    }
#prescription-modal .fancybox-hidden h5 {
    margin-bottom: 0;
    }
#prescription-modal #select-doses-options + .selectized {
    min-width: 90px;
    }
#prescription-modal #select-doses-options + .selectized .item {
    max-width: 63px;
    white-space: nowrap;
    overflow: hidden;
    }
#prescription-modal .results .items {
    padding: 10px 0;
    }
#prescription-modal .results .items .item {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 8px 0;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #d0dbe5;
    }
#prescription-modal .results .items .item > div:first-of-type {
    padding-right: 7px;
    }
#frmInsurance div p {
    font-style: italic;
    font-weight: normal;
    font-size: .9em;
    text-align: left;
    color: #797979;
    }
.input_label_box {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: 70%;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-left: auto;
    margin-right: auto;
    }
.input_label_box div {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    margin-left: 10px;
    }
.insurance_label_select_insurance {
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    }
.fancybox-button {
    background-color: white;
    }
.fancybox-button:hover {
    color: black;
    }
.disable-click {
    pointer-events: none;
    background-color: #d0dbe5 !important;
    }
#dosespot_notifications_count {
    color: red;
    }
.mb-1 {
    margin-bottom: 10px;
    }
.subscription-section h3 {
    margin: 0;
    }
.subscription-section .flex-column {
    width: 100%;
    padding: 10px;
    margin-top: 5px;
    }
.subscription-section .radio-group {
    max-width: 550px;
    }
.subscription-section input[type="radio"] + label {
    padding-left: 42px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 20px;
    }
.subscription-section input[type="radio"] + label div:first-of-type {
    max-width: 200px;
    width: 100%;
    }
.subscription-section input[type="radio"] + label:before {
    left: 7px;
    }
.subscription-section input[type="radio"] + label:after {
    left: 12px;
    }
.subscription-section input[type="radio"]:disabled + label:before {
    display: none;
    }
.text-left {
    text-align: left !important;
    }
.mt-1 {
    margin-top: 10px;
    }
.mt-2 {
    margin-top: 20px;
    }
.pt-1 {
    padding-top: 25px;
    }
.text-center {
    text-align: center !important;
    }
@media (max-width: 3840px) and (min-width: 2561px) {
.hero .inner {
    padding: 550px 0;
    }
}

@media (max-width: 3840px) and (min-width: 1025px) {
header .nav li.hasSubmenus:hover .sub,
header .nav li.hasSubmenus:hover .sub.show {
    display: inline;
    }
header .nav li.hasSubmenus .sub.show {
    display: none;
    }
}

@media (max-width: 2560px) and (min-width: 1921px) {
.hero .inner {
    padding: 400px 0;
    }
}

@media all and (max-width: 1441px) {
body {
    font-size: 15px;
    }
.hero h1 {
    font-size: 36px !important;
    }
h6 {
    font-size: 15px !important;
    }
header .site-main-header .nav-container .main-header ul.nav > li {
    margin-left: 40px;
    }
header .main-header .nav li.button a {
    padding: 14px 20px;
    }
.wrapper {
    padding: 0 4em;
    }
.terms-service .container.cn p,
.terms-service .container.cn span,
.terms-service .container.cn li,
.privacy-policy .container.cn p,
.privacy-policy .container.cn span,
.privacy-policy .container.cn li,
.consent-terms .container.cn p,
.consent-terms .container.cn span,
.consent-terms .container.cn li {
    font-size: 15px;
    }
.radio-group.horizontal .flex-column {
    min-width: 155px;
    }
.subpage-hero .inner {
    width: 30%;
    }
.subpage-hero .inner .inner-text.pricing:after {
    height: 110px;
    }
.subpage-hero .inner .inner-text.pricing {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.subpage-hero .inner .inner-text.pricing .content.pricing:first-child {
    padding-bottom: 0;
    }
.subpage-hero .inner .inner-text.pricing .content.pricing:last-child {
    padding-top: 10px;
    padding-bottom: 0;
    }
.subpage-hero .split > .image-container.pricing img {
    max-width: 100%;
    max-height: 100%;
    }
.subpage-hero .split > .image-container {
    width: 70%;
    margin-top: 0;
    }
.subpage-hero .split .inner.pricing .image-container.insurance-img {
    white-space: nowrap;
    width: 100%;
    max-width: 500px;
    }
.subpage-hero .split .inner.pricing .image-container.insurance-img img {
    width: 50%;
    }
.subpage-hero .inner .inner-text.pricing > * {
    width: 100%;
    }
.join-our-network .split form.submit-join-our-network {
    max-width: 580px;
    width: 44%;
    }
.what-we-treat .tabs-container h1 {
    padding-bottom: 50px;
    width: 100%;
    padding-right: 0;
    }
.what-we-treat .tab {
    width: 100%;
    }
div#local-media {
    left: 5px;
    }
}

@media all and (max-width: 1300px) {
/* Affects hero.php, max-width: 1250px */
.hero .inner {
    text-align: center;
    width: 100%;
    margin: auto;
    padding: 16px 0 0;
    }
.hero h1 {
    padding: 0;
    margin: auto;
    }
.hero h1 .subtitle {
    padding-right: unset;
    }
.hero .hero-image {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 61.8vw;
    max-width: none;
    max-height: none;
    background-size: cover;
    background-position: top right;
    }
.hero .btn-group > * {
    margin: 8px;
    }
.hero .hero-availability {
    margin: 8px auto 0;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: left;
    }
}

@media all and (max-width: 1250px) {
.wrapper {
    padding: 0 42px;
    }
header.loggedout .logout-only-mobile {
    display: none !important;
    }
header.loggedin .mobile-devices-only {
    display: block !important;
    }
header .site-main-header .nav-container .main-header.web ul.nav li {
    margin-left: 24px;
    }
header .main-header .nav li.button a {
    padding: 12px 10px;
    }
}

@media all and (max-width: 1100px) {
.see-provider .payments h1,
.see-provider .payments h2,
.see-provider .payments h3,
.see-provider .payments h4,
.see-provider .payments h5,
.see-provider .payments h6 {
    padding: 0;
    }
html {
    font-size: 10px;
    }
body {
    font-size: 14px;
    }
h6 {
    font-size: 14px !important;
    }
footer .footer-section.top .split > .left-side {
    width: 31%;
    }
footer .footer-section.top .split > .center-side {
    width: 45%;
    }
footer .footer-section.top .split > .right-side {
    width: 24%;
    }
form .row.one-column > div > input:not(.input-full-width),
form .row.one-column > div > div,
form .row.one-column .custom-select,
form .row.one-column .radio-group,
form .row.one-column .column-inputs {
    width: -webkit-calc(100% - 100px);
    width: calc(100% - 100px);
    }
form.big-lbl .row.one-column > div > input:not(.input-full-width),
form.big-lbl .row.one-column > div > div,
form.big-lbl .row.one-column .custom-select,
form.big-lbl .row.one-column .radio-group,
form.big-lbl .row.one-column .column-inputs {
    width: -webkit-calc(100% - 190px);
    width: calc(100% - 190px);
    }
form .row.one-column.lbl-top > div > input,
form .row.one-column.lbl-top > div > div,
form .row.one-column.lbl-top .custom-select,
form .row.one-column.lbl-top .radio-group,
form .row.one-column.lbl-top .column-inputs,
form .row.one-column.lbl-top > div > input:not(.input-full-width),
form.big-lbl .row.one-column.lbl-top > div > input,
form.big-lbl .row.one-column.lbl-top > div > div,
form.big-lbl .row.one-column.lbl-top .custom-select,
form.big-lbl .row.one-column.lbl-top .radio-group,
form.big-lbl .row.one-column.lbl-top .column-inputs {
    width: -webkit-calc(100%);
    width: calc(100%);
    }
.medical-history .reveal-if-active-horizontal {
    width: 100%;
    }
form .row.one-column div.height,
form .row.one-column div.weight {
    width: -webkit-calc(100% - 100px);
    width: calc(100% - 100px);
    }
form.big-lbl .row.one-column div.height,
form.big-lbl .row.one-column div.weight {
    width: -webkit-calc(100% - 190px);
    width: calc(100% - 190px);
    }
form.center h1,
form.center h2,
form.center h3,
form.center h4,
form.center h5,
form.center h6 {
    padding-left: 0;
    }
form.big-lbl.center h1,
form.big-lbl.center h2,
form.big-lbl.center h3,
form.big-lbl.center h4,
form.big-lbl.center h5,
form.big-lbl.center h6 {
    padding-left: 0;
    }
.patient-dependent .dependent-box,
.payments .payment-box {
    width: 100%;
    }
.patient-dependent .dependents-container h1,
.patient-dependent .dependents-container h2,
.patient-dependent .dependents-container h3,
.patient-dependent .dependents-container h4,
.patient-dependent .dependents-container h5,
.patient-dependent .dependents-container h6 {
    text-align: left;
    }
.sign-up .instructions {
    width: 100%;
    }
.provider-notes .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin: 0;
    }
.provider-notes .split > * {
    margin: 0;
    }
.provider-notes .split .result-notes {
    width: 100%;
    }
.provider-notes .split .provider-notes-container {
    width: 100%;
    margin: 0;
    }
.terms-service .container.cn p,
.terms-service .container.cn span,
.terms-service .container.cn li,
.privacy-policy .container.cn p,
.privacy-policy .container.cn span,
.privacy-policy .container.cn li,
.consent-terms .container.cn p,
.consent-terms .container.cn span,
.consent-terms .container.cn li {
    font-size: 14px;
    }
.form-see-provider .map-results .container-text {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.form-see-provider .map-results .container-text .inner-text {
    width: 100%;
    padding: 0 0 10px;
    }
.form-see-provider .map-results .container-text .btn-group-pharmacies-actions {
    width: 100%;
    text-align: left;
    }
.form-see-provider .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    }
.form-see-provider .split.reverse {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    }
.form-see-provider .search-bar {
    padding-bottom: 15px;
    }
.form-see-provider .btn-group-multiple-actions {
    padding-top: 15px;
    }
.review-container textarea {
    width: 100%;
    }
.appt-options-box {
    width: 100%;
    }
footer .footer-section.top .social a:first-of-type {
    margin-left: 40px;
    }
.talk-to span.break {
    display: unset;
    }
.talk-to .img-container {
    width: 60%;
    }
.talk-to .inner-text {
    width: 40%;
    }
.family .img-container img {
    height: 220px;
    width: auto;
    }
.subpage-hero .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.subpage-hero .inner {
    width: 100%;
    padding: 20px 0;
    }
.subpage-hero .membership-pricing-subpage .inner {
    width: 100%;
    padding: 20px 0;
    }
.subpage-hero .split > .image-container {
    width: 100%;
    max-width: 700px;
    }
.subpage-hero .split p.subtext {
    padding-bottom: 20px;
    }
.inner-text.pricing {
    -webkit-flex-direction: row !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
    }
.content.pricing {
    padding: 0 !important;
    -webkit-flex-basis: -webkit-calc(50% - 8px) !important;
    -webkit-flex-basis: calc(50% - 8px) !important;
    flex-basis: -webkit-calc(50% - 8px) !important;
    flex-basis: calc(50% - 8px) !important;
    }
.subpage-hero .inner .inner-text.pricing:after {
    height: 200px;
    }
.support .support-container {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.support .support-container .form-data {
    width: 100%;
    padding: 20px 0 0;
    border-right: unset;
    border-top: 2px solid #d0dbe5;
    }
.support .support-container .support-info {
    width: 100%;
    padding: 0 0 20px;
    }
.support .support-container .support-email {
    padding-top: 0;
    }
.subpage-hero .split {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.join-our-network .split form.submit-join-our-network {
    position: unset;
    }
.bg-img-join-our-network {
    background-position: center center,center bottom;
    }
.subpage-hero .split > .image-container.join-our-network {
    margin-top: 15px;
    }
.subpage-hero .subcontent.join-our-network {
    padding-bottom: 15px;
    }
.subpage-hero .split > .image-container.pricing {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    max-width: 100%;
    }
.subpage-hero .split > .image-container.pricing .pricing-statement-wrapper ul li {
    font-size: 2rem;
    }
.subpage-hero .pricing .subcontent .pricing-trust-badges {
    padding: 12px 10px 20px;
    }
.subpage-hero .pricing-trust-badges-row {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 12px 0;
    }
.subpage-hero .split > .inner.pricing {
    padding: 0 0 20px;
    }
.support .support-container span div {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
.support .support-container span div label {
    min-width: 190px;
    }
.provider-appointments .tabs-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.provider-appointments .tabs-container h1 {
    width: 100%;
    padding-right: 0;
    }
.provider-appointments .tab {
    margin-top: 10px;
    width: 100%;
    }
header .top-header.provider,
header .top-header.patient {
    font-size: 12px;
    }
header .main-header.provider,
header .main-header.patient {
    font-size: 13px;
    }
header .nav li.hasSubmenus .sub .nav a {
    font-size: 13px;
    }
header .site-main-header .nav-container .main-header.provider ul.nav li {
    margin-left: 36px;
    }
header .site-main-header .nav-container .main-header.patient ul.nav li {
    margin-left: 28px;
    }
header .main-header .nav li.button a {
    padding: 12px 10px;
    }
header .top-header.web {
    font-size: 12px;
    }
header .main-header.web {
    font-size: 13px;
    }
header .site-main-header .wrapper.web {
    padding: 0 8px;
    }
header .top-header ul.nav li {
    margin: 0 0 0 20px;
    }
}

@media all and (max-width: 1024px) {
/* Mobile nav */
/* QA-004 (2026-08-11): the button was 26x26 — the only control that opens navigation on
     a phone, and well under the 44px minimum. The box is now 44x44; the glyph stays 26px
     wide and centred inside it, so nothing moves visually. */
.mobilenav {
    position: absolute;
    right: -9px;
    bottom: 0;
    top: 0;
    margin: auto 0;
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: 44px;
    height: 44px;
    cursor: pointer;
    z-index: 1;
    border: 0;
    background: none;
    outline: transparent !important;
    }

/* The bar and its two pseudo-bars are split apart here because they are positioned
     against different boxes: the span against the 44px button, the pseudos against the
     26px span. Sharing one `left`/`width` (as before) only worked while the two were
     the same size. */
.mobilenav > span {
    display: block;
    position: absolute;
    width: 26px;
    height: 4px;
    left: 9px;
    top: 20px;
    background-color: #326eb3;
    -webkit-transition-duration: .25s;
    transition-duration: .25s;
    }
.mobilenav > span:before,
.mobilenav > span:after {
    display: block;
    position: absolute;
    width: 100%;
    height: 4px;
    left: 0;
    background-color: #326eb3;
    -webkit-transition-duration: .25s;
    transition-duration: .25s;
    }
.mobilenav > span:before {
    content: "";
    top: -8px;
    }
.mobilenav > span:after {
    content: "";
    top: 8px;
    }
.mobilenav.on > span {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    }
.mobilenav.on > span:before {
    top: 0;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    }
.mobilenav.on > span:after {
    top: 0;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    }
header .main-header {
    padding: 20px 0;
    }
header .top-header {
    margin-bottom: 25px;
    }
header .site-main-header .nav-container {
    white-space: normal;
    }
header .main-header .nav li:not(.button) {
    line-height: 1.2;
    padding: 10px 0;
    }
header .main-header .nav li.hasSubmenus .sub .nav,
body li.hasSubmenus .sub ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    -webkit-box-shadow: 0 4px 24px 0 rgba(0,0,0,.2);
    box-shadow: 0 4px 24px 0 rgba(0,0,0,.2);
    background-color: #fff;
    padding: 5px 0;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-left: 25px;
    font-size: 15px;
    z-index: 101;
    }
header .main-header .nav {
    position: absolute;
    top: 110px;
    right: -1000px;
    padding: 5px 0;
    width: 230px;
    transition: right .2s;
    display: none;
    background-color: #fff;
    -webkit-transition: right .2s;
    -moz-transition: right .2s;
    -ms-transition: right .2s;
    -o-transition: right .2s;
    }
header .main-header.web .nav a[href="about-us"],
header .main-header.web .nav a[href="support"],
header .main-header.web .nav a[href="/provider-settings"] {
    padding: unset;
    }

/* QA-004 (2026-08-11): 8px of vertical padding put every open-nav link at 34px tall.
     13px takes them to 44px. The panel is absolutely positioned over the page, so the
     extra height costs nothing in layout. */
header .main-header .nav li a,
header .main-header .nav li .no-link {
    padding: 13px 10px !important;
    }
header .main-header .nav li.hasSubmenus .sub .nav {
    display: block;
    position: relative;
    padding: 5px 12px;
    font-size: 15px;
    z-index: 101;
    margin-right: 0;
    margin-left: 0;
    -webkit-box-shadow: unset;
    box-shadow: unset;
    top: 0;
    margin-top: 0;
    background-color: unset;
    }
header .main-header .nav li.three-dots .no-link {
    padding: 6px 20px;
    }
header .main-header .nav.on li.hasSubmenus > a span:before,
header .main-header .nav.on li.hasSubmenus > .no-link span:before {
    font-family: "Font Awesome 5 Free";
    content: "▼";
    font-weight: 900;
    }
header .main-header.web .nav.on {
    right: -8px;
    display: block;
    }
header .main-header.patient .nav.on {
    right: -42px;
    display: block;
    }
header .main-header.provider .nav.on {
    right: -42px;
    display: block;
    }
header .main-header .nav li.hasSubmenus .sub.show,
body li.hasSubmenus .sub.show ul.nav {
    right: 0;
    }
header .site-main-header .nav-container .main-header ul.nav > li {
    display: block;
    }
header .site-main-header .nav-container .main-header ul.nav > li:not(.button) {
    margin-left: 0;
    text-align: left;
    padding: 5px 10px;
    text-transform: uppercase;
    }
header .site-main-header .nav-container .main-header ul.nav > li.button {
    text-align: left;
    margin-left: 18px;
    }
header .top-header {
    display: none;
    }
header .main-header ul.nav li.only-mobile.main-header-moved-above,
header .site-main-header .nav-container .main-header ul.nav > li.only-mobile {
    display: block;
    }
header .site-main-header .nav-container .main-header ul.nav > li.icon.main-header-moved-below {
    display: none;
    }
header .main-header .nav {
    top: 67px;
    }
header.loggedin .desktop-only,
header.loggedout .desktop-only {
    display: none !important;
    }
header .nav li.hasSubmenus:after {
    content: unset;
    }
header .main-header .nav li.hasSubmenus {
    padding-bottom: 0;
    }
header .site-main-header .nav-container .main-header.web ul.nav > li:not(.button) {
    margin-left: 0;
    }
}

@media all and (max-width: 900px) {
h1,
.text-heading-h1 {
    font-size: 36px !important;
    }
h2:not(.time-appt) {
    font-size: 30px !important;
    }
h3 {
    font-size: 26px !important;
    }
h4 {
    font-size: 22px !important;
    }
h5 {
    font-size: 18px !important;
    }
.hero h1 {
    width: unset;
    }
header .logo-container {
    padding: 10px 0;
    }
footer .footer-section.top .left-side {
    padding: 25px 0 0;
    }
footer .footer-section.top .left-side .logo-container {
    padding: 10px 0;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
footer .footer-section.top .split > .left-side,
footer .footer-section.top .split > .center-side,
footer .footer-section.top .split > .right-side {
    width: 100%;
    }
footer .footer-section.top .left-side .logo-container a img {
    width: 100%;
    height: auto;
    }
footer .footer-section.top .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
footer .footer-section.top .center-side,
footer .footer-section.top .right-side {
    padding: 20px 0;
    }
footer .footer-section.top .center-side {
    padding: 0 0 0 20%;
    }
footer .footer-section.top .right-side ul.nav {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
footer .footer-section.top .right-side .icon {
    padding-right: 0;
    }
footer .footer-section.top .right-side .icon-logo img {
    min-width: 100px;
    max-width: 180px;
    }
footer .footer-section.top .social {
    text-align: center;
    }
footer .footer-section.top .social a:first-of-type {
    margin-left: 0;
    }
footer .footer-section.top .social {
    padding: 10px 0;
    }
.hero .inner {
    width: 80%;
    }
.join-our-network .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
    }
.join-our-network .split > * {
    width: 100%;
    margin: 10px 0;
    }
li.fact {
    padding: 9px 14px 0 60px;
    }
.provider-appt-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.provider-appt-container .provider-container {
    padding: 0 0 30px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    width: 100%;
    }
.provider-appt-container .appt-details {
    width: 100%;
    }
.info-message {
    text-align: center;
    }
.appt-details .card {
    margin: 20px auto;
    }
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container.scroll > .faux-select {
    margin: 5px 0 5px 0;
    }
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container.scroll > .faux-select {
    margin: 5px 0 5px 0;
    }
form .row.two-column:not(.one-column) {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
form .row.two-column:not(.one-column) > * {
    width: 100%;
    }
form .row.two-column:not(.one-column) div:first-of-type > .custom-select {
    padding: 10px 0 10px 0;
    }
form .row.two-column:not(.one-column) div:last-of-type > .custom-select {
    padding: 10px 0 10px 0;
    }
form .row.two-column:not(.one-column) div:first-of-type > .checkbox-row,
form .row.two-column:not(.one-column) div:last-of-type > .checkbox-row {
    padding: 10px 0 10px 0;
    }
form .filters .row.two-column:not(.one-column) div:first-of-type > .checkbox-row,
form .filters .row.two-column:not(.one-column) div:last-of-type > .checkbox-row {
    padding: 10px 0 10px 120px;
    }
.all-appointments .appointments > *,
.results-container .appointments > * {
    -webkit-flex-basis: -webkit-calc(33% - 20px);
    -webkit-flex-basis: calc(33% - 20px);
    flex-basis: -webkit-calc(33% - 20px);
    flex-basis: calc(33% - 20px);
    }
.talk-to .split .img-container {
    width: 52%;
    padding: 0 10px 0 0;
    }
.talk-to .split .inner-text {
    width: 48%;
    padding: 0 0 0 10px;
    }
.testimonial .split .inner-text p:first-of-type,
.testimonial .split .inner-text p:last-of-type {
    font-size: 1.6em;
    }
.testimonial .split .inner-text .testimonial-stars {
    font-size: 2.1em;
    }
.testimonial .split .inner-text .testimonial-stars > * {
    margin: 20px 8px;
    }
.join-our-network .split form.submit-join-our-network {
    width: 100%;
    }
#chat {
    width: 100%;
    }
#chat_out_container {
    width: 100%;
    }
.twilio h2 {
    width: 100%;
    }
header .site-main-header .nav-container .main-header.provider ul.nav li {
    margin-left: 10px;
    }
header .site-main-header .wrapper.provider {
    padding: 0 15px;
    }
header .site-main-header .wrapper.patient {
    padding: 0 10px;
    }
header .main-header.patient .nav.on {
    right: -10px;
    }
header .main-header.provider .nav.on {
    right: -10px;
    }
}

@media all and (max-width: 767px) {
h1,
.text-heading-h1 {
    font-size: 34px !important;
    }
h2:not(.time-appt) {
    font-size: 28px !important;
    }
h3 {
    font-size: 22px !important;
    }
h4 {
    font-size: 18px !important;
    }
h5 {
    font-size: 16px !important;
    }
.scroll-box .inner-text p,
.subpage-hero .inner {
    font-size: 1.1em;
    }
li.fact {
    font-size: 1.05em;
    }
.fee-banner .price-description {
    font-size: 1.4em;
    }
.scroll-box span.break {
    display: unset;
    }
body.home h2 {
    margin-bottom: 6px;
    }
.fee-banner .outer {
    width: 200px;
    height: 200px;
    }
.fee-banner .circle-text {
    font-size: 4.3em;
    }
.scroll-box .scroll-steps .split .inner-text .step-text-container {
    padding-bottom: 50px;
    }
.my-account .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.form-see-provider .map-container {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    }
.form-see-provider .map-container > * {
    width: -webkit-calc(100% - 30px);
    width: calc(100% - 30px);
    }
.form-see-provider .map-container .map {
    height: 400px;
    }
.form-see-provider .map-results {
    max-width: 450px;
    }
.review-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.review-container > div:first-of-type {
    width: 100%;
    padding-bottom: 10px;
    }
.review-container > div:last-of-type {
    width: 100%;
    }
.appointment-start .appointment-start-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.appointment-start .appointment-start-container .appointment {
    width: 100%;
    padding-right: 0;
    padding-bottom: 25px;
    }
.appointment-start .appointment-start-container .appointment-details {
    padding-left: 0;
    width: 100%;
    }
.family .img-container img {
    height: 180px;
    width: auto;
    }
.testimonial .split .inner-text p:first-of-type,
.testimonial .split .inner-text p:last-of-type {
    font-size: 1.4em;
    }
.testimonial .split .inner-text .testimonial-stars {
    font-size: 1.8em;
    }
.testimonial .split .inner-text .testimonial-stars > * {
    margin: 20px 8px;
    }
.image-container.join-our-network {
    height: 320px;
    }
.how-it-works .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.how-it-works .split .inner-step {
    width: 100%;
    }
.how-it-works .separator {
    margin: 0 20px 20px 20px;
    }
.how-it-works .split .image-container {
    width: 100%;
    max-width: 400px;
    text-align: center;
    }
.how-it-works .split .image-container.bottom {
    margin-bottom: 0;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.how-it-works .gray-with-shape .wrapper .split:before {
    content: unset;
    }
.how-it-works .gray-with-shape:not(.not-after) .wrapper .split:after {
    content: unset;
    }
.tabcontent .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.tabcontent .split .inner {
    padding-bottom: 45px;
    }
.tabcontent .split .inner .row .card {
    width: 50%;
    }
.tabcontent .split .inner .row.one-column .card {
    width: 100%;
    }
.tabcontent.urgent-care .split .image-container,
.tabcontent.chronic-conditions .split .image-container,
.tabcontent.psychiatry .split .image-container {
    width: 100%;
    margin: 10px 0 0;
    padding: 0 10px;
    }
.tabcontent.urgent-care .split .inner,
.tabcontent.chronic-conditions .split .inner,
.tabcontent.psychiatry .split .inner {
    margin: auto;
    max-width: unset;
    }
div#remote-media {
    min-height: 250px;
    }
.devices .devices-container {
    margin-top: 28px;
    }
.twilio .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.twilio .split > div:first-of-type {
    margin-right: 0;
    margin-bottom: 50px;
    }
.twilio .split > div:last-of-type {
    margin-left: 0;
    margin-bottom: 5px;
    }
.tabcontent.urgent-care .split .inner,
.tabcontent.chronic-conditions .split .inner,
.tabcontent.psychiatry .split .inner {
    width: 100%;
    }
table,
table:not(.ui-datepicker-calendar) {
    table-layout: auto;
    }
.provider-appointments .tab {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.provider-appointments .tab .tablinks:first-of-type {
    border-left: unset;
    }
.provider-appointments .tab .tablinks {
    border: unset;
    width: 100%;
    }
.pricing-section .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.content.pricing {
    padding: 0 !important;
    -webkit-flex-basis: 100% !important;
    flex-basis: 100% !important;
    }
.subpage-hero .pricing-statement-wrapper ul:first-of-type {
    padding-right: 5px;
    }
.subpage-hero .pricing-statement-wrapper ul:last-of-type {
    padding-left: 5px;
    }
}

@media all and (max-width: 640px) {
html {
    font-size: 8px;
    }
body {
    font-size: 13px;
    }
h6 {
    font-size: 13px !important;
    }
.wrapper {
    padding: 0 16px;
    }
.hero .inner {
    width: 100%;
    }
header .main-header .nav.on {
    right: -16px;
    }
.seen-on .img-container > * {
    -webkit-flex: 1 1 -webkit-calc(33% - 32px);
    -webkit-flex: 1 1 calc(33% - 32px);
    -ms-flex: 1 1 calc(33% - 32px);
    flex: 1 1 -webkit-calc(33% - 32px);
    flex: 1 1 calc(33% - 32px);
    }
.fee-banner .image-wrapper {
    width: 130px;
    }

/* Steps */
.scroll-box .scroll-steps .split .img-container {
    width: 25%;
    }
.scroll-box .scroll-steps .split .inner-text {
    width: 75%;
    padding: 0 0 0 40px;
    }
.scroll-box .scroll-steps .split .img-container img {
    width: 100%;
    }
.scroll-box .scroll-steps .split .inner-text .step-text-container {
    height: 250px;
    }
.scroll-box .scroll-steps {
    padding-bottom: 20px;
    }
form .row.one-column .height,
form .row.one-column .weight {
    width: 90%;
    min-width: unset;
    max-width: unset;
    }
form .row.one-column div.height input,
form .row.one-column div.weight input {
    width: 60%;
    margin-bottom: 5px;
    }
.terms-service .container.cn p,
.terms-service .container.cn span,
.terms-service .container.cn li,
.privacy-policy .container.cn p,
.privacy-policy .container.cn span,
.privacy-policy .container.cn li,
.consent-terms .container.cn p,
.consent-terms .container.cn span,
.consent-terms .container.cn li {
    font-size: 13px;
    }
.progress-bar {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    text-align: center;
    }
.appt-options-box {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.appt-options-box p,
.appt-options-box h1,
.appt-options-box h2,
.appt-options-box h3,
.appt-options-box h4,
.appt-options-box h5,
.appt-options-box h6 {
    text-align: center;
    }
.btn-group-appt-options-actions {
    margin-left: 0;
    margin-top: 15px;
    }
.radio-group.horizontal .flex-column {
    -webkit-flex-basis: -webkit-calc(50% - 20px);
    -webkit-flex-basis: calc(50% - 20px);
    flex-basis: -webkit-calc(50% - 20px);
    flex-basis: calc(50% - 20px);
    max-width: -webkit-calc(50% - 20px);
    max-width: calc(50% - 20px);
    min-width: 150px;
    }
.patient-dependent .dependent-box .inner-text,
.payments .payment-box .inner-text,
.form-see-provider .patient-box .inner-text {
    width: 40%;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions,
.payments .payment-box .btn-group-payment-actions {
    width: 60%;
    margin: -5px -5px;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions > *,
.payments .payment-box .btn-group-payment-actions > * {
    margin: 5px 5px;
    }
.talk-to .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.talk-to .split .img-container {
    width: 60%;
    padding: 0 0 25px;
    }
.talk-to .split .inner-text {
    width: 100%;
    padding: 0 10px;
    }
.family .img-container img {
    height: 150px;
    width: auto;
    }
.family h2 {
    padding: 50px 0 20px 0;
    }
.family .container .column h3 {
    padding-bottom: 0;
    }
.testimonial .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.testimonial .split .img-container {
    width: 100%;
    padding: 0 60px;
    text-align: center;
    }
.testimonial .split .inner-text {
    width: 100%;
    padding: 20px 10px 0 10px;
    }
.testimonial .split .inner-text .testimonial-stars > * {
    margin: 20px 8px;
    }
.testimonial .split .inner-text .testimonial-stars {
    padding: 0;
    }
.image-container.join-our-network {
    height: 240px;
    }
.about-us .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.about-us .content .split .image-container {
    margin-bottom: 0;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    width: 100%;
    max-width: 220px;
    min-width: unset;
    }
.about-us .content .split .inner {
    width: 100%;
    padding-left: 0;
    }
.about-us .main-content .split > div:first-of-type {
    padding-right: 0;
    width: 100%;
    }
.about-us .main-content .split > div:last-of-type {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    width: 100%;
    }

/* .what-we-treat .tab {
        flex-direction: column;
    } */
.what-we-treat .tab .tablinks {
    width: 100%;
    }
.what-we-treat .tab .tablinks {
    border: unset;
    }
.what-we-treat {
    padding: 0 !important;
    }
.what-we-treat h1 {
    padding: 20px 0 !important;
    }
.what-we-treat .tab {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    }
.what-we-treat .tab > * {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 5px !important;
    padding-right: 5px !important;
    }
.what-we-treat .tab button {
    height: 60px;
    }
.what-we-treat .tab button img {
    height: 35px;
    }
.what-we-treat .tab button span {
    padding-left: 0;
    font-size: 14px;
    }
.what-we-treat .split {
    padding-top: 0;
    }
div#local-media {
    left: 0;
    bottom: 0;
    }
.devices .devices-container {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.devices .devices-container > div {
    width: 50%;
    }
.provider-settings .container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.provider-settings .container > * {
    width: 100%;
    text-align: center;
    }
.provider-home .split.stars {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.provider-home .split .right.blue {
    padding: 0 0 20px;
    }
.provider-home .split.stars > * {
    width: 100%;
    text-align: left;
    }
.provider-home .split.stars h4 {
    padding-bottom: 5px;
    }
.provider-home .provider-reviews-notifications > .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.provider-home .provider-reviews-notifications .split > div:last-of-type {
    padding-left: 0;
    padding-bottom: 20px;
    }
.provider-home .provider-reviews-notifications .split > * {
    width: 100%;
    }
.notes-inline {
    padding: 10px 5px;
    }

/*.notes-inline .notes-header {
    flex-direction: column;
    align-items: center;
  }*/
.provider-service-details .split {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    }
.provider-service-details .split > * {
    width: 100%;
    }
.provider-service-details .split > div:first-of-type {
    margin-top: 20px;
    margin-right: 0;
    }
.provider-service-details .split > div:last-of-type {
    margin-left: 0;
    }
.subpage-hero .membership-pricing-subpage .split > .image-container {
    display: none;
    }
.membership-pricing {
    padding: 0;
    }
.membership-pricing .membership-image {
    display: block;
    margin-top: 20px;
    }
.membership-pricing .membership-image img {
    width: 100%;
    }
.membership-pricing .membership-cost-container {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.membership-pricing .membership-cost-container .membership-cost {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    }
.membership-pricing .membership-cost-container .membership-cost:first-of-type {
    margin-right: 0;
    }
}

@media all and (max-width: 500px) {
/*body {
    font-size: 12px;
  }*/
.home-hero__cta-primary {
    display: none;
    }
.mobile-sticky-cta {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    width: 100%;
    margin: 0;
    padding: 12px 16px -webkit-calc(12px + env(safe-area-inset-bottom,0));
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom,0));
    background: #1b3d70;
    -webkit-box-shadow: 0 -4px 20px 0 rgba(0,0,0,.18);
    box-shadow: 0 -4px 20px 0 rgba(0,0,0,.18);
    text-decoration: none;
    }
.mobile-sticky-cta__icon {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex: 0 0 40px;
    -ms-flex: 0 0 40px;
    flex: 0 0 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 17px;
    }
.mobile-sticky-cta__text {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    text-align: left;
    }
.mobile-sticky-cta__text strong {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
    }
.mobile-sticky-cta__text span {
    font-size: 11px;
    line-height: 1.35;
    color: rgba(255,255,255,.65);
    }
.mobile-sticky-cta__btn {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin: 0;
    padding: 12px 14px;
    font-size: 12px;
    white-space: nowrap;
    }
footer.has-mobile-cta {
    padding-bottom: 112px;
    }

/* Mobile UX pass (DRB-158) — hide whole modules or parts of modules on
     small screens using each module's own root/part class. Add one rule
     per module below as they're called out. */
/* DRB-174 reverses DRB-158's hiding of `body.home .home-why` here. The client asked
     specifically for the trust badges to appear on mobile ("making sure it appears on
     mobile also"), so they are deliberately shown below 500px now. The max-width:480px
     rules in the .home-why block lay the five badges out 2-up so the strip costs about
     200px of scroll instead of the ~383px a single column took. */
.what-we-treat .tab-card__desc {
    display: none;
    }
.what-we-treat .wrapper.seo-content {
    display: none;
    }
.how-it-works.hiw .wrapper.seo-content {
    display: none;
    }

/* DRB-162: the .home-cta band is what supplies the 48px of breathing room above the
     footer at wider widths, but it's hidden below 500px (DRB-159 replaced it with the
     sticky bar). That left the last block on these three pages sitting on — or nearly
     on — the footer's top border: How It Works 0px, What We Treat 30px, Pricing 10px.
     Restore the same 48px each page gets above 500px.

     Scoping notes: `.main > .faq-section--modern` is Pricing's copy only — Support's is
     nested inside section.support-faqs-section. `:last-child` is not usable here, since
     the hidden .home-cta / .loader / audio nodes all follow as siblings. */
.how-it-works.hiw {
    padding-bottom: 48px;
    }
.main > .faq-section--modern {
    padding-bottom: 48px;
    }
.what-we-treat section.home-why {
    padding-bottom: 48px;
    }
section.pricing-hero .pricing-includes,
section.pricing-hero .pricing-doc {
    display: none;
    }
section.pricing-hero {
    padding-top: 0 !important;
    }

/* DRB-159: the sticky CTA bar now carries this exact content — hide the
     inline "Ready to feel better?" band when the bar is present */
body:has(.mobile-sticky-cta) .home-cta {
    display: none;
    }
.faq-section--modern .wrapper.seo-content {
    display: none;
    }

/* DRB-161: the membership hero photo used to be hidden here, which is why the client
     reported the page as having no hero image on mobile. It now stays beside the copy
     via the positioned .mem-hero__photo in the membership block below. */
/* DRB-164: .sup-hero used to be display:none here, so phones got no support hero at
     all. It now stays visible with the photo beside the copy, like .hiw-hero/.mem-hero. */
.home-hero__price {
    -webkit-flex-direction: column !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    text-align: center;
    gap: 6px !important;
    }
.home-hero__price-text {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.home-hero__card-badge,
.home-hero__card-list {
    display: none !important;
    }

/* DRB-174: this used to be `display: none !important` — the client called it out
     directly ("Also the badges need to appear on mobile right now it does not"). Shown
     now, wrapping to a 2-up grid so five items fit a phone without a horizontal scroll.
     The hairline dividers stay off below 1150px (see the .wwt-trust__item rules), which
     is what makes a wrapped layout read cleanly here. */
/* DRB-174 (Aug 11): the 2-up grid this used to force is gone. With the labels split
     into two short lines the five facts fit one row at 390px, which is how every one of
     the client's reference shots shows them. The icon moves above the label so each
     column only has to be as wide as its longest word. */
.what-we-treat .wwt-trust {
    gap: 4px;
    padding: 14px 4px;
    }
.what-we-treat .wwt-trust__item {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: center;
    gap: 6px;
    font-size: 10px;
    padding: 0;
    min-width: 0;
    }
.what-we-treat .wwt-trust__item i {
    font-size: 15px;
    }
button.btn,
.btn-group-multiple-action {
    font-size: .8em !important;
    }
.form-see-provider .btn-group-multiple-actions > * {
    font-size: .8em !important;
    }
h1,
.text-heading-h1 {
    font-size: 20px !important;
    }
h2:not(.time-appt) {
    font-size: 18px !important;
    }
h3 {
    font-size: 16px !important;
    }
h4 {
    font-size: 15px !important;
    }
h5 {
    font-size: 14px !important;
    }
h6 {
    font-size: 13px !important;
    }
.hero h1 {
    margin-top: 5px;
    font-size: 34px !important;
    }
.fee-banner .inner-text {
    font-size: 1.25em;
    }
footer .footer-section.top .center-side {
    padding-left: 10px;
    }
.btn-group .btn {
    padding: 18px 10px;
    }
.fee-banner .outer {
    width: 100px;
    height: 100px;
    margin: auto 0;
    }
.fee-banner .circle-text {
    font-size: 2.4em;
    }
.fee-banner h2 {
    padding-bottom: 0;
    }
.fee-banner .price-description {
    font-size: 1.2em;
    padding: 20px 0 20px 15px;
    text-align: left;
    }
.fee-banner .price {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.fee-banner .split > * {
    width: 100%;
    padding: 0;
    }
.seen-on .img-container > * {
    margin: 10px 15px;
    -webkit-flex: 1 1 -webkit-calc(33% - 40px);
    -webkit-flex: 1 1 calc(33% - 40px);
    -ms-flex: 1 1 calc(33% - 40px);
    flex: 1 1 -webkit-calc(33% - 40px);
    flex: 1 1 calc(33% - 40px);
    }
.seen-on .img-container {
    margin: 0 -15px;
    }
.subpage-hero .inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.subpage-hero .inner .content,
.subpage-hero .inner .subcontent {
    width: 100%;
    }
.subpage-hero .inner .content {
    padding: 0;
    }
.pricing .price-description {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
    }
.pricing .price-description > * {
    margin: 0;
    padding: 10px 0;
    }
.pricing-statement-wrapper {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.pricing-statement-wrapper > ul {
    padding: 0 !important;
    margin-left: -webkit-calc(50vw - 100px) !important;
    margin-left: calc(50vw - 100px) !important;
    }
.pricing-statement-wrapper > ul:first-of-type {
    padding-top: 10px !important;
    }
.pricing-statement-wrapper > ul:last-of-type {
    padding-bottom: 10px !important;
    }
.subpage-hero .inner .inner-text.pricing:after {
    height: 120px;
    }
.subpage-hero .pricing .subcontent .pricing-trust-badges {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.subpage-hero .pricing-trust-badges-row .pricing-trust-badges {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-left: 10px;
    padding-right: 10px;
    }
form .row.one-column > div {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
form .row.one-column div > label:not(.custom-dropdown):not(.lbl-top),
form.half-width .row.one-column div > label:not(.custom-dropdown),
form.big-lbl .row.one-column div label:not(.custom-dropdown):not(.lbl-top) {
    width: 100%;
    padding-bottom: 5px;
    }
form .row.one-column > div > input:not(.input-full-width),
form .row.one-column > div > div,
form .row.one-column .custom-select,
form .row.one-column .radio-group,
form .row.one-column .column-inputs,
form.half-width .row.one-column div input,
form.half-width .row.one-column .custom-select,
form.big-lbl .row.one-column > div > input,
form.big-lbl .row.one-column > div > input:not(.input-full-width),
form.big-lbl .row.one-column > div > div,
form.big-lbl .row.one-column .custom-select,
form.big-lbl .row.one-column .radio-group,
form.big-lbl .row.one-column .column-inputs {
    width: 100%;
    }
form .btn-group {
    text-align: center;
    padding-bottom: 10px;
    }
form.full-width,
form.half-width {
    padding: 20px 15px;
    }
.join-our-network .split {
    padding-bottom: 30px;
    }
.why-join .first-paragraph .image-wrapper {
    width: 40%;
    margin: 0 0 15px;
    }
.why-join .first-paragraph .inner-text {
    width: 100%;
    }
.why-join .first-paragraph {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.pricing .outer {
    width: 200px;
    height: 200px;
    }
.pricing .circle-text {
    font-size: 5em;
    }
.my-account .split .appointments > * {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    }
.scroll-box .scroll-steps .split .inner-text .step-text-container {
    height: 240px;
    }
.appointments-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.appointments-container h1,
.appointments-container h2,
.appointments-container h3,
.appointments-container h4,
.appointments-container h5,
.appointments-container h6 {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    }
.appointments-container .all-appointments-link {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    text-align: left;
    padding-bottom: 25px;
    }
.appointments-container .appointments {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    }
.notifications-container {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.notifications-container h1,
.notifications-container h2,
.notifications-container h3,
.notifications-container h4,
.notifications-container h5,
.notifications-container h6 {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    }
.notifications-container .past-notifications {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    padding-bottom: 25px;
    }
.notifications-container .notifications {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    }
.my-account .my-account-actions-container,
.provider-settings .my-account-actions-container {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 10px;
    }
.button.button-icon {
    min-width: 250px;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions > * {
    padding: 12px 18px;
    width: 91px;
    }
.payments .payment-box .btn-group-payment-actions > * {
    padding: 12px 18px;
    max-width: 170px;
    }
.provider-notes .split .pdf-result-notes {
    height: 450px;
    }
.form-see-provider .search-bar label {
    width: 100%;
    display: block;
    }
.form-see-provider .search-bar input {
    width: 120px;
    }
.form-see-provider .map-results .container-text {
    width: -webkit-calc(100% - 70px);
    width: calc(100% - 70px);
    }
.form-see-provider .map-results .text-icon {
    width: 70px;
    }
h2.time-appt {
    font-size: 3em;
    }
.reveal-if-active-horizontal .row.one-column.lbl-top input[type="date"] {
    width: 80%;
    }
.surgery-inputs .delete {
    right: 10px;
    }
.loader-gif-section {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.loader-gif-section div:first-of-type {
    padding: 0;
    }
.loader-gif-section div:last-of-type {
    padding-top: 15px;
    text-align: center;
    }
.all-appointments .appointments > *,
.results-container .appointments > * {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    }
.radio-group.horizontal .flex-column {
    -webkit-flex-basis: -webkit-calc(50% - 20px);
    -webkit-flex-basis: calc(50% - 20px);
    flex-basis: -webkit-calc(50% - 20px);
    flex-basis: calc(50% - 20px);
    max-width: -webkit-calc(50% - 20px);
    max-width: calc(50% - 20px);
    min-width: 130px;
    margin: 5px;
    }
.radio-group.horizontal.has-two-options > .flex-column > input[type="radio"]:not(.rating-input) + label {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-left: 10px;
    }
.radio-group.horizontal.has-two-options .flex-column {
    -webkit-flex-basis: 80px;
    flex-basis: 80px;
    min-width: 80px;
    }
.progress-bar .progress-bar-icons i {
    font-size: 26px;
    }
.patient-dependent .dependent-box .inner-text,
.payments .payment-box .inner-text,
.form-see-provider .patient-box .inner-text {
    width: -webkit-calc(100% - 95px);
    width: calc(100% - 95px);
    }
.patient-dependent .dependent-box .btn-group-dependent-actions,
.payments .payment-box .btn-group-payment-actions {
    min-width: 95px;
    margin-left: 10px;
    }
.talk-to .split .img-container {
    width: 100%;
    }
.talk-to .split .inner-text {
    width: 100%;
    padding: 0;
    }
.family .img-container img {
    height: 120px;
    width: auto;
    }
.scroll-box .scroll-box-map {
    padding: 40px 0;
    }
.scroll-box .scroll-box-map .split .inner-text {
    padding: 10px 0 0;
    }
.testimonial {
    padding: 40px 0;
    }
.image-container.join-our-network {
    height: 226px;
    }
div#remote-media {
    min-height: 150px;
    }
.tabcontent.chronic-conditions .split .inner,
.tabcontent.psychiatry .split .inner {
    width: 100%;
    }
.tabcontent .split .inner .row {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.provider-home .earnings-container div {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.provider-home .earnings-container a {
    padding-top: 15px;
    padding-left: 0;
    }
.fancybox-content {
    padding: 44px 20px;
    }
.fancybox-slide {
    padding: 44px 10px;
    }
.notes-inline .notes-header .logo-container {
    height: 72px;
    width: 67px;
    min-width: 67px;
    overflow: hidden;
    }
.notes-inline .notes-header .logo-container img {
    height: 100%;
    width: unset;
    }
.talk-to .categories > * {
    padding-left: 2px;
    padding-right: 2px;
    width: 85px;
    }
}

@media all and (max-width: 413px) {
footer .footer-section.top .center-side .nav {
    height: auto;
    }
.scroll-box .scroll-steps .split .inner-text .step-text-container {
    height: 260px;
    }
form .row.two-column:not(.one-column) > * {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
form .row.two-column:not(.one-column) div:first-of-type > input[type=email],
form .row.two-column:not(.one-column) div:first-of-type > input[type=number],
form .row.two-column:not(.one-column) div:first-of-type > input[type=password],
form .row.two-column:not(.one-column) div:first-of-type > input[type=tel],
form .row.two-column:not(.one-column) div:first-of-type > input[type=text],
form .row.two-column:not(.one-column) div:first-of-type > input[type=search],
form .row.two-column:not(.one-column) div:first-of-type > input[type=url],
form .row.two-column:not(.one-column) div:first-of-type > input[type=date],
form .row.two-column:not(.one-column) div:first-of-type > input[type="time"],
form .row.two-column:not(.one-column) div:first-of-type > input[type="datetime-local"],
form .row.two-column:not(.one-column) div:first-of-type > input[type="month"],
form .row.two-column:not(.one-column) div:first-of-type > textarea,
form .row.two-column:not(.one-column) div:first-of-type > select,
form .row.two-column:not(.one-column) div:first-of-type > .select-container > select,
form .row.two-column:not(.one-column) div:first-of-type > .select-container.scroll > .faux-select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:first-of-type > .select-container.scroll > .faux-select,
form .row.two-column:not(.one-column) div:first-of-type > .custom-select {
    width: 100%;
    }
form .row.two-column:not(.one-column) div:last-of-type > input[type=email],
form .row.two-column:not(.one-column) div:last-of-type > input[type=number],
form .row.two-column:not(.one-column) div:last-of-type > input[type=password],
form .row.two-column:not(.one-column) div:last-of-type > input[type=tel],
form .row.two-column:not(.one-column) div:last-of-type > input[type=text],
form .row.two-column:not(.one-column) div:last-of-type > input[type=search],
form .row.two-column:not(.one-column) div:last-of-type > input[type=url],
form .row.two-column:not(.one-column) div:last-of-type > input[type=date],
form .row.two-column:not(.one-column) div:last-of-type > input[type="time"],
form .row.two-column:not(.one-column) div:last-of-type > input[type="datetime-local"],
form .row.two-column:not(.one-column) div:last-of-type > input[type="month"],
form .row.two-column:not(.one-column) div:last-of-type > textarea,
form .row.two-column:not(.one-column) div:last-of-type > select,
form .row.two-column:not(.one-column) div:last-of-type > .select-container > select,
form .row.two-column:not(.one-column) div:last-of-type > .select-container.scroll > .faux-select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=email],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=number],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=password],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=tel],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=text],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=search],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=url],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type=date],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="time"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="datetime-local"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > input[type="month"],
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > textarea,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container > select,
form.big-lbl .row.two-column:not(.one-column) div:last-of-type > .select-container.scroll > .faux-select,
form .row.two-column:not(.one-column) div:last-of-type > .custom-select {
    width: 100%;
    }
form .row.two-column:not(.one-column) div > label:not(.custom-dropdown) {
    width: 100%;
    }
form .row.two-column:not(.one-column) div:first-of-type > .checkbox-row,
form .row.two-column:not(.one-column) div:last-of-type > .checkbox-row {
    padding: 10px 0 15px 0;
    }
.form-container {
    padding: 20px 10px;
    margin-top: 30px;
    }
.form-see-provider .patient-box,
.form-medical-history-selector .patient-box {
    width: 100%;
    min-width: 240px;
    }
.form-see-provider .split > *,
.form-medical-history-selector .split > * {
    width: -webkit-calc(100% - 30px);
    width: calc(100% - 30px);
    }
.family h2 {
    padding: 30px 0 10px 0;
    }
form.big-lbl .row.two-column:not(.one-column) div > label:not(.custom-dropdown),
form.big-lbl .row.two-column:not(.one-column) div > label:not(.custom-dropdown):not(.checkbox-row) {
    width: 100%;
    min-width: 160px;
    }
.image-container.join-our-network {
    height: 180px;
    }
.support .support-container span div {
    display: block;
    }
.tabcontent .split .inner .row {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.tabcontent .split .inner .row .card {
    width: 100%;
    margin: 5px 0;
    }
.tabcontent.chronic-conditions .split .inner,
.tabcontent.psychiatry .split .inner {
    width: 100%;
    }
.tabcontent.urgent-care .split .inner .row:first-of-type .card:first-of-type,
.tabcontent.chronic-conditions .split .inner .row .card,
.tabcontent.psychiatry .split .inner .row .card {
    width: 100%;
    margin: 10px 0 5px 0;
    }

/* 9/1/21 Do not center logo on small screen
  /* .provider-header-split {
    flex-direction: column-reverse;
    align-items: center;
  } */
/*
  .notes-main-content .two-column-notes {
    flex-direction: column;
  }
  */
.notes-main-content .two-column-notes > * {
    margin-top: 2px;
    margin-bottom: 2px;
    }
.notes-main-content .summary-main-content > * {
    padding: 0 5px;
    line-height: 1.4;
    }
#prescription-modal .split-start {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
    }
#prescription-modal .split-start > * {
    width: 100%;
    margin: 2px 0;
    }
#prescription-modal #select-doses-options + .selectized .item {
    max-width: 100%;
    }
#prescription-modal.fancybox-content {
    min-height: 550px;
    }
}

@media all and (max-width: 360px) {
header .logo img {
    max-width: -webkit-calc(100% - 30px);
    max-width: calc(100% - 30px);
    }
.scroll-box .scroll-steps .split .inner-text .step-text-container {
    height: 310px;
    }
.payments-container .payment-box {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.patient-dependent .dependent-box .inner-text,
.payments .payment-box .inner-text {
    padding-right: 0;
    padding-bottom: 10px;
    }
.patient-dependent .dependent-box .btn-group-dependent-actions,
.payments .payment-box .btn-group-payment-actions {
    text-align: center;
    width: 145px;
    }
.radio-group.horizontal .flex-column {
    width: 100%;
    max-width: 100%;
    }
.progress-bar .progress-bar-icons i {
    font-size: 18px;
    }
.payments .payment-box.center .inner-text {
    width: 100%;
    text-align: center;
    }
.family .img-container img {
    height: 100px;
    width: auto;
    }
.image-container.join-our-network {
    height: 140px;
    }
}

#js-incompatible-device-alert {
    margin-bottom: 2rem;
    }
#js-incompatible-device-alert #incompatible-message {
    background: #fa8231;
    border-radius: 6px;
    border: 1px solid #adc8e2;
    padding: 10px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 400px;
    margin: 0 auto 0 auto;
    }
#js-incompatible-device-alert.intrusive {
    position: fixed;
    z-index: 9999;
    top: 2rem;
    left: 2rem;
    right: 2rem;
    bottom: 2rem;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
#js-incompatible-device-alert.hidden {
    display: none !important;
    }
#js-incompatible-device-alert ul {
    list-style-type: disc;
    margin: 8px;
    padding: 8px;
    }
#js-incompatible-device-alert button {
    margin-top: 8px;
    }
input#dob {
    background-color: white;
    color: black;
    }
.insurance .input-two-cols {
    margin-top: 2rem;
    display: grid;
    grid-template-columns: 3fr 5fr 3fr 5fr;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    row-gap: 1rem;
    }
.insurance .input-two-cols label {
    text-align: right;
    padding-right: 12px;
    }
.insurance .input-two-cols .span-three {
    grid-column-end: span 3;
    }
.insurance input,
.insurance textarea,
.insurance select {
    width: 100%;
    }
@media (max-width: 950px) {
.insurance .input-two-cols {
    grid-template-columns: 1fr 4fr;
    }
.insurance .input-two-cols .span-three {
    grid-column-end: auto;
    }
}

.service-line-container {
    margin: 2rem 1rem;
    border: 1px solid #333;
    padding: 1rem 2rem;
    background: white;
    border-radius: 8px;
    }
.service-line-container input,
.service-line-container textarea,
.service-line-container .custom-select {
    width: 100% !important;
    }
.service-line-container .diagnosis-code-pointer-inputs {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 20px;
    width: 100%;
    }
.service-line-container .diagnosis-code-pointer-inputs input {
    max-width: 200px;
    padding-left: 10px;
    padding-right: 10px;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    }
.service-line-container .actions {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: end;
    justify-content: end;
    }
.label-help {
    font-style: italic;
    font-size: .9em;
    color: #797979;
    }
.sitemap {
    padding: 20px 60px;
    }
.seo-content {
    padding-top: 20px;
    padding-bottom: 20px;
    }
.seo-content h5 {
    color: #145da7;
    font-weight: 700;
    margin-bottom: 14px;
    }
.seo-content p {
    margin-bottom: 20px;
    font-size: 15px;
    line-height: 1.65;
    }
.condition-card-footer {
    margin-top: auto;
    padding-top: 10px;
    font-size: 13px;
    color: #326eb3;
    font-weight: 700;
    }

/* DRB-174: the price line now carries three segments ($79 / Members $59 / Insurance
   Accepted), which is too long for a ~240px card. Each segment is nowrap so a break can
   only happen at a separator — "Members $59" never splits across two lines, and the
   middot stays at the end of the line it broke after rather than orphaning onto the next. */
.condition-card-footer__seg {
    white-space: nowrap;
    }
.what-we-treat .tabcontent .split .inner .row .card {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.what-we-treat-membership-upsell {
    margin: 20px 0 10px;
    padding: 16px;
    background: #eff4f8;
    border-radius: 4px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    }
.how-it-works .step-pricing-line {
    margin-top: 10px;
    color: #326eb3;
    font-weight: 700;
    }
.about-providers-section,
.about-reviews-section {
    margin: 20px 0 36px;
    }
.about-provider-grid,
.about-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 16px;
    margin-top: 12px;
    }
.about-provider-card,
.about-review-card {
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 8px;
    padding: 14px;
    }
.about-provider-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: 4px;
    margin-bottom: 10px;
    }
.about-provider-card h4 {
    margin: 0 0 4px;
    font-size: 16px !important;
    }
.about-reviews-summary {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    margin-top: 2px;
    margin-bottom: 6px;
    }
.about-reviews-summary .about-reviews-rating {
    font-weight: 700;
    color: #326eb3;
    }
.about-reviews-summary .about-reviews-stars {
    color: #f6b31a;
    font-size: 16px;
    letter-spacing: 1px;
    }
.about-review-card {
    position: relative;
    border-color: #c6d7ea;
    -webkit-box-shadow: 0 8px 18px rgba(31,66,106,.08);
    box-shadow: 0 8px 18px rgba(31,66,106,.08);
    }
.about-review-stars {
    color: #f6b31a;
    font-size: 15px;
    letter-spacing: 1px;
    font-weight: 800;
    margin-bottom: 8px;
    }
.about-review-card p {
    margin: 0;
    font-size: 18px;
    line-height: 1.5;
    color: #1f2f46;
    }
.support-conversion-block {
    background: #eff4f8;
    border: 1px solid #d0dbe5;
    border-radius: 10px;
    padding: 18px 20px;
    margin-bottom: 18px;
    }
.support-conversion-block {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    background: -webkit-linear-gradient(145deg,#eff4f9 0%,#e4edf7 100%);
    background: linear-gradient(145deg,#eff4f9 0%,#e4edf7 100%);
    border-color: #c5d5e7;
    -webkit-box-shadow: 0 10px 24px rgba(28,70,119,.1);
    box-shadow: 0 10px 24px rgba(28,70,119,.1);
    }
.support-conversion-content h3 {
    margin: 2px 0 6px;
    }
.support-conversion-eyebrow {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 12px;
    font-weight: 800;
    color: #326eb3;
    }
.support-conversion-body {
    margin: 0;
    color: #2a3a4f;
    }
.support-conversion-actions {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    }
.support-conversion-link {
    color: #245f9d !important;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
    }
.support-conversion-price {
    min-width: 165px;
    text-align: center;
    background: #326eb3;
    color: #fff;
    border-radius: 8px;
    padding: 14px 12px;
    }
.support-conversion-price .price-dollar {
    display: block;
    font-size: 34px;
    line-height: 1;
    font-weight: 800;
    }
.support-conversion-price .price-caption {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    font-weight: 700;
    opacity: .95;
    }
@media all and (max-width: 900px) {
.about-provider-grid,
.about-reviews-grid {
    grid-template-columns: 1fr;
    }
.what-we-treat-membership-upsell {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.support-conversion-block {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.support-conversion-price {
    width: 100%;
    }
}

@media (min-width: 600px) {
.seo-content h5 {
    margin-left: 80px;
    }
}

.delete-account-btn {
    color: #eb3b5a;
    }
.patient-edit-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    background: none;
    cursor: pointer;
    color: #145da7;
    text-decoration: underline;
    font-size: initial;
    }
.remaining-characters-hint {
    display: inline-block;
    margin-left: 8px;
    color: #9e9e9e;
    }
.remaining-characters-hint.warn {
    color: indianred;
    }
.medication-doses-container ol li {
    margin-bottom: 10px;
    }
.medication-doses-container ol li input {
    width: 100%;
    }

/* DB SQL DEBUG */
.dbdebug {
    border: 1px solid #000;
    border-bottom: 0;
    background: #fff;
    margin-bottom: 15px;
    }
.dbdebug .title {
    border-bottom: 1px solid #000;
    padding: 10px;
    font-size: 18px;
    font-weight: bold;
    }
.dbdebug.haserror .title {
    color: red;
    }
.dbdebug .line {
    border-bottom: 1px solid #666;
    }
.dbdebug .line.end {
    border-bottom: 1px solid #000;
    }
.dbdebug .line .whatis {
    display: inline-block;
    width: 50px;
    vertical-align: top;
    text-align: center;
    padding-top: 12px;
    color: blue;
    font-size: 14px;
    }
.dbdebug .line .display {
    display: inline-block;
    width: -webkit-calc(100% - 50px);
    width: calc(100% - 50px);
    vertical-align: top;
    padding: 10px;
    }
.dbdebug .line .display.sql {
    padding-left: 30px;
    }
.dbdebug .line .display.err {
    color: red;
    }

/* DB SQL DEBUG */
/* ===== Global footer (DRB-174 redesign, 2026-08-19; supersedes the 2026-06-15 3-column footer) =====
   Brand + 4 sitemap columns / trust strip / membership disclosure / store badges / legal row.
   Markup is in template.php ($foot). */
footer.loggedout,
footer.loggedin {
    background: #fff;
    color: #373435;
    border-top: 1px solid #d0dbe5;
    }
footer .footer-section.top {
    padding: 44px 0 32px;
    }
footer .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 48px;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-bottom: 32px;
    border-bottom: 1px solid #d0dbe5;
    }
footer .footer-brand {
    -webkit-flex: 0 0 300px;
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
    }
footer .footer-brand .logo-container img {
    width: 100%;
    max-width: 300px;
    height: auto;
    display: block;
    }
footer .footer-tagline {
    margin: 6px 0 0 92px;
    color: #677174;
    font-size: 14px;
    line-height: 1.5;
    }
footer .footer-brand .social-icons {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 14px;
    margin-top: 22px;
    }
footer .social-icons a {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #326eb3;
    color: #fff !important;
    text-decoration: none;
    -webkit-transition: filter .15s ease;
    transition: filter .15s ease;
    }
footer .social-icons a:hover {
    -webkit-filter: brightness(.92);
    filter: brightness(.92);
    }
footer .social-icons a i {
    font-size: 17px;
    line-height: 1;
    }

/* Sitemap columns */
footer .footer-menu {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-width: 0;
    }
footer .footer-cols,
footer .footer-cols ul {
    list-style: none;
    margin: 0;
    padding: 0;
    }
footer .footer-cols {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
footer .footer-col {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    padding: 0 24px;
    border-left: 1px solid #d0dbe5;
    }
footer .footer-col:first-child {
    border-left: 0;
    padding-left: 0;
    }
footer .footer-col-heading {
    display: block;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 14px;
    font-weight: 700;
    color: #326eb3;
    margin-bottom: 14px;
    }
footer .footer-col ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
    }
footer .footer-col a,
footer .footer-col a:link,
footer .footer-col a:visited {
    color: #373435;
    text-decoration: none;
    font-size: 15px;
    line-height: 1.3;
    display: inline-block;
    }
footer .footer-col a:hover {
    color: #326eb3;
    }

/* Trust strip */
footer .footer-trust {
    list-style: none;
    margin: 0;
    padding: 24px 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    border-bottom: 0;
    }
footer .footer-trust__item {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 14px;
    padding: 0 24px;
    border-left: 1px solid #d0dbe5;
    font-size: 13px;
    line-height: 1.45;
    color: #373435;
    }
footer .footer-trust__item:first-child {
    border-left: 0;
    padding-left: 0;
    }
footer .footer-trust__item i {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 26px;
    line-height: 1;
    color: #326eb3;
    margin-top: 2px;
    }
footer .footer-trust__item strong {
    display: block;
    color: #326eb3;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 2px;
    }
footer .footer-trust__short {
    display: none;
    }

/* Membership disclosure */
footer .footer-disclosure {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 16px;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    background: #eef3fb;
    border-radius: 12px;
    padding: 22px 28px;
    }
footer .footer-disclosure > i {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 28px;
    line-height: 1;
    color: #326eb3;
    margin-top: -2px;
    }
footer .footer-disclosure__title {
    display: block;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 15px;
    font-weight: 700;
    color: #326eb3;
    margin-bottom: 8px;
    }
footer .footer-disclosure p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #373435;
    }
footer .footer-disclosure p a,
footer .footer-disclosure p a:link,
footer .footer-disclosure p a:visited {
    color: #326eb3;
    text-decoration: none;
    }
footer .footer-disclosure p a:hover {
    text-decoration: underline;
    }

/* Store badges */
footer .store-badges {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0 24px;
    margin-top: 26px;
    }

/* The badge artwork is a fixed-proportion store asset at 40px tall; the 44px tap target
   is grown on the anchor instead (QA-004). */
footer .store-badges a {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 44px;
    }
footer .store-badges a + a {
    border-left: 1px solid #d0dbe5;
    padding-left: 24px;
    }
footer .store-badges img {
    height: 40px;
    width: auto;
    display: block;
    }

/* Legal row + copyright */
footer .footer-section.bottom {
    background: #fff;
    border-top: 1px solid #d0dbe5;
    padding: 18px 0 22px;
    }
footer .footer-legal {
    list-style: none;
    margin: 0 0 10px;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px 0;
    }
footer .footer-legal li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
footer .footer-legal li + li:before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 14px;
    background: #d0dbe5;
    margin: 0 20px;
    }
footer .footer-legal a,
footer .footer-legal a:link,
footer .footer-legal a:visited {
    color: #326eb3;
    text-decoration: none;
    font-size: 13px;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 32px;
    }
footer .footer-legal a:hover {
    text-decoration: underline;
    }
footer .footer-section.bottom p {
    margin: 0;
    text-align: center;
    color: #677174;
    font-size: 14px;
    }

/* Tablet: brand row on top, columns below it in a 4-up row */
@media (max-width: 1100px) {
footer .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
    }
footer .footer-brand {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    }
footer .footer-menu {
    width: 100%;
    }
footer .footer-trust {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px 0;
    }
footer .footer-trust__item {
    -webkit-flex: 1 1 45%;
    -ms-flex: 1 1 45%;
    flex: 1 1 45%;
    }
footer .footer-trust__item:nth-child(3) {
    border-left: 0;
    padding-left: 0;
    }
}

/* Phone: matches the mobile mockup. Centred brand, 2x2 columns, compact 3-up trust strip
   (labels only, Secure Payments dropped), stacked badges. */
@media (max-width: 700px) {
footer .footer-section.top {
    padding: 32px 0 24px;
    }
footer .split {
    gap: 24px;
    padding-bottom: 24px;
    }
footer .footer-brand {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding-bottom: 24px;
    border-bottom: 1px solid #d0dbe5;
    }
footer .footer-brand .logo-container img {
    max-width: 260px;
    }
footer .footer-tagline {
    margin: 6px 0 0;
    }
footer .footer-brand .social-icons {
    margin-top: 18px;
    }
footer .footer-cols {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 0;
    }
footer .footer-col,
footer .footer-col:first-child {
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    padding: 0 0 0 12%;
    border-left: 0;
    }
footer .footer-col:nth-child(n + 3) {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #d0dbe5;
    }
footer .footer-col-heading {
    font-size: 13px;
    }
footer .footer-col ul {
    gap: 0;
    }

/* 44px tap targets on touch widths (QA-004); the old 10px gap is replaced by the min-height */
footer .footer-col a {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px;
    min-width: 44px;
    font-size: 15px;
    }
footer .footer-trust {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 0;
    padding: 18px 0 22px;
    }
footer .footer-trust__item {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    padding: 0 8px;
    border-left: 1px solid #d0dbe5;
    font-size: 12px;
    }
footer .footer-trust__item:first-child,
footer .footer-trust__item:nth-child(3) {
    padding-left: 8px;
    }
footer .footer-trust__item:first-child {
    border-left: 0;
    padding-left: 0;
    }
footer .footer-trust__item:nth-child(3) {
    border-left: 1px solid #d0dbe5;
    }
footer .footer-trust__item--payments {
    display: none;
    }
footer .footer-trust__item i {
    font-size: 24px;
    margin-top: 0;
    }
footer .footer-trust__item strong {
    font-weight: 500;
    color: #373435;
    font-size: 12px;
    line-height: 1.3;
    margin: 0;
    }
footer .footer-trust__item div > span {
    display: none;
    }
footer .footer-trust__long {
    display: none;
    }
footer .footer-trust__short {
    display: inline;
    }
footer .footer-disclosure {
    padding: 18px 16px;
    gap: 12px;
    border-radius: 10px;
    }
footer .footer-disclosure > i {
    font-size: 22px;
    }
footer .footer-disclosure__title {
    font-size: 14px;
    }
footer .footer-disclosure p {
    font-size: 13px;
    }
footer .store-badges {
    gap: 10px 16px;
    margin-top: 22px;
    }
footer .store-badges a + a {
    border-left: 0;
    padding-left: 0;
    }
footer .footer-legal li + li:before {
    margin: 0 12px;
    }
footer .footer-legal a {
    font-size: 12px;
    }
footer .footer-section.bottom p {
    font-size: 13px;
    }
}

@media (max-width: 380px) {
footer .footer-col,
footer .footer-col:first-child {
    padding-left: 6%;
    }
footer .footer-trust__item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    gap: 6px;
    }
}

/* ===== Home Hero (redesign 2026-06-16) — scoped .home-hero, replaces legacy .hero on the home page only ===== */
.home-hero {
    background: #eff4f8;
    padding-top: 95px;
    }
.home-hero .wrapper {
    position: relative;
    }
.home-hero__grid {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 48px;
    padding: 56px 0 64px;
    }
.home-hero__content {
    -webkit-flex: 1 1 46%;
    -ms-flex: 1 1 46%;
    flex: 1 1 46%;
    min-width: 0;
    max-width: 550px;
    margin-right: auto;
    }

/* DRB-165: eyebrow chip above the H1, straight from the client's concept comp. */
.home-hero__eyebrow {
    display: inline-block;
    background: #e3eefb;
    color: #145da7;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-radius: 999px;
    padding: 7px 14px;
    margin-bottom: 16px;
    }
.home-hero__title {
    font-family: arial;
    font-size: 42px;
    line-height: 1.16;
    margin: 0 0 18px;
    color: #373435;
    }

/* highlighted words use the global .blue class ($(hero-blue)) — no override here */
.home-hero__subtitle {
    font-size: 19px;
    line-height: 1.5;
    color: #677174;
    margin: 0 0 22px;
    max-width: 560px;
    }
.home-hero__availability {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #d8e6d5;
    border-radius: 999px;
    color: #1f3325;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.25;
    padding: 9px 16px;
    -webkit-box-shadow: 0 8px 22px rgba(26,76,41,.1);
    box-shadow: 0 8px 22px rgba(26,76,41,.1);
    }
.home-hero__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2eb85c;
    -webkit-box-shadow: 0 0 0 4px rgba(46,184,92,.2);
    box-shadow: 0 0 0 4px rgba(46,184,92,.2);
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: inline-block;
    }
.home-hero__actions {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 26px;
    }
.home-hero__actions .btn,
.home-hero__card-cta {
    border-radius: 8px;
    }
.home-hero__btn-outline {
    background: transparent;
    border: 2px solid #326eb3;
    color: #326eb3;
    }
.home-hero__btn-outline:hover {
    background: #326eb3;
    color: #fff;
    border-color: #326eb3;
    }

/* Self Pay / Members Pay price boxes */
.home-hero__prices {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    margin-top: 24px;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    overflow: hidden;
    }
.home-hero__price {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    padding: 14px 22px;
    position: relative;
    }
.home-hero__price + .home-hero__price:before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    bottom: 10px;
    width: 1px;
    background: #d0dbe5;
    }
.home-hero__price-per {
    font-size: 11px;
    font-weight: 600;
    color: #677174;
    }
.home-hero__price-icon {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    color: #145da7;
    font-size: 34px;
    }
.home-hero__price-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    }
.home-hero__price-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #677174;
    }
.home-hero__price-value {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.1;
    color: #145da7;
    }
.home-hero__price-value small {
    font-size: 12px;
    font-weight: 600;
    color: #677174;
    }
.home-hero__price-check {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
    color: #145da7;
    }

/* Right column: existing hero photo with the provider card overlapping it */
.home-hero__media {
    -webkit-flex: 1 1 50%;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    min-width: 0;
    position: relative;
    min-height: 460px;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    }
.home-hero__photo {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    border-radius: 0;
    margin-right: 265px;
    bottom: -63px;
    -webkit-mask-image: -webkit-linear-gradient(to bottom,black 70%,transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom,black 70%,transparent 100%);
    mask-image: -webkit-linear-gradient(to bottom,black 70%,transparent 100%);
    mask-image: linear-gradient(to bottom,black 70%,transparent 100%);
    }

/* Phone-only provider chip — see the note in parts/hero.php. Hidden by default; the
   =<560px block turns it on and hides the full .home-hero__card in its place.
   It is a sibling of .home-hero__photo rather than a child on purpose: the photo carries a
   mask-image, and a mask applies to a element's children too, so nesting the chip would
   fade it out along with the bottom of the band. Sitting outside it and being pulled up by
   a negative margin gets the overlap without inheriting the fade. */
.home-hero__chip {
    display: none;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 11px;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1;
    position: relative;
    z-index: 2;
    width: -webkit-calc(100% - 32px);
    width: calc(100% - 32px);
    margin: -74px auto 0;
    padding: 10px 12px;
    background: rgba(255,255,255,.93);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 16px;
    -webkit-box-shadow: 0 14px 32px rgba(20,60,120,.18);
    box-shadow: 0 14px 32px rgba(20,60,120,.18);
    text-decoration: none;
    }
.home-hero__chip:hover,
.home-hero__chip:focus {
    text-decoration: none;
    }
.home-hero__chip-photo {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    overflow: hidden;
    background: #eff4f8;
    }
.home-hero__chip-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    }
.home-hero__chip-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-width: 0;
    }
.home-hero__chip-spec {
    font-size: 11.5px;
    color: #677174;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    }
.home-hero__chip-name {
    font-size: 14px;
    font-weight: 700;
    color: #145da7;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    }
.home-hero__chip-rating {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    font-size: 12.5px;
    font-weight: 700;
    color: #a85c00;
    white-space: nowrap;
    }
.home-hero__card {
    position: absolute;
    top: 0;
    right: 0;
    width: 275px;
    max-width: 88%;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    -webkit-box-shadow: 0 18px 40px rgba(20,60,120,.16);
    box-shadow: 0 18px 40px rgba(20,60,120,.16);
    padding: 22px 22px;
    text-align: center;
    }
.home-hero__card-badge {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: auto;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #373435;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 16px;
    }
.home-hero__card-photo {
    width: 104px;
    height: 104px;
    margin: 0 auto 14px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #eff4f8;
    }
.home-hero__card-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    }

/* DRB-174: 19px needed 247px inside this card's 229px column, so "MD" wrapped onto its
   own line. 17px fits the full "Dr. Awharitefe Urhuogo, MD" on one line. A longer name
   than this still wraps, but FormatCardName() keeps the credential glued to the surname
   so it can never be orphaned alone. (Below 768px this card is display:none and the
   .home-hero__chip renders instead, so the phone layout is unaffected.) */
.home-hero__card-name {
    font-size: 17px;
    margin: 0 0 4px;
    color: #373435;
    }
.home-hero__card-spec {
    font-size: 14px;
    color: #677174;
    margin: 0 0 18px;
    }
.home-hero__card-list {
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
    text-align: left;
    display: inline-block;
    }
.home-hero__card-list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    color: #373435;
    margin-bottom: 10px;
    }
.home-hero__card-list li i {
    color: #20bf6b;
    font-size: 13px;
    }
.home-hero__card-rating {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 18px;
    }
.home-hero__stars {
    color: #a85c00;
    font-size: 14px;
    letter-spacing: 1px;
    }
.home-hero__rating-num {
    font-weight: 700;
    color: #373435;
    font-size: 14px;
    }
.home-hero__rating-count {
    color: #677174;
    font-size: 13px;
    }
.home-hero__card-cta {
    display: block;
    width: 100%;
    }

/* Empty state: no provider flagged -> photo fills the column */
.home-hero__media--full .home-hero__photo {
    margin-right: 0;
    }

/* Home hero responsive */
@media (max-width: 1024px) {
.home-hero__grid {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 0;
    padding: 0 0 32px;
    }
.home-hero__content {
    position: relative;
    max-width: none;
    margin-right: 0;
    text-align: left;
    padding: 34px 16px;
    width: 100vw;
    margin-left: -webkit-calc(-50vw + 50%);
    margin-left: calc(-50vw + 50%);
    }
.home-hero__subtitle {
    margin-left: 0;
    margin-right: 0;
    color: #373435;
    }
.home-hero__availability {
    margin: 0;
    }
.home-hero__actions {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    }
.home-hero__btn-outline {
    background-color: #fff;
    }
.home-hero__prices-wrap {
    text-align: center;
    }

/* DRB-160: the hero photo comes back on mobile as a full-bleed banner directly
     under the header, the way the pricing page's mobile hero opens. The photo and
     the provider card both live in .home-hero__media, but they belong on opposite
     sides of the copy here — display:contents drops the wrapper out of the box
     model so the two can be ordered independently as grid flex items. */
.home-hero__media {
    display: contents;
    }

/* The band's first pass ended on a hard horizontal line straight into the copy, so it
     read as a separate strip pasted above the page rather than part of the hero (client
     feedback on DRB-160). Two changes fix the seam, and both are needed — a fade alone
     still leaves the photo and the copy as two stacked blocks:
       1. The bottom edge dissolves into the hero's own $(home-gray) via the same
          bottom-to-transparent mask the desktop photo already uses, so there is no edge
          to see. The ramp is deliberately long (~58% of the band) because a short one
          still reads as a line no matter how soft.
       2. The copy is pulled back up over that dissolved tail with a negative margin, so
          the heading starts INSIDE the photo's footprint instead of after it. That is
          what makes the two overlap rather than merely abut. z-index keeps the copy
          above the photo (both are flex items in the same stacking context).
     The band is taller than before by roughly the length of the tail, so the amount of
     photo actually reading as photo is unchanged. */
.home-hero__photo {
    display: block;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1;
    position: static;
    width: 100vw;
    height: 330px;
    margin: 0 0 0 -webkit-calc(-50vw + 50%);
    margin: 0 0 0 calc(-50vw + 50%);
    background-position: center 30%;
    -webkit-mask-image: -webkit-linear-gradient(to bottom,#000 42%,transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom,#000 42%,transparent 100%);
    mask-image: -webkit-linear-gradient(to bottom,#000 42%,transparent 100%);
    mask-image: linear-gradient(to bottom,#000 42%,transparent 100%);
    }
.home-hero__content {
    margin-top: -86px;
    z-index: 1;
    }
.home-hero__card {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    position: relative;
    right: auto;
    width: 320px;
    max-width: 92%;
    margin: 32px auto 0;
    }
}

@media (max-width: 560px) {
.home-hero__title {
    font-size: 30px;
    }
.home-hero__subtitle {
    font-size: 16px;
    }
.home-hero__actions .btn {
    width: 100%;
    }
.home-hero__photo {
    height: 280px;
    }
.home-hero__content {
    margin-top: -72px;
    }

/* DRB-165 hero tidy: the availability pill was wrapping mid-phrase, and the three
     price boxes were cramming full-size icons and labels into 120px columns. The pill
     drops a size; the price row goes edge-to-edge with the icons dropped and the type
     scaled so all three columns hold one line each at 360px. */
.home-hero__availability {
    font-size: 13px;
    padding: 8px 14px;
    }
.home-hero__prices {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: 100%;
    margin-top: 20px;
    }
.home-hero__price {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    padding: 10px 6px;
    gap: 4px !important;
    }
.home-hero__price-icon {
    display: none;
    }
.home-hero__price-label {
    font-size: 10px;
    letter-spacing: .02em;
    white-space: nowrap;
    }
.home-hero__price-value {
    font-size: 20px;
    }
.home-hero__price-check {
    font-size: 14px;
    }

/* ---- Phone hero: single conversion card (design option C) -------------------------
     The old phone hero read as empty, and measuring it said why rather than it being a
     spacing problem: .home-hero__card — the provider, i.e. the whole trust story — began
     at y=812 on a 425x812 screen, exactly the fold, so nobody saw it; .home-hero__cta-primary
     is display:none from 500px down (the sticky bar owns the orange CTA), leaving HOW IT
     WORKS alone as a full-width outlined slab where the primary action should be; and the
     photo's fade started at 42%, so most of the band was a dissolving ghost.

     So the phone hero becomes one elevated card lifted over a shorter photo, carrying every
     decision input in a single object above the fold: live badge, headline, the three price
     facts, the primary CTA, and the provider. .home-hero__content is a flex column here
     purely so those can be ordered independently of the DOM, which is authored for the
     desktop two-column layout. Untouched above 560px. */
.home-hero__content {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: auto;
    margin: -68px 14px 0;
    padding: 18px 16px;
    background: #fff;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 20px;
    -webkit-box-shadow: 0 22px 48px rgba(20,60,120,.18);
    box-shadow: 0 22px 48px rgba(20,60,120,.18);
    position: relative;
    z-index: 2;
    }

/* The live badge takes the eyebrow's job at the top of the card. */
.home-hero__eyebrow {
    display: none;
    }
.home-hero__availability {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin: 0 0 12px;
    background: #eaf7f0;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #1d7a4b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 6px 11px;
    }
.home-hero__title {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    font-size: 29px;
    line-height: 1.14;
    letter-spacing: -.022em;
    }
.home-hero__subtitle {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    font-size: 13.5px;
    line-height: 1.45;
    margin: 8px 0 0;
    color: #677174;
    }

/* Prices move above the CTA — the price is the objection you answer before the ask. */
.home-hero__prices-wrap {
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
    margin-top: 14px;
    }
.home-hero__prices {
    margin-top: 0;
    background: #f0f4f8;
    border-radius: 12px;
    overflow: hidden;
    }
.home-hero__price {
    border-right: 1px solid #d0dbe5;
    padding: 11px 4px;
    }
.home-hero__price:last-child {
    border-right: 0;
    }
.home-hero__actions {
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
    display: block;
    margin-top: 14px;
    }

/* Restored: hidden from 500px down, which is what left the outline button stranded. */
.home-hero__actions .home-hero__cta-primary {
    display: block;
    width: 100%;
    -webkit-box-shadow: 0 10px 24px rgba(255,147,0,.3);
    box-shadow: 0 10px 24px rgba(255,147,0,.3);
    }

/* Kept as a quiet text link rather than dropped — it is a real navigation path, and a
     second full-width slab is exactly what this redesign removes. */
.home-hero__actions .home-hero__btn-outline {
    display: block;
    width: 100%;
    margin-top: 0;
    padding: 14px 0;
    border: 0;
    background: none;
    font-size: 13.5px;
    font-weight: 700;
    color: #145da7;
    text-align: center;
    }

/* The full string wrapped the pill onto two lines, and the wait time is already carried
     by the card. Lead clause only here. */
.home-hero__avail-tail {
    display: none;
    }

/* Provider row, closing the card. */
.home-hero__chip {
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: auto;
    margin: 13px 0 0;
    padding: 12px 0 0;
    background: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border: 0;
    border-top: 1px solid #d0dbe5;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    }
.home-hero__card {
    display: none;
    }

/* Shorter, and no fade: the card covers the bottom edge, so the band can stay a crisp
     photograph instead of dissolving into the page. */
.home-hero__photo {
    height: 230px;
    -webkit-mask-image: none;
    mask-image: none;
    }
}

/* ===== Home service links (DRB-165, rebuilt on the shared card in DRB-163) —
   .home-services: Urgent / Primary / Mental Health under the hero, each linking into the
   matching /what-we-treat tab.

   These are the SAME card as that page's tabs: the markup uses the shared .tab-card__*
   structure and the internals (icon, text, title, desc, head, photo) come from the rules
   near .what-we-treat .tab further down the sheet. Only the outer chrome lives here,
   mirroring .what-we-treat .tab .tablinks, plus the "Learn more" affordance these carry
   because they are links rather than tab buttons.

   This replaces the earlier look-alike (tinted green/blue/purple cards, photo on the
   right, photo dropped entirely on phones). The tints and the phone chevron row went with
   it — the client's comp shows one white photo card used in both places. ===== */
.home-services {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
    padding: 44px 0;
    }
.home-services__card {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    text-align: left;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    padding: 0;
    overflow: hidden;
    min-width: 0;
    text-decoration: none;
    -webkit-transition: transform .15s ease,box-shadow .15s ease;
    transition: transform .15s ease,box-shadow .15s ease;
    }
.home-services__card:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 10px 26px rgba(20,60,120,.12);
    box-shadow: 0 10px 26px rgba(20,60,120,.12);
    text-decoration: none;
    }

/* The tab version inherits 10px here from the legacy `.tab button span` rule. Applying it
   explicitly keeps the two cards aligned to the same inset instead of 10px apart. */
.home-services__card .tab-card__text {
    padding-left: 10px;
    }
.home-services__more {
    font-size: 13px;
    font-weight: 700;
    color: #326eb3;
    margin-top: 6px;
    }
.home-services__more i {
    font-size: 11px;
    margin-left: 4px;
    -webkit-transition: transform .15s ease;
    transition: transform .15s ease;
    }
.home-services__card:hover .home-services__more i {
    -webkit-transform: translateX(3px);
    -ms-transform: translateX(3px);
    transform: translateX(3px);
    }

/* The responsive overrides for these cards do NOT live here — they are comma-joined onto
   the tab cards' own breakpoint rules further down the sheet, so the two stay in step by
   construction. They have to be down there: the shared base rule is later in the file, so
   an override at this point loses to it on source order at equal specificity. */
@media (max-width: 750px) {
.home-services {
    gap: 10px;
    }
}

/* ===== Home "Why Choose Us" trust strip (redesign 2026-06-16) — scoped .home-why ===== */
.home-why {
    background: #fff;
    padding: 30px 0;
    }
.home-why__list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px 28px;
    list-style: none;
    margin: 0;
    padding: 26px 64px;
    border: 1px solid #d0dbe5;
    border-radius: 14px;
    }
.home-why__item {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    text-align: left;
    }
.home-why__icon {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    background: transparent;
    color: #145da7;
    font-size: 34px;
    }
.home-why__text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    }
.home-why__title {
    font-size: 15px;
    font-weight: 700;
    color: #145da7;
    line-height: 1.2;
    }
.home-why__desc {
    font-size: 13px;
    color: #677174;
    line-height: 1.35;
    }

/* DRB-177: with six badges the single row stops fitting somewhere around 1150px, and
   space-between wrap left the sixth orphaned bottom-left under a full row of five.
   3-up here (two even rows), 2-up below 768 (three even rows). */
@media (max-width: 1150px) {
.home-why__item {
    -webkit-flex: 1 1 30%;
    -ms-flex: 1 1 30%;
    flex: 1 1 30%;
    }
}

@media (max-width: 768px) {
.home-why__list {
    gap: 22px 24px;
    }
.home-why__item {
    -webkit-flex: 1 1 44%;
    -ms-flex: 1 1 44%;
    flex: 1 1 44%;
    max-width: none;
    }
}

@media (max-width: 480px) {
/* DRB-174: single-column (`max-content`) stacked all the badges into ~383px of scroll,
     which shoved the service cards well below the fold now that the strip is shown on
     phones at all. Two columns roughly halves that. (DRB-177's sixth badge makes the
     2-up grid come out even — three full rows, no orphan.) */
.home-why__list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    justify-items: start;
    gap: 20px 14px;
    padding: 20px 18px;
    }
.home-why__item {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    }
.home-why__icon {
    -webkit-flex: 0 0 48px;
    -ms-flex: 0 0 48px;
    flex: 0 0 48px;
    width: 48px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
}

/* ===== Home "What We Treat" teaser (redesign 2026-06-16) — scoped .home-conditions ===== */
.home-conditions {
    background: #fff;
    padding: 48px 0;
    }
.home-conditions__heading {
    text-align: center;
    font-size: 34px;
    font-weight: 700;
    color: #373435;
    margin: 0 0 36px;
    }
.home-conditions__grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 28px 32px;
    list-style: none;
    margin: 0;
    padding: 0;
    }
.home-conditions__link {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 14px;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    padding: 18px;
    height: 100%;
    color: inherit;
    text-decoration: none;
    }
.home-conditions__link:hover {
    text-decoration: none !important;
    }

/* DRB-174: replaces .home-conditions__icon. The icon was a 36px glyph; the client asked
   for a photo "same size as the icon or a little bigger", so 56px — big enough that a
   face is legible at thumbnail size, small enough that the tile keeps its icon-like
   proportions and the grid does not grow taller. Square with a soft radius rather than a
   circle: the source shots are square, and a circle crops more off the subject.
   background-position is biased upward for the same reason as the tab card photos —
   centred crops of a square portrait cut the top of the head off. */
.home-conditions__photo {
    display: block;
    -webkit-flex: 0 0 56px;
    -ms-flex: 0 0 56px;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    border-radius: 10px;
    background-color: #eff4f8;
    background-size: cover;
    background-position: center 30%;
    background-repeat: no-repeat;
    }
.home-conditions__text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    }
.home-conditions__title {
    font-size: 16px;
    font-weight: 700;
    color: #145da7;
    line-height: 1.25;
    }
.home-conditions__desc {
    font-size: 13px;
    color: #677174;
    line-height: 1.4;
    }
.home-conditions__cta {
    text-align: center;
    margin-top: 26px;
    }
.home-conditions__viewall {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 700;
    color: #326eb3;
    text-decoration: none;
    padding: 14px 0;
    }
.home-conditions__viewall:hover {
    color: #145da7;
    }
.home-conditions__viewall i {
    font-size: 13px;
    }
@media (max-width: 900px) {
.home-conditions__grid {
    grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width: 520px) {
.home-conditions__grid {
    grid-template-columns: 1fr;
    }

/* DRB-174: was .home-conditions__icon at 48px. The photo steps down here too so a
     one-column tile does not hand 56px of a ~340px row to the image. */
.home-conditions__photo {
    -webkit-flex: 0 0 48px;
    -ms-flex: 0 0 48px;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    }
}

/* ===== Home "How It Works" 3-step teaser (redesign 2026-06-16) — scoped .home-steps ===== */
.home-steps {
    background: #eff4f8;
    padding: 48px 0;
    }
.home-steps__heading {
    text-align: center;
    font-size: 34px;
    font-weight: 700;
    color: #373435;
    margin: 0 0 44px;
    }
.home-steps__list {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
    }
.home-steps__item {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 14px;
    -webkit-flex: 0 1 250px;
    -ms-flex: 0 1 250px;
    flex: 0 1 250px;
    }
.home-steps__icon-wrap {
    position: relative;
    margin-bottom: 30px;
    }
.home-steps__icon {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 116px;
    height: 116px;
    border-radius: 50%;
    background: #fff;
    color: #145da7;
    font-size: 44px;
    -webkit-box-shadow: 0 8px 24px rgba(20,60,120,.1);
    box-shadow: 0 8px 24px rgba(20,60,120,.1);
    overflow: visible;
    }
.home-steps__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    }
.home-steps__num {
    position: absolute;
    top: 100%;
    margin-top: -8px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #326eb3;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.home-steps__title {
    font-size: 19px;
    font-weight: 700;
    color: #145da7;
    }
.home-steps__desc {
    font-size: 15px;
    color: #677174;
    line-height: 1.4;
    max-width: 230px;
    }
.home-steps__arrow {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #326eb3;
    font-size: 32px;
    margin-top: 58px;
    }
@media (max-width: 768px) {
.home-steps__list {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    }
.home-steps__item {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.home-steps__arrow {
    margin-top: 0;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    }
}

/* ===== How It Works HERO (DRB-162) — .hiw-hero: copy + trust stats on the left, lifestyle
   photo bleeding off the right viewport edge. Same two-column treatment as .home-hero, but
   the photo is positioned against the SECTION rather than a flex media column so it can run
   past the .wrapper padding to the edge without a 100vw/negative-margin trick.
   Replaces the centered .hiw__heading/.hiw__subhead pair the page used before. ===== */
.hiw-hero {
    position: relative;
    overflow: hidden;
    background: #fff;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 480px;
    }
.hiw-hero > .wrapper {
    width: 100%;
    }
.hiw-hero__photo {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 54%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 42%);
    -webkit-mask-image: linear-gradient(to right,transparent 0%,#000 42%);
    mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 42%);
    mask-image: linear-gradient(to right,transparent 0%,#000 42%);
    }
.hiw-hero__content {
    position: relative;
    z-index: 1;
    width: 48%;
    max-width: 560px;
    padding: 48px 0;
    }
.hiw-hero__eyebrow {
    display: block;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #326eb3;
    margin-bottom: 14px;
    }
.hiw-hero__title {
    font-size: 46px;
    line-height: 1.1;
    font-weight: 700;
    color: #002669;
    margin: 0 0 16px;
    }
.hiw-hero__subtitle {
    font-size: 19px;
    line-height: 1.5;
    color: #677174;
    margin: 0 0 28px;
    }
.hiw-hero__stats {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
    }
.hiw-hero__stat {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    padding: 10px 16px 10px 12px;
    -webkit-box-shadow: 0 6px 18px rgba(20,60,120,.06);
    box-shadow: 0 6px 18px rgba(20,60,120,.06);
    }
.hiw-hero__stat-icon {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: #eaf2fb;
    color: #145da7;
    font-size: 17px;
    }
.hiw-hero__stat-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1.25;
    min-width: 0;
    }
.hiw-hero__stat-label {
    font-size: 12px;
    font-weight: 600;
    color: #677174;
    }
.hiw-hero__stat-value {
    font-size: 15px;
    font-weight: 700;
    color: #002669;
    white-space: nowrap;
    }

/* Tablet: the copy column has to give way before it collides with the photo. */
@media (max-width: 1100px) {
.hiw-hero__title {
    font-size: 38px;
    }
.hiw-hero__subtitle {
    font-size: 17px;
    }
.hiw-hero__stat {
    padding: 9px 13px 9px 10px;
    }
.hiw-hero__stat-icon {
    width: 34px;
    height: 34px;
    font-size: 15px;
    }
}

/* Mobile: the comp keeps the photo alongside the copy rather than stacking, so the photo
   becomes a fixed-height top-right crop and only the eyebrow/title/subtitle are inset to
   clear it — the stats row then runs the full width underneath, as drawn. */
@media (max-width: 900px) {
.hiw-hero {
    display: block;
    min-height: 0;
    }

/* Deliberately keeps the base rule's top/bottom:0 and its single left-edge mask. An
     earlier pass gave this a fixed height, which left the photo stopping in mid-air a few
     px short of the steps band — a hard horizontal line. Filling the hero puts the only
     horizontal edge on the section boundary, where it reads as intentional, and leaves the
     left edge as the one exposed edge for the mask to feather. (Fading both edges needs
     layered masks + mask-composite, which does not survive csscrush's prefixing — the
     -webkit-mask-composite it emits wins and the second layer is silently dropped.) */
.hiw-hero__photo {
    width: 48%;
    -webkit-mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 46%);
    -webkit-mask-image: linear-gradient(to right,transparent 0%,#000 46%);
    mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 46%);
    mask-image: linear-gradient(to right,transparent 0%,#000 46%);
    }
.hiw-hero__content {
    width: auto;
    max-width: none;
    padding: 34px 0 40px;
    }
.hiw-hero__eyebrow,
.hiw-hero__title,
.hiw-hero__subtitle {
    padding-right: 45%;
    }
.hiw-hero__title {
    font-size: 34px;
    }
.hiw-hero__subtitle {
    font-size: 16px;
    margin-bottom: 22px;
    }
}

@media (max-width: 560px) {
.hiw-hero__title {
    font-size: 29px;
    }
.hiw-hero__eyebrow {
    font-size: 12px;
    }

/* three across at phone widths, as in the comp — shrink the chip rather than wrapping.
     Sized so "Avg. wait time" / "10–15 min" (the widest pair) still each fit one line at
     360px, the narrowest phone we support. */
.hiw-hero__stats {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 6px;
    }
.hiw-hero__stat {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    gap: 6px;
    padding: 7px 8px;
    border-radius: 10px;
    }
.hiw-hero__stat-icon {
    width: 26px;
    height: 26px;
    font-size: 12px;
    border-radius: 7px;
    }
.hiw-hero__stat-label {
    font-size: 9.5px;
    letter-spacing: -.01em;
    }
.hiw-hero__stat-value {
    font-size: 11.5px;
    }
}

/* 360px phones (Galaxy S class): one more notch down so "Avg. wait time" holds a line. */
@media (max-width: 400px) {
.hiw-hero__stat {
    gap: 5px;
    padding: 6px 7px;
    }
.hiw-hero__stat-icon {
    width: 24px;
    height: 24px;
    font-size: 11px;
    border-radius: 6px;
    }
.hiw-hero__stat-label {
    font-size: 9px;
    }
.hiw-hero__stat-value {
    font-size: 11px;
    }
}

/* ===== How It Works PAGE (redesign 2026-06-17) — dedicated .hiw: 5-step photo row + promo band ===== */
/* full-width light band behind the step row (the standard home-gray we use elsewhere) */
.hiw__steps-band {
    background: #eff4f8;
    padding: 48px 0 52px;
    margin-bottom: 28px;
    }
.hiw__steps {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
    }

/* blue dotted connector running through the number badges, behind them */
.hiw__steps:before {
    content: "";
    position: absolute;
    left: 10%;
    right: 10%;
    top: 151px;
    border-top: 3px dotted #326eb3;
    z-index: 0;
    }
.hiw__step {
    position: relative;
    z-index: 1;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    max-width: 280px;
    }
.hiw__photo-wrap {
    position: relative;
    margin-bottom: 30px;
    }
.hiw__photo {
    display: block;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    overflow: hidden;
    background: #EBF1F6;
    border: 3px solid #eff4f8;
    -webkit-box-shadow: 0 8px 24px rgba(20,60,120,.1);
    box-shadow: 0 8px 24px rgba(20,60,120,.1);
    overflow: visible;
    }
.hiw__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    overflow: visible;
    }
.hiw__photo--contain img:nth-child(3) {
    object-fit: contain;
    }
.hiw__num {
    position: absolute;
    top: 100%;
    margin-top: -14px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #326eb3;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 3px solid #fff;
    }
.hiw__card {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 14px;
    -webkit-box-shadow: 0 6px 18px rgba(20,60,120,.05);
    box-shadow: 0 6px 18px rgba(20,60,120,.05);
    padding: 22px 18px 20px;
    }
.hiw__title {
    font-size: 20px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 10px;
    }
.hiw__desc {
    font-size: 15px;
    color: #677174;
    line-height: 1.5;
    margin: 0 0 18px;
    }
.hiw__cap {
    margin-top: auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    background: #eff4f8;
    border-radius: 10px;
    padding: 10px 12px;
    }
.hiw__cap i {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    color: #145da7;
    font-size: 22px;
    }
.hiw__cap-text {
    font-size: 13px;
    color: #677174;
    line-height: 1.3;
    text-align: left;
    }
.hiw__cap-text strong {
    display: block;
    color: #373435;
    font-size: 14px;
    font-weight: 700;
    }
.hiw-promo {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    background: #eff4f8;
    border-radius: 16px;
    padding: 28px 36px;
    margin: 8px 0 0;
    }
.hiw-promo__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #fff;
    color: #007e93;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 28px;
    -webkit-box-shadow: 0 6px 18px rgba(20,60,120,.1);
    box-shadow: 0 6px 18px rgba(20,60,120,.1);
    }
.hiw-promo__text {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    }
.hiw-promo__title {
    margin: 0 0 4px;
    font-size: 22px;
    font-weight: 700;
    color: #145da7;
    }
.hiw-promo__sub {
    margin: 0;
    font-size: 15px;
    color: #373435;
    line-height: 1.45;
    max-width: 560px;
    }
.hiw-promo__cta {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
@media (max-width: 900px) {
.hiw__steps {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 28px 8px;
    }
.hiw__steps:before {
    display: none;
    }
.hiw__step {
    -webkit-flex: 0 0 45%;
    -ms-flex: 0 0 45%;
    flex: 0 0 45%;
    max-width: 45%;
    }
.hiw-promo {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    }
.hiw-promo__sub {
    max-width: none;
    }
}

@media (max-width: 767px) {
.hiw__step {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    }
}

/* ===== Sign-in PAGE (redesign 2026-06-17) — dedicated .si: login card + value panel + trust strip ===== */
/* whole section sits on the standard light band (NOT white); uses the site's default
   wide wrapper — do not cap it. */
.si {
    background: #eff4f8;
    }
.si__grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 65px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 44px 0 10px;
    }

/* left: login card */
.si__card {
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    -webkit-box-shadow: 0 10px 30px rgba(20,60,120,.06);
    box-shadow: 0 10px 30px rgba(20,60,120,.06);
    padding: 38px 36px;
    width: 100%;
    max-width: 750px;
    margin: auto;
    }
.si__title {
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 8px;
    }
.si__subtitle {
    text-align: center;
    font-size: 15px;
    color: #677174;
    margin: 0 0 28px;
    }
.si__field {
    margin-bottom: 18px;
    }
.si__field > label,
.si__label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #373435;
    margin-bottom: 7px;
    }
.si__input-wrap {
    position: relative;
    }
.si__input-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #677174;
    font-size: 15px;
    }
.si__input-wrap input {
    width: 100%;
    padding: 12px 42px 12px 42px;
    border: 1px solid #d0dbe5;
    border-radius: 10px;
    font-size: 15px;
    color: #373435;
    background: #fff;
    }
.si__input-wrap input:focus {
    outline: none;
    border-color: #326eb3;
    }
.si__toggle {
    position: absolute;
    right: 8px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #677174;
    cursor: pointer;
    padding: 6px 10px;
    font-size: 15px;
    }
.si__meta {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 0 22px;
    font-size: 14px;
    }

/* "Remember me" uses the site's native checkbox visual (raw input is display:none
   globally; the adjacent label draws the box via ::before) — just set the text color. */
.si__remember {
    color: #677174;
    margin: 0 !important;
    }
.si__forgot {
    color: #326eb3;
    text-decoration: none;
    }
.si__forgot:hover {
    text-decoration: underline;
    }
.si__roles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 22px;
    }
.si__role {
    position: relative;
    display: block;
    cursor: pointer;
    }
.si__role input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    }
.si__role-inner {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 10px;
    height: 100%;
    border: 2px solid #d0dbe5;
    border-radius: 12px;
    padding: 14px;
    }
.si__role input:checked + .si__role-inner {
    border-color: #326eb3;
    background: #eaf2fb;
    }
.si__role input:checked + .si__role-inner:after {
    content: "\2713";
    position: absolute;
    top: 8px;
    right: 11px;
    color: #326eb3;
    font-size: 13px;
    font-weight: 700;
    }
.si__role-icon {
    color: #326eb3;
    font-size: 20px;
    line-height: 1.2;
    }
.si__role-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    }
.si__role-title {
    font-size: 15px;
    font-weight: 700;
    color: #002669;
    }
.si__role-desc {
    font-size: 12px;
    color: #677174;
    line-height: 1.3;
    }
.si__submit {
    width: 100%;
    margin-bottom: 30px;
    padding: 10px;
    }
.si__submit i {
    margin-right: 6px;
    }
.si__signup-text {
    text-align: center;
    font-size: 14px;
    color: #677174;
    margin: 0 0 10px;
    }
.si__create {
    display: block;
    width: 100%;
    max-width: 220px;
    margin: auto;
    padding: 10px;
    text-align: center;
    background: #fff;
    border: 2px solid #326eb3;
    color: #326eb3;
    }
.si__create:hover {
    background: #eaf2fb;
    }

/* right: value panel */
.si__info {
    display: grid;
    grid-template-columns: 1fr .95fr;
    gap: 32px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }

/* constrain the text column so the heading, sub, and benefit copy wrap like the comp */
.si__info-content {
    max-width: 360px;
    z-index: 1;
    }
.si__info-title {
    font-size: 36px;
    font-weight: 700;
    color: #002669;
    line-height: 1.15;
    margin: 0 0 16px;
    }
.si__info-accent {
    color: #145da7;
    }
.si__info-sub {
    font-size: 17px;
    color: #677174;
    line-height: 1.55;
    margin: 0 0 30px;
    max-width: 330px;
    }
.si__benefits {
    list-style: none;
    padding: 0;
    margin: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 18px;
    }
.si__benefits li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 14px;
    }
.si__benefit-icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff;
    color: #145da7;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    -webkit-box-shadow: 0 4px 12px rgba(20,60,120,.06);
    box-shadow: 0 4px 12px rgba(20,60,120,.06);
    }
.si__benefit-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    max-width: 240px;
    }
.si__benefit-title {
    font-size: 17px;
    font-weight: 700;
    color: #002669;
    }
.si__benefit-desc {
    font-size: 15px;
    color: #677174;
    line-height: 1.45;
    }
.si__info-img {
    background: #eaf2fb;
    border-radius: 20px;
    overflow: hidden;
    height: 560px;
    z-index: 0;
    }
.si__info-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    }

/* No wide-screen bleed treatment here on purpose (DRB-167): a ≥1650px block used to pull
   the photo out of the grid (absolute, right: 0, 40vw) so it bled to the viewport edge —
   but it was authored while the photo path 404'd, and once a real image rendered it sat
   under the benefits text. The photo stays in its grid column at every width. */
/* trust strip */
.si__trust-band {
    background: #eff4f8;
    padding: 24px 0 36px;
    margin-top: 0;
    }
.si__trust {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 28px;
    max-width: 1250px;
    }
.si__trust li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 14px;
    }
.si__trust-icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #fff;
    color: #145da7;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    -webkit-box-shadow: 0 4px 12px rgba(20,60,120,.06);
    box-shadow: 0 4px 12px rgba(20,60,120,.06);
    }
.si__trust-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    }
.si__trust-title {
    font-size: 16px;
    font-weight: 700;
    color: #002669;
    }
.si__trust-desc {
    font-size: 13px;
    color: #677174;
    line-height: 1.35;
    }

/* below 1200px the value panel adds no real value — show the login card only */
@media (max-width: 1199px) {
.si__grid {
    grid-template-columns: 1fr;
    }
.si__info {
    display: none;
    }
}

@media (max-width: 980px) {
.si__trust {
    grid-template-columns: 1fr;
    gap: 20px;
    }
}

@media (max-width: 560px) {
.si__roles {
    grid-template-columns: 1fr;
    }
}

/* ===== Pricing PAGE (redesign 2026-06-17) — .pricing-hero: 3 cards + includes + doctor + trust + compare ===== */
.pricing-hero {
    padding: 0;
    }
.pricing-hero__photo {
    position: relative;
    overflow: hidden;
    }
.pricing-hero__photo img {
    display: block;
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: center 30%;
    }
.pricing-hero__photo:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-linear-gradient(to bottom,rgba(10,25,55,.35) 0%,rgba(10,25,55,.8) 100%);
    background: linear-gradient(to bottom,rgba(10,25,55,.35) 0%,rgba(10,25,55,.8) 100%);
    }
.pricing-hero__photo-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    max-width: -webkit-calc(1600px + 5em);
    max-width: calc(1600px + 5em);
    margin: 0 auto;
    padding: 0 5em 24px;
    }
.pricing-hero__eyebrow {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #7dd8d4;
    margin-bottom: 6px;
    }
.pricing-hero__photo h1 {
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    color: #fff;
    margin: 0;
    }

/* DRB-159: insurance sits between the hero photo and the pricing cards as a slim
   band rather than a third price card. */
.pricing-insurance-line {
    padding: 18px 0 0;
    }
.pricing-insurance-line__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    background: #eff4f8;
    border: 1px solid #d0dbe5;
    border-radius: 14px;
    padding: 12px 22px;
    }
.pricing-insurance-line__copy {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1.3;
    }
.pricing-insurance-line__head {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    }
.pricing-insurance-line__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 26px;
    line-height: 0;
    color: #145da7;
    }
.pricing-insurance-line__icon .fi-img {
    width: 26px;
    height: 26px;
    display: block;
    }
.pricing-insurance-line__title {
    font-size: 16px;
    font-weight: 700;
    color: #002669;
    }
.pricing-insurance-line__sub {
    font-size: 13px;
    color: #677174;
    }
.pricing-insurance-line__logos {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-width: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.pricing-insurance-line__logos img {
    display: block;
    max-width: 100%;
    height: 92px;
    width: auto;
    }
.pricing-insurance-line__more {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 13px;
    font-style: italic;
    color: #677174;
    }
.pricing-hero__intro {
    text-align: center;
    padding: 30px 24px 0;
    }
.pricing-hero__intro h2 {
    font-size: 26px;
    font-weight: 800;
    color: #002669;
    margin: 0 0 4px;
    }
.pricing-hero__intro p {
    font-size: 15px;
    color: #677174;
    margin: 0;
    }
.pricing-hero__cards {
    display: grid;
    grid-template-columns: 1fr 1fr .95fr 1.3fr;
    gap: 18px;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 20px;
    border-radius: 16px;
    }
.pcard {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    padding: 26px 18px 22px;
    }
.pcard__title {
    font-size: 18px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 12px;
    }
.pcard__icon {
    color: #145da7;
    font-size: 36px;
    margin-bottom: 16px;
    }
.pcard__lead {
    font-size: 15px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 4px;
    }
.pcard__sub {
    font-size: 13px;
    color: #677174;
    margin: 0 0 16px;
    line-height: 1.4;
    }
.pcard__logos {
    width: 100%;
    margin-bottom: 6px;
    padding-top: 16px;
    border-top: 1px solid #d0dbe5;
    }
.pcard__logos img {
    width: 100%;
    height: auto;
    display: block;
    }
.pcard__more {
    font-size: 13px;
    color: #677174;
    margin-bottom: 16px;
    }
.pcard__price {
    font-size: 52px;
    font-weight: 800;
    color: #007e93;
    line-height: 1;
    margin: 8px 0 2px;
    }
.pcard__cur {
    font-size: 26px;
    font-weight: 700;
    vertical-align: super;
    margin-right: 2px;
    }
.pcard__per {
    font-size: 14px;
    color: #677174;
    margin-bottom: 14px;
    }
.pcard__list {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    width: 100%;
    text-align: left;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 9px;
    }
.pcard__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 8px;
    font-size: 13px;
    color: #373435;
    line-height: 1.35;
    }
.pcard__list li i {
    color: #20bf6b;
    font-size: 14px;
    margin-top: 1px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.pcard__join {
    font-size: 14px;
    font-weight: 700;
    color: #007e93;
    margin: 0 0 12px;
    }
.pcard__cta {
    margin-top: auto;
    width: 100%;
    }
.pcard--member {
    background: #fff;
    border: 2px solid #007e93;
    padding-top: 40px;
    overflow: hidden;
    }
.pcard--member .pcard__title {
    color: #002669;
    }
.pcard--member .pcard__price {
    color: #007e93;
    }
.pcard__ribbon {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: #006d83;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .05em;
    padding: 8px;
    border-radius: 0;
    }
.pricing-includes {
    padding: 20px 18px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #fff;
    border-radius: 16px;
    -webkit-box-shadow: 0 8px 24px rgba(20,60,120,.1);
    box-shadow: 0 8px 24px rgba(20,60,120,.1);
    }
.pricing-includes__title {
    font-size: 17px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 14px;
    }
.pricing-includes__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.pricing-includes__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: #373435;
    border-bottom: 1px solid #d0dbe5;
    padding: 0 0 11px;
    margin-bottom: 11px;
    }
.pricing-includes__list li:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    }
.pricing-includes__icon {
    color: #145da7;
    font-size: 26px;
    width: 34px;
    text-align: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.pricing-doc {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background: #eff4f8;
    border-radius: 16px;
    padding: 20px 18px;
    }
.pricing-doc__status {
    font-size: 14px;
    font-weight: 700;
    color: #002669;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    }
.pricing-doc__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #20bf6b;
    display: inline-block;
    }
.pricing-doc__wait {
    font-size: 13px;
    color: #677174;
    margin-bottom: 14px;
    }
.pricing-doc__photo {
    width: 118px;
    height: 118px;
    border-radius: 50%;
    overflow: hidden;
    background: #fff;
    margin-bottom: 12px;
    }
.pricing-doc__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    }
.pricing-doc__name {
    font-size: 16px !important;
    font-weight: 700;
    color: #002669;
    margin: 0;
    }
.pricing-doc__spec {
    font-size: 13px;
    color: #677174;
    margin: 2px 0 8px;
    }
.pricing-doc__rating {
    font-size: 13px;
    color: #677174;
    margin-bottom: 14px;
    }
.pricing-doc__stars {
    color: #a85c00;
    }
.pricing-doc__cta {
    width: 100%;
    margin-top: auto;
    }
.pricing-trust {
    margin-top: 30px;
    padding: 0;
    }
.pricing-trust__list {
    list-style: none;
    margin: 0;
    background: #eff4f8;
    border-radius: 16px;
    padding: 24px 12px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.pricing-trust__list li {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
    padding: 4px 28px;
    font-size: 15px;
    font-weight: 700;
    color: #002669;
    line-height: 1.3;
    border-right: 1px solid #d0dbe5;
    }
.pricing-trust__list li:last-child {
    border-right: 0;
    }
.pricing-trust__icon {
    color: #002669;
    font-size: 36px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.pricing-compare {
    padding: 36px 0;
    }
.pricing-compare__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 18px;
    background: #eff4f8;
    border-radius: 20px;
    padding: 20px;
    }
.pricing-compare__intro {
    -webkit-flex: 1.5;
    -ms-flex: 1.5;
    flex: 1.5;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 8px 18px;
    }
.pricing-compare__panel {
    -webkit-flex: 2.3;
    -ms-flex: 2.3;
    flex: 2.3;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    background: #fff;
    border-radius: 16px;
    }
.pricing-compare__intro h3 {
    font-size: 26px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 10px;
    text-align: center;
    }
.pricing-compare__intro p {
    font-size: 16px;
    color: #002669;
    margin: 0;
    line-height: 1.5;
    text-align: center;
    }
.pricing-compare__col {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    gap: 4px;
    padding: 24px 16px;
    }
.pricing-compare__col--with:before {
    content: "";
    position: absolute;
    left: 0;
    top: 26px;
    bottom: 26px;
    width: 1px;
    background: #d0dbe5;
    }
.pricing-compare__label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #002669;
    }
.pricing-compare__label--teal {
    color: #007e93;
    }
.pricing-compare__sub {
    font-size: 14px;
    color: #002669;
    }
.pricing-compare__row {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    margin-top: 10px;
    }
.pricing-compare__icon {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: #dceaec;
    color: #007e93;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 26px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.pricing-compare__figure {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.pricing-compare__amt {
    font-size: 38px;
    font-weight: 800;
    color: #007e93;
    line-height: 1.1;
    }
.pricing-compare__math {
    font-size: 15px;
    color: #002669;
    font-weight: 600;
    }
.pricing-compare__save {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    overflow: hidden;
    background: #007e93;
    border-radius: 16px;
    padding: 24px 18px;
    text-align: center;
    color: #fff;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
    }
.pricing-compare__save-label {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .04em;
    }
.pricing-compare__save-amt {
    font-size: 44px;
    font-weight: 800;
    }
.pricing-compare__save-sub {
    font-size: 12px;
    }
.pricing-compare__piggy {
    position: absolute;
    bottom: 6px;
    right: 12px;
    font-size: 46px;
    color: rgba(255,255,255,.16);
    pointer-events: none;
    }
@media (max-width: 1180px) {
.pricing-hero__cards {
    grid-template-columns: 1fr 1fr;
    }
.pricing-includes,
.pricing-doc {
    grid-column: span 2;
    }
.pricing-insurance-line__logos img {
    height: 54px;
    }
}

@media (max-width: 760px) {
/* DRB-159: compact photo hero + intro header on mobile */
.pricing-hero__photo img {
    height: 190px;
    }
.pricing-hero__photo-content {
    padding: 0 20px 14px;
    }
.pricing-hero__eyebrow {
    font-size: 10px;
    margin-bottom: 4px;
    }
.pricing-hero__photo h1 {
    font-size: 20px;
    line-height: 1.25;
    }
.pricing-hero__intro {
    padding: 18px 24px 4px;
    }
.pricing-hero__intro h2 {
    font-size: 20px;
    }
.pricing-hero__intro p {
    font-size: 13px;
    }

/* DRB-159: insurance band stacks between the hero photo and the pricing cards */
.pricing-insurance-line {
    padding: 12px 0 0;
    }

/* Icon stays inline with the title; logos and "and more!" get their own rows. */
.pricing-insurance-line__inner {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 14px;
    }
.pricing-insurance-line__icon,
.pricing-insurance-line__icon .fi-img {
    width: 22px;
    height: 22px;
    font-size: 22px;
    }
.pricing-insurance-line__copy {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    }
.pricing-insurance-line__head {
    gap: 8px;
    }
.pricing-insurance-line__title {
    font-size: 15px;
    }
.pricing-insurance-line__sub {
    font-size: 12px;
    }
.pricing-insurance-line__logos {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.pricing-insurance-line__logos img {
    width: 100%;
    max-width: 340px;
    height: auto;
    }
.pricing-insurance-line__more {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    text-align: center;
    font-size: 12px;
    }

/* DRB-159: self-pay + member side by side */
.pricing-hero__cards {
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 12px;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    }
.pricing-includes,
.pricing-doc {
    grid-column: 1 / -1;
    }
.pcard {
    padding: 20px 13px 16px;
    }
.pcard--member {
    padding-top: 34px;
    }
.pcard__title {
    font-size: 14px;
    margin-bottom: 8px;
    }
.pcard__price {
    font-size: 36px;
    }
.pcard__cur {
    font-size: 16px;
    }
.pcard__per {
    font-size: 11px;
    margin-bottom: 10px;
    }
.pcard__join {
    font-size: 11px;
    margin-bottom: 10px;
    }
.pcard__list {
    gap: 7px;
    margin-bottom: 14px;
    }
.pcard__list li {
    font-size: 12px;
    }
.pcard__list li i {
    font-size: 13px;
    }
.pcard__ribbon {
    font-size: 10px;
    letter-spacing: .05em;
    padding: 6px;
    }
.pcard__cta {
    padding: 11px 8px;
    font-size: 11px;
    }
.pricing-trust__list {
    display: grid;
    grid-template-columns: max-content;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 14px;
    }
.pricing-trust__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    border-right: 0;
    padding: 0;
    }
.pricing-trust__icon {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex: 0 0 44px;
    -ms-flex: 0 0 44px;
    flex: 0 0 44px;
    width: 44px;
    }
.pricing-includes__list {
    display: grid;
    grid-template-columns: max-content;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    }
.pricing-includes__list li {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    border-bottom: none;
    position: relative;
    }
.pricing-includes__list li:not(:last-child):after {
    content: '';
    position: absolute;
    bottom: 0;
    left: -999px;
    right: -999px;
    height: 1px;
    background: #d0dbe5;
    }
.pricing-includes__icon {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex: 0 0 34px;
    -ms-flex: 0 0 34px;
    flex: 0 0 34px;
    width: 34px;
    }
.pricing-compare__inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    }
.pricing-compare__panel {
    display: grid;
    grid-template-columns: max-content;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.pricing-compare__col {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 20px 28px;
    }
.pricing-compare__label,
.pricing-compare__sub {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.pricing-compare__row {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    }
.pricing-compare__col--with:before {
    left: 26px;
    right: 26px;
    top: auto;
    bottom: 0;
    width: auto;
    height: 1px;
    }
.pricing-compare__intro p {
    max-width: none;
    }
}

/* ===== FAQ "modern" variant (redesign 2026-06-17) — opt-in via the module's style=modern field.
   Heading beside a two-column card grid; "+" on the right. Keeps the legacy .accordion-item
   structure + max-height toggle (only restyled), so the toggle JS is untouched. ===== */
.faq-section--modern .faq-band {
    padding: 0;
    }
.faq-section--modern .accordion-item .top {
    background-color: #fff;
    }
.faq-section--modern .faq-band > .wrapper {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 40px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.faq-section--modern .faq-band > .wrapper > h2 {
    text-align: left;
    font-size: 30px;
    font-weight: 700;
    color: #002669;
    margin: 8px 0 0;
    }
.faq-section--modern .accordion {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 24px;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.faq-col {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 14px;
    }
.faq-section--modern .faq-col {
    gap: 0;
    }
.faq-section--modern .accordion-item {
    background: #fff;
    border-radius: 10px;
    margin: 0;
    -webkit-box-shadow: 0 2px 10px rgba(20,60,120,.06);
    box-shadow: 0 2px 10px rgba(20,60,120,.06);
    }

/* Border lives on the visible parts (.top / .bottom), never the wrapper — the wrapper's
   left/right edges didn't paint reliably when expanded. Closed: full border on .top.
   Open: .top gets top+sides (no bottom), .bottom gets sides+bottom, so they join seamlessly. */
.faq-section--modern .accordion-item:not(.on) .top {
    border: 1px solid #c4d0de;
    border-radius: 10px;
    }
.faq-section--modern .accordion-item.on .top {
    border: 1px solid #c4d0de;
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
    }
.faq-section--modern .accordion-item.on .bottom {
    border: 1px solid #c4d0de;
    border-top: 0;
    border-radius: 0 0 10px 10px;
    padding: 15px 0;
    }
.faq-section--modern .accordion-item .top {
    padding: 10px 18px;
    cursor: pointer;
    }
.faq-section--modern .accordion-item .top .layout {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 12px;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    }
.faq-section--modern .accordion-item .top .layout .info-accordion {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    }
.faq-section--modern .accordion-item .top .layout .icon {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 32px;
    }
.faq-section--modern .accordion-item .top .layout .icon i {
    color: #677174;
    font-size: 22px;
    }
.faq-section--modern .accordion-item .title h5 {
    font-size: 15px;
    font-weight: 600;
    color: #002669;
    margin: 0;
    }
.faq-section--modern .accordion-item .bottom p {
    padding: 0 18px 16px;
    font-size: 14px;
    color: #677174;
    line-height: 1.5;
    margin: 0;
    }
@media (max-width: 900px) {
.faq-section--modern .faq-band > .wrapper {
    grid-template-columns: 1fr;
    gap: 18px;
    }
.faq-section--modern .accordion {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    }
}

/* ===== Membership PAGE (rebuilt 2026-07-23, DRB-161) — .mem-*: wireframe layout:
   price-in-headline hero + bleeding photo, floating benefits card, centered plan cards,
   "$79 - $59 = $20+" savings band, horizontal medical-director card, why-choose strip,
   testimonials, CTA. Prices are API-driven; cents render as .mem-cents superscript. ===== */
.mem-section__title {
    text-align: center;
    font-size: 30px;
    font-weight: 800;
    color: #002669;
    margin: 0 0 8px;
    }
.mem-section__sub {
    text-align: center;
    font-size: 16px;
    color: #677174;
    margin: 0 0 36px;
    }
.mem-cents {
    font-size: .5em;
    font-weight: 800;
    vertical-align: super;
    line-height: 0;
    margin-left: 1px;
    }

/* hero — copy on the left; a positioned photo fills the band and feathers into the copy
   on its left edge, so it stays BESIDE the copy at EVERY width (the same .hiw-hero
   treatment the How It Works page uses) instead of stacking below on mobile. The band
   clips its own overflow so the photo never adds page scroll; the benefits card lives
   OUTSIDE the band, so its shadow and upward overlap are untouched. */
.mem-hero {
    position: relative;
    }
.mem-hero__band {
    position: relative;
    overflow: hidden;
    background: #fff;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 460px;
    }
.mem-hero__band > .wrapper {
    width: 100%;
    }
.mem-hero__photo {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 52%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 34%);
    -webkit-mask-image: linear-gradient(to right,transparent 0%,#000 34%);
    mask-image: -webkit-linear-gradient(to right,transparent 0%,#000 34%);
    mask-image: linear-gradient(to right,transparent 0%,#000 34%);
    }
.mem-hero__content {
    position: relative;
    z-index: 1;
    width: 52%;
    max-width: 560px;
    padding: 48px 0 62px;
    }
.mem-hero__eyebrow {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
    background: #e7effb;
    color: #145da7;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 18px;
    }
.mem-hero__eyebrow i {
    font-size: 11px;
    }
.mem-hero__title {
    font-size: 44px;
    line-height: 1.1;
    font-weight: 800;
    color: #002669;
    margin: 0 0 10px;
    }
.mem-hero__price {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 8px;
    margin: 0 0 16px;
    }
.mem-hero__amt {
    font-size: 64px;
    font-weight: 800;
    color: #326eb3;
    line-height: .9;
    }
.mem-hero__cur {
    font-size: .55em;
    font-weight: 800;
    vertical-align: top;
    margin-right: 2px;
    }
.mem-hero__amt .mem-cents {
    font-size: .42em;
    }
.mem-hero__per {
    font-size: 22px;
    font-weight: 600;
    color: #677174;
    padding-bottom: 8px;
    }
.mem-hero__sub {
    font-size: 17px;
    color: #677174;
    line-height: 1.55;
    margin: 0;
    max-width: 430px;
    }

/* benefits card — floats over the foot of the hero photo */
.mem-benefits {
    position: relative;
    z-index: 3;
    margin-top: -46px;
    }
.mem-benefits__list {
    list-style: none;
    margin: 0;
    padding: 18px 10px;
    background: #fff;
    border-radius: 16px;
    -webkit-box-shadow: 0 18px 44px rgba(20,60,120,.14);
    box-shadow: 0 18px 44px rgba(20,60,120,.14);
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.mem-benefits__list li {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    padding: 6px 18px;
    border-right: 1px solid #d0dbe5;
    }
.mem-benefits__list li:last-child {
    border-right: 0;
    }
.mem-benefits__icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #eef2fb;
    color: #145da7;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 18px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.mem-benefits__label {
    font-size: 13px;
    font-weight: 700;
    color: #002669;
    line-height: 1.25;
    }

/* plans */
.mem-plans {
    padding: 44px 0 28px;
    }
.mem-plans__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    max-width: 860px;
    margin: 0 auto;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    }
.mem-plan {
    position: relative;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    padding: 34px 30px;
    }
.mem-plan--family {
    border: 2px solid #326eb3;
    padding-top: 44px;
    }
.mem-plan__badge {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #146c43;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    padding: 7px 30px;
    border-radius: 0 0 8px 8px;
    white-space: nowrap;
    }
.mem-plan__top {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.mem-plan__icon {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: #eef2fb;
    color: #326eb3;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 28px;
    margin-bottom: 14px;
    }
.mem-plan__name {
    font-size: 20px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 6px;
    }
.mem-plan__price {
    font-size: 40px;
    font-weight: 800;
    color: #326eb3;
    line-height: 1;
    margin: 0 0 6px;
    }
.mem-plan__cur {
    font-size: .55em;
    font-weight: 800;
    vertical-align: top;
    margin-right: 1px;
    }
.mem-plan__price .mem-cents {
    font-size: .42em;
    }
.mem-plan__per {
    font-size: 15px;
    font-weight: 600;
    color: #677174;
    }
.mem-plan__desc {
    font-size: 14px;
    color: #677174;
    margin: 0 0 18px;
    }
.mem-plan__list {
    list-style: none;
    margin: 0 0 22px;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
    text-align: left;
    }
.mem-plan__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    color: #373435;
    line-height: 1.4;
    }
.mem-plan__list li i {
    color: #326eb3;
    font-size: 14px;
    margin-top: 3px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.mem-plan__cta {
    margin-top: auto;
    width: 100%;
    padding: 14px;
    border-radius: 8px;
    font-weight: 700;
    }
.mem-plan__cta--outline {
    background: #fff;
    border: 2px solid #326eb3;
    color: #326eb3;
    }

/* savings band — figures as three boxes joined by - and = */
.mem-save {
    padding: 10px 0 40px;
    }
.mem-save__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 28px;
    background: #eff4f8;
    border-radius: 20px;
    padding: 28px 32px;
    }
.mem-save__intro {
    -webkit-flex: 1.1;
    -ms-flex: 1.1;
    flex: 1.1;
    min-width: 220px;
    }
.mem-save__title {
    font-size: 26px;
    font-weight: 800;
    color: #002669;
    margin: 0 0 8px;
    }
.mem-save__lead {
    font-size: 15px;
    color: #002669;
    line-height: 1.5;
    margin: 0;
    }
.mem-save__calc {
    -webkit-flex: 2;
    -ms-flex: 2;
    flex: 2;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 12px;
    }
.mem-save__box {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 180px;
    background: #fff;
    border-radius: 14px;
    padding: 16px 12px;
    text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    -webkit-box-shadow: 0 6px 18px rgba(20,60,120,.06);
    box-shadow: 0 6px 18px rgba(20,60,120,.06);
    }
.mem-save__box--result {
    background: #e9f9f0;
    -webkit-box-shadow: none;
    box-shadow: none;
    }
.mem-save__cap {
    font-size: 12px;
    font-weight: 600;
    color: #677174;
    line-height: 1.3;
    }
.mem-save__amt {
    font-size: 34px;
    font-weight: 800;
    line-height: 1;
    }
.mem-save__amt--out {
    color: #eb3b5a;
    }
.mem-save__amt--in {
    color: #326eb3;
    }
.mem-save__amt--save {
    color: #146c43;
    }
.mem-save__op {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 24px;
    font-weight: 700;
    color: #002669;
    }

/* medical director — photo · identity · check points */
.mem-doc-section {
    padding: 28px 0 40px;
    }
.mem-doc {
    display: grid;
    grid-template-columns: 132px 1.4fr 1fr;
    gap: 34px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: #eef4fb;
    border-radius: 20px;
    padding: 28px 34px;
    }
.mem-doc--nophoto {
    grid-template-columns: 1.4fr 1fr;
    }
.mem-doc__photo {
    width: 132px;
    height: 132px;
    border-radius: 50%;
    overflow: hidden;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.mem-doc__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    }
.mem-doc__eyebrow {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #326eb3;
    margin-bottom: 4px;
    }
.mem-doc__name {
    font-size: 22px;
    font-weight: 800;
    color: #002669;
    margin: 0 0 2px;
    }
.mem-doc__spec {
    font-size: 14px;
    color: #677174;
    margin: 0 0 8px;
    }
.mem-doc__rating {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 14px;
    font-weight: 700;
    color: #002669;
    }
.mem-doc__stars {
    color: #a85c00;
    letter-spacing: 1px;
    }
.mem-doc__years {
    color: #677174;
    font-weight: 500;
    }
.mem-doc__points {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
    }
.mem-doc__points li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    font-weight: 600;
    color: #002669;
    line-height: 1.35;
    }
.mem-doc__points li i {
    color: #326eb3;
    font-size: 17px;
    margin-top: 1px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* why-choose strip */
.mem-why {
    padding: 8px 0 44px;
    }
.mem-why .mem-section__title {
    margin-bottom: 32px;
    }
.mem-why__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 18px;
    }
.mem-why__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 12px;
    }
.mem-why__icon {
    color: #145da7;
    font-size: 32px;
    line-height: 1;
    }
.mem-why__label {
    font-size: 13px;
    font-weight: 700;
    color: #002669;
    line-height: 1.3;
    }

/* testimonials */
.mem-tst {
    padding: 8px 0 44px;
    }
.mem-tst__grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px;
    }
.mem-tst__card {
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 14px;
    padding: 22px;
    }
.mem-tst__stars {
    color: #a85c00;
    margin-bottom: 10px;
    }
.mem-tst__quote {
    font-size: 14px;
    color: #373435;
    line-height: 1.5;
    font-style: italic;
    margin: 0 0 12px;
    }
.mem-tst__name {
    font-size: 13px;
    font-weight: 700;
    color: #002669;
    margin: 0;
    }

/* closing CTA */
.mem-cta {
    padding: 8px 0 56px;
    }
.mem-cta__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
    background: #326eb3;
    border-radius: 20px;
    padding: 30px 40px;
    }
.mem-cta__lead {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    }
.mem-cta__icon {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(255,255,255,.16);
    color: #fff;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 22px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.mem-cta__title {
    font-size: 24px;
    font-weight: 800;
    color: #fff;
    margin: 0 0 4px;
    }
.mem-cta__sub {
    font-size: 15px;
    color: rgba(255,255,255,.9);
    margin: 0;
    max-width: 520px;
    }
.mem-cta__actions {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 14px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.mem-cta__actions .btn {
    padding: 13px 26px;
    border: 2px solid transparent;
    border-radius: 8px;
    line-height: 1.2;
    font-weight: 700;
    }
.mem-cta__outline {
    background: transparent;
    border: 2px solid #fff !important;
    color: #fff;
    }
@media (max-width: 980px) {
/* keep the photo beside the copy (never stack): it stays a right-edge crop and the
     copy insets to clear it, exactly as the How It Works hero behaves on mobile.
     The photo runs 76% wide rather than a narrow slice so the whole family stays in
     frame; the mask holds it fully transparent for its first 30% and only reaches
     opaque at 80%, so the part sitting behind the copy stays under ~20% opacity. */
.mem-hero__band {
    display: block;
    min-height: 0;
    }
.mem-hero__photo {
    width: 76%;
    -webkit-mask-image: -webkit-linear-gradient(to right,transparent 30%,#000 80%);
    -webkit-mask-image: linear-gradient(to right,transparent 30%,#000 80%);
    mask-image: -webkit-linear-gradient(to right,transparent 30%,#000 80%);
    mask-image: linear-gradient(to right,transparent 30%,#000 80%);
    }
.mem-hero__content {
    width: auto;
    max-width: none;
    padding: 30px 0 54px;
    }
.mem-hero__title,
.mem-hero__price,
.mem-hero__sub {
    padding-right: 45%;
    }
.mem-hero__sub {
    max-width: none;
    }
.mem-benefits {
    margin-top: -40px;
    }

/* The desktop strip puts the icon BESIDE its label, which is what stops 5 fitting
     across a tablet. Stacking the icon ABOVE the label fits all five on one row down
     to phone width, so the card stays a banner instead of a 3+2 grid with a hole in
     it — and it drops ~145px of height on the way to the plans. */
.mem-benefits__list {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 14px 8px;
    }
.mem-benefits__list li {
    -webkit-flex: 1 1 20%;
    -ms-flex: 1 1 20%;
    flex: 1 1 20%;
    min-width: 0;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    gap: 8px;
    padding: 10px 6px;
    border-right: 0;
    }
.mem-save__inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 18px;
    }
.mem-save__intro {
    text-align: center;
    }
.mem-save__calc {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.mem-doc {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    gap: 18px;
    padding: 28px 24px;
    }
.mem-doc--nophoto {
    grid-template-columns: 1fr;
    }
.mem-doc__rating {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.mem-doc__points {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    text-align: left;
    }
.mem-why__list {
    grid-template-columns: repeat(3,1fr);
    gap: 24px 18px;
    }
.mem-tst__grid {
    grid-template-columns: 1fr;
    }
.mem-cta__inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    padding: 28px 24px;
    }
.mem-cta__lead {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    }
.mem-cta__actions {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
}

@media (max-width: 560px) {
/* Phone height budget (DRB-161 follow-up): the plan prices have to clear the fold,
     and the sticky "Ready to feel better?" bar eats the last ~65px of the viewport.
     Every rule below buys height back — the eyebrow goes, the copy tightens, and the
     benefits card becomes a single-row banner instead of a 3+2 grid. */
.mem-hero__content {
    padding: 16px 0 34px;
    }

/* the MEMBERSHIP chip is desktop-only — it costs ~38px here and the <h1> already
     says what the page is */
.mem-hero__eyebrow {
    display: none;
    }
.mem-hero__title {
    font-size: 24px;
    }
.mem-hero__amt {
    font-size: 44px;
    }
.mem-hero__per {
    font-size: 16px;
    padding-bottom: 5px;
    }
.mem-hero__sub {
    font-size: 14px;
    }
.mem-benefits {
    margin-top: -26px;
    }

/* one row of five, not a 3+2 grid — half the height and closer to the "banner"
     the ticket asked for. Top-aligned so the icons stay on one line even when a
     longer label ("Cover the Whole Family") runs to three lines at 360px. */
.mem-benefits__list {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 11px 2px;
    }
.mem-benefits__list li {
    -webkit-flex: 1 1 20%;
    -ms-flex: 1 1 20%;
    flex: 1 1 20%;
    min-width: 0;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    gap: 6px;
    padding: 4px 2px;
    border-right: 0;
    }
.mem-benefits__icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    font-size: 13px;
    }
.mem-benefits__label {
    font-size: 10px;
    line-height: 1.2;
    }
.mem-section__title {
    font-size: 20px;
    }
.mem-section__sub {
    font-size: 13px;
    margin-bottom: 16px;
    }

/* keep the two plans side by side on a condensed scale */
.mem-plans {
    padding: 16px 0 18px;
    }
.mem-plans__grid {
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    }
.mem-plan {
    padding: 22px 12px;
    border-radius: 12px;
    }
.mem-plan--family {
    padding-top: 30px;
    }
.mem-plan__badge {
    font-size: 9px;
    letter-spacing: .02em;
    padding: 5px 10px;
    }
.mem-plan__icon {
    width: 46px;
    height: 46px;
    font-size: 20px;
    margin-bottom: 10px;
    }
.mem-plan__name {
    font-size: 15px;
    }
.mem-plan__price {
    font-size: 28px;
    }
.mem-plan__per {
    font-size: 12px;
    }
.mem-plan__desc {
    font-size: 12px;
    margin-bottom: 14px;
    }
.mem-plan__list {
    gap: 9px;
    margin-bottom: 16px;
    }
.mem-plan__list li {
    font-size: 12px;
    gap: 7px;
    line-height: 1.35;
    }
.mem-plan__cta {
    padding: 12px 6px;
    font-size: 12px;
    }

/* savings figures stack vertically with the operators between */
.mem-save__calc {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 8px;
    }
.mem-save__box {
    max-width: none;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: left;
    padding: 14px 18px;
    }
.mem-save__cap {
    max-width: 60%;
    }
.mem-save__amt {
    font-size: 28px;
    }
.mem-save__op {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }
.mem-doc__photo {
    width: 110px;
    height: 110px;
    }
.mem-why__list {
    grid-template-columns: repeat(3,1fr);
    gap: 20px 12px;
    }
.mem-why__icon {
    font-size: 26px;
    }
.mem-why__label {
    font-size: 12px;
    }
.mem-cta__title {
    font-size: 20px;
    }
.mem-cta__actions {
    width: 100%;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.mem-cta__actions .btn {
    width: 100%;
    text-align: center;
    }
}

/* ===== About PAGE (DRB-170) — .about-*: hero, mission/story/values, stats, director, CTA ===== */
/* hero */
.about-hero {
    padding: 34px 0 44px;
    }
.about-hero__grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 44px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }
.about-hero__eyebrow {
    display: block;
    color: #145da7;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    margin-bottom: 14px;
    }
.about-hero__title {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.12;
    color: #002669;
    margin: 0 0 18px;
    }
.about-hero__sub {
    font-size: 17px;
    line-height: 1.6;
    color: #677174;
    margin: 0 0 34px;
    max-width: 520px;
    }
.about-hero__features {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    }
.about-hero__feat {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 7px;
    padding: 0 14px;
    }
.about-hero__feat + .about-hero__feat {
    border-left: 1px solid #e2e7f0;
    }
.about-hero__feat i {
    color: #145da7;
    font-size: 30px;
    margin-bottom: 4px;
    }
.about-hero__feat-title {
    font-size: 14px;
    font-weight: 700;
    color: #002669;
    line-height: 1.3;
    }
.about-hero__feat-desc {
    font-size: 12.5px;
    color: #677174;
    line-height: 1.45;
    }
.about-hero__media {
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.about-hero__photo {
    display: block;
    width: 100%;
    height: auto;
    }

/* The availability pill only exists in the phone design; see the =<980px block. */
.about-hero__badge {
    display: none;
    }

/* Mission / Story / Values cards */
.about-msv {
    padding: 10px 0 26px;
    }
.about-msv__grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
    }
.about-msv__card {
    background: #f4f6fa;
    border-radius: 18px;
    padding: 30px 28px;
    }
.about-msv__head {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    margin-bottom: 6px;
    }
.about-msv__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #e6edf9;
    color: #145da7;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 24px;
    }
.about-msv__title {
    font-size: 21px;
    font-weight: 700;
    color: #145da7;
    margin: 0;
    }
.about-msv__accent {
    display: block;
    width: 34px;
    height: 3px;
    border-radius: 2px;
    background: #145da7;
    margin: 0 0 16px 74px;
    }
.about-msv__copy {
    font-size: 15px;
    line-height: 1.65;
    color: #677174;
    margin: 0 0 14px;
    }
.about-msv__copy:last-child {
    margin-bottom: 0;
    }
.about-msv__values {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
    }
.about-msv__value {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 12px;
    }
.about-msv__value-icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #145da7;
    font-size: 19px;
    }
.about-msv__value-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
    }
.about-msv__value-title {
    font-size: 15px;
    font-weight: 700;
    color: #002669;
    }
.about-msv__value-desc {
    font-size: 14px;
    line-height: 1.5;
    color: #677174;
    }

/* "Why Patients Choose Us" stats band */
.about-stats {
    padding: 16px 0 26px;
    }
.about-stats__band {
    background: #f4f6fa;
    border-radius: 16px;
    padding: 22px 16px;
    }

/* Heading only exists in the phone design's card treatment. */
.about-stats__heading {
    display: none;
    font-size: 20px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 18px;
    }
.about-stats__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    }
.about-stats__item {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 12px;
    padding: 2px 12px;
    }
.about-stats__item + .about-stats__item {
    border-left: 1px solid #dde3ee;
    }
.about-stats__item i {
    color: #145da7;
    font-size: 24px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.about-stats__text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1px;
    }
.about-stats__value {
    font-size: 17px;
    font-weight: 800;
    color: #002669;
    line-height: 1.2;
    }
.about-stats__label {
    font-size: 12.5px;
    color: #677174;
    line-height: 1.35;
    }

/* Medical Director */
.about-md {
    padding: 16px 0 26px;
    }
.about-md__inner {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: #f4f6fa;
    border-radius: 18px;
    padding: 34px 38px;
    }
.about-md__photo img {
    display: block;
    width: 100%;
    border-radius: 14px;
    }
.about-md__eyebrow {
    display: block;
    color: #145da7;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    margin-bottom: 8px;
    }
.about-md__title {
    font-size: 28px;
    font-weight: 700;
    color: #002669;
    margin: 0 0 10px;
    }
.about-md__accent {
    display: block;
    width: 34px;
    height: 3px;
    border-radius: 2px;
    background: #145da7;
    margin-bottom: 18px;
    }
.about-md__name {
    font-size: 19px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 4px;
    }
.about-md__spec {
    font-size: 14.5px;
    font-weight: 600;
    color: #002669;
    margin: 0 0 12px;
    }
.about-md__bio {
    font-size: 15px;
    line-height: 1.6;
    color: #677174;
    margin: 0 0 16px;
    max-width: 640px;
    }
.about-md__bullets {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 9px;
    }
.about-md__bullets li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 9px;
    font-size: 14.5px;
    color: #002669;
    }
.about-md__bullets li i {
    color: #145da7;
    font-size: 16px;
    margin-top: 2px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* CTA band — this page ends on its own richer CTA, so the generic ReadyToStart module
   band the CMS appends after .about-page is suppressed here (the pages-table JSON stays
   untouched across environments). */
.about-page ~ .home-cta {
    display: none;
    }
.about-cta {
    padding: 16px 0 52px;
    }
.about-cta__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 28px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #313c93;
    border-radius: 20px;
    padding: 34px 40px;
    }
.about-cta__lead {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 22px;
    }
.about-cta__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    border-radius: 14px;
    background: rgba(255,255,255,.14);
    color: #fff;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 26px;
    }
.about-cta__title {
    font-size: 25px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 6px;
    }
.about-cta__services {
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 4px;
    }
.about-cta__sub {
    font-size: 14px;
    color: rgba(255,255,255,.75);
    margin: 0;
    }
.about-cta__action {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    }
.about-cta__btn {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    background: #fff;
    color: #313c93 !important;
    font-size: 14px;
    font-weight: 700;
    padding: 15px 28px;
    border-radius: 10px;
    text-decoration: none !important;
    -webkit-transition: transform .15s ease,box-shadow .15s ease;
    transition: transform .15s ease,box-shadow .15s ease;
    }
.about-cta__btn:hover {
    -webkit-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    transform: translateY(-1px);
    -webkit-box-shadow: 0 10px 24px rgba(0,0,0,.22);
    box-shadow: 0 10px 24px rgba(0,0,0,.22);
    }
.about-cta__btn i {
    font-size: 12px;
    }
.about-cta__note {
    font-size: 12.5px;
    color: rgba(255,255,255,.75);
    margin: 0;
    text-align: center;
    }
@media (max-width: 980px) {
.about-hero {
    padding-top: 20px;
    }

/* Phone design interleaves the columns: copy, then the photo (pill overlapping its
     bottom edge), then the feature grid. The features sit inside __content, so the grid
     goes single-column flex and __content dissolves (display: contents) to let its
     children order against __media directly. */
.about-hero__grid {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 0;
    }
.about-hero__content {
    display: contents;
    }
.about-hero__title {
    font-size: 34px;
    }
.about-hero__sub {
    margin-bottom: 22px;
    max-width: none;
    }
.about-hero__media {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 26px;
    }
.about-hero__photo {
    max-width: 440px;
    }
.about-hero__badge {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2px;
    background: #fff;
    border: 1px solid #e4e9f2;
    border-radius: 14px;
    -webkit-box-shadow: 0 10px 26px rgba(20,60,120,.12);
    box-shadow: 0 10px 26px rgba(20,60,120,.12);
    padding: 10px 22px;
    margin-top: -26px;
    position: relative;
    z-index: 1;
    }
.about-hero__badge-status {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #002669;
    }
.about-hero__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2edb7a;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.about-hero__badge-wait {
    font-size: 12.5px;
    color: #677174;
    }
.about-hero__features {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    grid-template-columns: 1fr 1fr;
    row-gap: 26px;
    }
.about-hero__feat:nth-child(3) {
    border-left: 0;
    }
.about-msv__grid {
    grid-template-columns: 1fr;
    }
.about-stats__heading {
    display: block;
    }
.about-stats__band {
    padding: 24px 26px;
    }
.about-stats__list {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 18px;
    }
.about-stats__item {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 0;
    }
.about-stats__item + .about-stats__item {
    border-left: 0;
    }
.about-md__inner {
    grid-template-columns: 1fr;
    gap: 22px;
    text-align: center;
    padding: 30px 24px;
    }
.about-md__photo {
    max-width: 210px;
    margin: 0 auto;
    }
.about-md__photo img {
    border-radius: 50%;
    aspect-ratio: 1;
    object-fit: cover;
    object-position: top;
    }
.about-md__accent {
    margin-left: auto;
    margin-right: auto;
    }
.about-md__bio {
    margin-left: auto;
    margin-right: auto;
    }
.about-md__bullets {
    max-width: 420px;
    margin: 0 auto;
    text-align: left;
    }
.about-cta__inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    padding: 30px 24px;
    }
.about-cta__lead {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.about-cta__action {
    width: 100%;
    }
.about-cta__btn {
    width: 100%;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
}

@media (max-width: 560px) {
.about-hero__title {
    font-size: 30px;
    }
.about-hero__features {
    row-gap: 22px;
    }
.about-hero__feat {
    padding: 0 10px;
    }
}

/* ===== Support PAGE (DRB-173) — .sup-*: hero+search, help cards, trust strip, form + ways, FAQs, CTA ===== */
/* hero */
.sup-hero {
    background: #eaf1fb;
    }
.sup-hero__grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 40px;
    -webkit-align-items: end;
    align-items: end;
    }
.sup-hero__content {
    padding: 48px 0 52px;
    }
.sup-hero__eyebrow {
    display: block;
    color: #145da7;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    margin-bottom: 12px;
    }
.sup-hero__title {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.12;
    color: #002669;
    margin: 0 0 16px;
    }
.sup-hero__sub {
    font-size: 16.5px;
    line-height: 1.6;
    color: #677174;
    margin: 0 0 26px;
    max-width: 480px;
    }
.sup-hero__search {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #dfe5f0;
    border-radius: 12px;
    padding: 14px 18px;
    max-width: 520px;
    -webkit-box-shadow: 0 8px 22px rgba(20,60,120,.07);
    box-shadow: 0 8px 22px rgba(20,60,120,.07);
    cursor: text;
    }
.sup-hero__search i {
    color: #677174;
    font-size: 15px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.sup-hero__search input {
    border: 0;
    outline: none;
    background: none;
    width: 100%;
    font-size: 15px;
    color: #002669;
    padding: 0;
    margin: 0;
    }
.sup-hero__media {
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    position: relative;
    }
.sup-hero__media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 30%;
    -webkit-mask-image: -webkit-linear-gradient(to right,transparent,#000 14%,#000 86%,transparent),-webkit-linear-gradient(to bottom,transparent,#000 16%,#000 84%,transparent);
    -webkit-mask-image: linear-gradient(to right,transparent,#000 14%,#000 86%,transparent),linear-gradient(to bottom,transparent,#000 16%,#000 84%,transparent);
    -webkit-mask-composite: source-in;
    mask-image: -webkit-linear-gradient(to right,transparent,#000 14%,#000 86%,transparent),-webkit-linear-gradient(to bottom,transparent,#000 16%,#000 84%,transparent);
    mask-image: linear-gradient(to right,transparent,#000 14%,#000 86%,transparent),linear-gradient(to bottom,transparent,#000 16%,#000 84%,transparent);
    mask-composite: intersect;
    }

/* help cards */
.sup-help {
    padding: 40px 0 8px;
    }
.sup-help__grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
    }
.sup-help__card {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 18px;
    background: #fff;
    border: 1px solid #e4e9f2;
    border-radius: 16px;
    padding: 26px 24px;
    text-decoration: none !important;
    -webkit-transition: transform .15s ease,box-shadow .15s ease;
    transition: transform .15s ease,box-shadow .15s ease;
    }
.sup-help__card:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 12px 28px rgba(20,60,120,.1);
    box-shadow: 0 12px 28px rgba(20,60,120,.1);
    }
.sup-help__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    }
.sup-help__card--contact .sup-help__icon {
    background: #145da7;
    }
.sup-help__card--faq .sup-help__icon {
    background: #1d9e64;
    }
.sup-help__card--issue .sup-help__icon {
    background: #f5a11c;
    }
.sup-help__title {
    font-size: 17px;
    font-weight: 700;
    color: #002669;
    margin: 2px 0 6px;
    }
.sup-help__desc {
    font-size: 14px;
    line-height: 1.55;
    color: #677174;
    margin: 0 0 12px;
    }
.sup-help__cta {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
    font-size: 14px;
    font-weight: 700;
    color: #145da7;
    }
.sup-help__cta i {
    font-size: 11px;
    -webkit-transition: transform .15s ease;
    transition: transform .15s ease;
    }
.sup-help__card:hover .sup-help__cta i {
    -webkit-transform: translateX(3px);
    -ms-transform: translateX(3px);
    transform: translateX(3px);
    }

/* trust strip */
.sup-trust {
    padding: 26px 0 8px;
    }
.sup-trust__band {
    list-style: none;
    margin: 0;
    padding: 18px 16px;
    background: #eef3fb;
    border-radius: 14px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px 22px;
    }
.sup-trust__item {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 9px;
    font-size: 13.5px;
    font-weight: 700;
    color: #002669;
    line-height: 1.3;
    max-width: 190px;
    }
.sup-trust__item i {
    color: #145da7;
    font-size: 19px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* form + ways */
.sup-contact {
    padding: 34px 0 10px;
    }
.sup-contact__grid {
    display: grid;
    grid-template-columns: 1fr .82fr;
    gap: 28px;
    -webkit-align-items: start;
    align-items: start;
    }
.sup-contact__form,
.sup-contact__ways {
    background: #fff;
    border: 1px solid #e4e9f2;
    border-radius: 16px;
    padding: 30px 28px;
    }
.sup-card__title {
    font-size: 22px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 6px;
    }
.sup-card__sub {
    font-size: 14.5px;
    color: #677174;
    line-height: 1.55;
    margin: 0 0 18px;
    }
.sup-ways__list {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.sup-ways__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 0;
    }
.sup-ways__list li + li {
    border-top: 1px solid #edf0f6;
    }
.sup-ways__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #e6edf9;
    color: #145da7;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 19px;
    }
.sup-ways__body {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
    }
.sup-ways__label {
    font-size: 15.5px;
    font-weight: 700;
    color: #145da7;
    }
.sup-ways__body a {
    color: #002669 !important;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    word-break: break-word;
    }
.sup-ways__body a:hover {
    text-decoration: underline;
    }
.sup-ways__sub {
    font-size: 13.5px;
    color: #677174;
    line-height: 1.5;
    }
.sup-ways__sub--lg {
    font-size: 15px;
    color: #002669;
    font-weight: 600;
    }

/* FAQs */
.support-faqs-section {
    padding: 30px 0 14px;
    }
.sup-faq__head {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 16px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
    }
.sup-faq__title {
    font-size: 26px;
    font-weight: 700;
    color: #145da7;
    margin: 0;
    }
.sup-faq__viewall {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 14.5px;
    font-weight: 700;
    color: #145da7 !important;
    text-decoration: none !important;
    white-space: nowrap;
    }
.sup-faq__viewall i {
    font-size: 11px;
    }
.sup-faq__viewall:hover {
    text-decoration: underline !important;
    }
.support-faqs .faq-band {
    background: none;
    padding: 0;
    }
.support-faqs .faq-band > .wrapper {
    display: block;
    }

/* conversion band */
.sup-cta {
    padding: 26px 0 52px;
    }
.sup-cta__inner {
    display: grid;
    grid-template-columns: 290px 1fr auto;
    gap: 34px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: #313c93;
    border-radius: 20px;
    padding: 30px 36px;
    }
.sup-cta__photo img {
    display: block;
    width: 100%;
    border-radius: 14px;
    }
.sup-cta__title {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 4px;
    }
.sup-cta__sub {
    font-size: 15px;
    color: rgba(255,255,255,.85);
    margin: 0 0 22px;
    }
.sup-cta__feats {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 26px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.sup-cta__feats li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 8px;
    max-width: 110px;
    font-size: 12.5px;
    line-height: 1.4;
    color: rgba(255,255,255,.9);
    }
.sup-cta__feats li i {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1.5px solid rgba(255,255,255,.5);
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 17px;
    color: #fff;
    }
.sup-cta__buy {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 12px;
    min-width: 330px;
    }
.sup-cta__prices {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    }
.sup-cta__prices li {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2px;
    padding: 0 14px;
    text-align: left;
    }
.sup-cta__prices li:first-child {
    padding-left: 0;
    }
.sup-cta__prices li + li {
    border-left: 1px solid rgba(255,255,255,.25);
    }
.sup-cta__price {
    font-size: 27px;
    font-weight: 800;
    color: #fff;
    line-height: 1.1;
    }
.sup-cta__ins-title {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    }
.sup-cta__price-label {
    font-size: 12px;
    color: rgba(255,255,255,.75);
    line-height: 1.35;
    }
.sup-cta__btn {
    display: block;
    background: #fff;
    color: #313c93 !important;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    padding: 14px 22px;
    border-radius: 10px;
    text-decoration: none !important;
    -webkit-transition: transform .15s ease,box-shadow .15s ease;
    transition: transform .15s ease,box-shadow .15s ease;
    }
.sup-cta__btn:hover {
    -webkit-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    transform: translateY(-1px);
    -webkit-box-shadow: 0 10px 24px rgba(0,0,0,.22);
    box-shadow: 0 10px 24px rgba(0,0,0,.22);
    }
.sup-cta__note {
    font-size: 12px;
    color: rgba(255,255,255,.75);
    text-align: center;
    margin: 0;
    }
@media (max-width: 1100px) {
.sup-cta__inner {
    grid-template-columns: 1fr;
    text-align: center;
    }
.sup-cta__photo {
    max-width: 420px;
    margin: 0 auto;
    }
.sup-cta__feats {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.sup-cta__buy {
    min-width: 0;
    }
.sup-cta__prices {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.sup-cta__prices li {
    text-align: center;
    }
}

@media (max-width: 900px) {
/* Phone design: copy and search first, the agent image tucked under them. */
.sup-hero__grid {
    grid-template-columns: 1fr;
    gap: 0;
    }
.sup-hero__content {
    padding: 30px 0 26px;
    }
.sup-hero__title {
    font-size: 34px;
    }
.sup-hero__media {
    height: 240px;
    }
.sup-trust__band {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    }
.sup-trust__item {
    max-width: none;
    }
}

@media (max-width: 980px) {
.sup-help__grid {
    grid-template-columns: 1fr;
    gap: 18px;
    }
.sup-contact__grid {
    grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
.sup-hero__title {
    font-size: 30px;
    }
.sup-cta__prices {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 14px;
    }
.sup-cta__prices li {
    padding: 0;
    }
.sup-cta__prices li + li {
    border-left: 0;
    }
}

/* ===== Membership band (redesign 2026-06-16) — "Save $X Every Visit with Membership" ===== */
.membership-band .wrapper {
    color: #373435;
    margin: 32px auto;
    }
.membership-band__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    padding: 24px 32px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-radius: 10px;
    }
.membership-band__lead {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    -webkit-flex: 1 1 320px;
    -ms-flex: 1 1 320px;
    flex: 1 1 320px;
    min-width: 280px;
    }
.membership-band__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 104px;
    height: 104px;
    border-radius: 50%;
    background: #fff;
    color: #145da7;
    font-size: 58px;
    line-height: 1;
    }
.membership-band__title {
    font-size: 34px;
    font-weight: 700;
    color: #145da7;
    margin: 0 0 8px;
    line-height: 1.2;
    }
.membership-band__desc {
    margin: 0;
    font-size: 15px;
    line-height: 1.45;
    color: #677174;
    }
.membership-band__benefits {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 18px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    }
.membership-band__benefit {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: bold;
    color: #373435;
    }
.membership-band__benefit i,
.membership-band__benefit .fi-img {
    color: #20bf6b;
    font-size: 18px;
    }
.membership-band__card {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    -webkit-box-shadow: 0 12px 30px rgba(20,60,120,.1);
    box-shadow: 0 12px 30px rgba(20,60,120,.1);
    padding: 22px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 28px;
    min-width: 250px;
    }
.membership-band__plans {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0;
    }
.membership-band__plan {
    text-align: center;
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    padding: 0 14px;
    }
.membership-band__plan + .membership-band__plan {
    border-left: 1px solid #d0dbe5;
    }
.membership-band__plan-label {
    display: block;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #145da7;
    margin-bottom: 10px;
    }
.membership-band__plan-price {
    display: block;
    font-size: 32px;
    font-weight: 700;
    color: #145da7;
    line-height: 1.1;
    }
.membership-band__plan-price small {
    font-size: 12px;
    font-weight: 600;
    color: #677174;
    }
.membership-band__cta {
    display: block;
    width: 100%;
    text-align: center;
    background-color: #007e93;
    }
@media (max-width: 1024px) {
.membership-band__inner {
    gap: 28px;
    }
.membership-band__lead {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    }
}

@media (max-width: 600px) {
.membership-band__card {
    width: 100%;
    }
}

/* ===== Home "Meet Your Providers" (redesign 2026-06-16) — scoped .home-providers ===== */
.home-providers {
    padding: 48px 0;
    }
.home-providers__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.home-providers__intro {
    -webkit-flex: 0 0 280px;
    -ms-flex: 0 0 280px;
    flex: 0 0 280px;
    max-width: 300px;
    }
.home-providers__heading {
    font-size: 32px;
    font-weight: 700;
    color: #373435;
    margin: 0 0 12px;
    }
.home-providers__lead {
    color: #677174;
    font-size: 15px;
    line-height: 1.5;
    margin: 0 0 16px;
    }
.home-providers__points {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
    }
.home-providers__points li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    color: #373435;
    }
.home-providers__points i,
.home-providers__points .fi-img {
    color: #326eb3;
    font-size: 18px;
    }
.home-providers__carousel {
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    position: relative;
    }
.home-providers__track {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 24px;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
.home-providers__track--slider {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding-bottom: 4px;
    }
.home-providers__track--slider::-webkit-scrollbar {
    display: none;
    }
.home-providers__card {
    -webkit-flex: 0 0 220px;
    -ms-flex: 0 0 220px;
    flex: 0 0 220px;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    padding: 22px;
    text-align: center;
    -webkit-box-shadow: 0 8px 24px rgba(20,60,120,.08);
    box-shadow: 0 8px 24px rgba(20,60,120,.08);
    scroll-snap-align: start;
    }
.home-providers__photo {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 14px;
    display: block;
    border: 3px solid #eff4f8;
    }
.home-providers__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    }
.home-providers__photo--empty {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #eff4f8;
    color: #145da7;
    font-size: 38px;
    }
.home-providers__name {
    font-size: 17px;
    color: #373435;
    margin: 0 0 4px;
    }
.home-providers__spec {
    font-size: 13px;
    color: #677174;
    margin: 0 0 10px;
    }
.home-providers__rating {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    }
.home-providers__stars {
    color: #a85c00;
    font-size: 13px;
    letter-spacing: 1px;
    }
.home-providers__reviews {
    color: #677174;
    font-size: 12px;
    }
.home-providers__nav {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 2;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid #d0dbe5;
    background: #fff;
    color: #145da7;
    cursor: pointer;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-shadow: 0 4px 14px rgba(20,60,120,.15);
    box-shadow: 0 4px 14px rgba(20,60,120,.15);
    -webkit-transition: background .15s ease,color .15s ease;
    transition: background .15s ease,color .15s ease;
    }
.home-providers__nav[hidden] {
    display: none;
    }
.home-providers__nav--prev {
    left: -8px;
    }
.home-providers__nav--next {
    right: -8px;
    }
.home-providers__nav:hover {
    background: #145da7;
    color: #fff;
    border-color: #145da7;
    }
@media (max-width: 900px) {
.home-providers__intro {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    max-width: none;
    }
}

/* ===== Home "What Patients Are Saying" (redesign 2026-06-16) — scoped .home-testimonials ===== */
.home-testimonials {
    padding: 48px 0;
    }
.home-testimonials__heading {
    text-align: center;
    font-size: 34px;
    font-weight: 700;
    color: #373435;
    margin: 0 0 40px;
    }
.home-testimonials__grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 28px;
    }
.home-testimonials__card {
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    padding: 26px;
    -webkit-box-shadow: 0 8px 24px rgba(20,60,120,.06);
    box-shadow: 0 8px 24px rgba(20,60,120,.06);
    }
.home-testimonials__stars {
    color: #a85c00;
    font-size: 15px;
    letter-spacing: 2px;
    margin-bottom: 14px;
    }
.home-testimonials__quote {
    color: #373435;
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 14px;
    }
.home-testimonials__name {
    color: #677174;
    font-weight: 700;
    font-size: 14px;
    margin: 0;
    }
@media (max-width: 900px) {
.home-testimonials__grid {
    grid-template-columns: 1fr;
    max-width: 520px;
    margin: 0 auto;
    }
body.home .home-testimonials__heading {
    margin-bottom: 24px;
    }
}

/* ===== "Ready to feel better?" CTA band (redesign 2026-06-16) — scoped .home-cta (mirrors the .membership-band wrapper idea) ===== */
.home-cta {
    padding: 48px 0;
    }
.home-cta__inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 32px;
    padding: 30px 40px;
    border-radius: 10px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    color: #fff;
    }
.home-cta__lead {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    }
.home-cta__icon {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 78px;
    height: 78px;
    border-radius: 100%;
    background: rgba(255,255,255,.15);
    color: #fff;
    font-size: 36px;
    }
.home-cta__icon .fi-img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    }
.home-hero__card-list li .fi-img {
    width: 15px;
    height: 15px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.home-cta__title {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin: 0;
    line-height: 1.2;
    }
.home-cta__subtitle {
    margin: 6px 0 0;
    font-size: 15px;
    line-height: 1.45;
    color: #fff;
    opacity: .9;
    max-width: 230px;
    }
.home-cta__btn {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
@media (max-width: 700px) {
.home-cta__inner {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 20px;
    padding: 26px 24px;
    }
.home-cta__btn {
    width: 100%;
    text-align: center;
    }
}

/* ===== What We Treat page (redesign 2026-06-16): category cards + condition grid + tall doctor panel ===== */
/* Category cards (Urgent / Primary / Mental) styled as descriptive cards */
.what-we-treat .tabs-container {
    padding: 24px 24px 28px;
    border-radius: 16px;
    }
.what-we-treat .tab {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 16px;
    }
.what-we-treat .tab .tablinks {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    height: auto;
    text-align: left;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    padding: 16px 18px;
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    }

/* Reset old per-side border hacks that punch through the base .tablinks rule */
.what-we-treat .tab .tablinks:first-of-type,
.what-we-treat .tab .tablinks:last-of-type {
    border: 1px solid #d0dbe5;
    }
.what-we-treat .tab .tablinks.active {
    border-color: #145da7;
    -webkit-box-shadow: 0 6px 18px rgba(20,60,120,.12);
    box-shadow: 0 6px 18px rgba(20,60,120,.12);
    }

/* DRB-163: the .tab-card__* internals are deliberately unscoped — the /what-we-treat tabs
   and the home page's three service links (parts/hero.php) are the same card, and sharing
   one definition is what keeps them from drifting apart the way they had. The class name
   appears nowhere else in the codebase, so dropping the .what-we-treat prefix is safe. */
.tab-card__text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3px;
    }
.tab-card__title {
    font-weight: 700;
    color: #145da7;
    font-size: 20px;
    line-height: 1.25;
    }

/* DRB-174: "Different colors. The current is fine, purple and green." Applied per service
   so the three cards read as three distinct destinations rather than one repeated block.
   Mental Health keeps the brand blue: only two colours were named for three headings, and
   inventing a third felt worse than leaving one on the existing brand colour.
   These modifiers are shared by the home page service cards and the /what-we-treat tabs —
   both render from the same .tab-card__* definition. */
.tab-card__title--urgent {
    color: #6b3fa0;
    }
.tab-card__title--primary {
    color: #146c43;
    }
.tab-card__title--mental {
    color: #145da7;
    }
.tab-card__desc {
    font-size: 13px;
    color: #677174;
    line-height: 1.35;
    font-weight: 400;
    }

/* DRB-163: each tab card gets a photo beneath the icon/label row, so the button becomes a
   column and .tab-card__head preserves the original icon + text row.
   Specificity note: the legacy `.what-we-treat .tab button span` rule (0,2,2) outranks a
   bare `.tab-card__*` selector (0,2,0), so the new rules qualify with `button` to outrank
   it. Retargeting that rule instead would resize the tab labels it still drives at =<640px. */
.what-we-treat .tab .tablinks {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0;
    overflow: hidden;
    }

/* ---- DRB-174 (Aug 11): the client's comp for this page ----
   Three labelled photographs, not three bordered tiles: the coloured heading sits above
   its picture and the card chrome (white fill, 1px border, drop shadow) is gone. The
   markup order is flipped in parts/whatwetreat.php; these rules strip the box.
   Scoped to `.what-we-treat .tab` so the home page's .home-services__card — which the
   client asked to keep photo-first and boxed — is untouched. */
.what-we-treat .tabs-container {
    padding: 8px 0 22px;
    }

/* `:hover` is in this list on purpose: the legacy `.what-we-treat .tab button:hover
   { background-color: #ddd }` (main.css:3455) painted a grey slab behind whichever tab the
   pointer was on once the white card was gone — it also dropped that tab's tagline to a
   3.68:1 contrast ratio against the grey. Hover is signalled by the bar under the photo now. */
.what-we-treat .tab .tablinks,
.what-we-treat .tab .tablinks:hover,
.what-we-treat .tab .tablinks:focus,
.what-we-treat .tab .tablinks.active,
.what-we-treat .tab .tablinks:first-of-type,
.what-we-treat .tab .tablinks:last-of-type {
    background: transparent;
    border: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    overflow: visible;
    }
.what-we-treat .tab button .tab-card__head {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
.what-we-treat .tab button .tab-card__text {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 2px;
    }

/* The legacy `.what-we-treat .tab button span` rule (main.css:3450) sets `align-self: start`
   and a 10px left inset on every span in the button. Both were harmless when the label sat
   beside an icon in a left-aligned card; with the heading centred over its photo, the inset
   pushed the text 34px off centre and `align-self: start` pinned it to the left edge outright,
   which is why `text-align: center` looked like it was doing nothing.
   Specificity 0,3,2 to outrank it — retargeting the legacy rule would move the tab labels it
   still drives elsewhere. */
.what-we-treat .tab button .tab-card__text,
.what-we-treat .tab button .tab-card__title,
.what-we-treat .tab button .tab-card__desc {
    padding-left: 0;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    }

/* Rounded on its own now that there is no card clipping it. The size is set below, after
   the shared `height: 190px` rule this would otherwise lose to on source order. */
.what-we-treat .tab button .tab-card__photo {
    border-radius: 12px;
    background-position: center 30%;
    }

/* These are tabs — the pane below changes when you press one — so the active one still
   needs to say so. The comp has no active treatment (an AI still frame does not model
   interaction), so rather than drop the affordance this states it in the service's own
   colour: a bar under the photo, the way an underline tab set reads. */
.what-we-treat .tab .tablinks .tab-card__photo {
    -webkit-box-shadow: 0 0 0 0 transparent;
    box-shadow: 0 0 0 0 transparent;
    -webkit-transition: box-shadow .15s ease;
    transition: box-shadow .15s ease;
    }
.what-we-treat .tab .tablinks:hover .tab-card__photo {
    -webkit-box-shadow: 0 4px 0 0 #d0dbe5;
    box-shadow: 0 4px 0 0 #d0dbe5;
    }

/* Keyed off the button ids parts/whatwetreat.php already emits. The ID selectors also put
   these above the :hover rule above, so pressed state wins while the pointer is on it. */
.what-we-treat .tab #tab-urgent-care.active .tab-card__photo {
    -webkit-box-shadow: 0 4px 0 0 #6b3fa0;
    box-shadow: 0 4px 0 0 #6b3fa0;
    }
.what-we-treat .tab #tab-chronic-conditions.active .tab-card__photo {
    -webkit-box-shadow: 0 4px 0 0 #146c43;
    box-shadow: 0 4px 0 0 #146c43;
    }
.what-we-treat .tab #tab-psychiatry.active .tab-card__photo {
    -webkit-box-shadow: 0 4px 0 0 #145da7;
    box-shadow: 0 4px 0 0 #145da7;
    }
.what-we-treat .tab button .tab-card__head,
.home-services__card .tab-card__head {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    padding: 16px 18px 18px;
    }

/* DRB-174: the photo now leads the card (Teladoc order) instead of trailing it, so three
   things that made sense underneath the copy no longer do:
     - `margin-top: auto` existed to bottom-align photos across a row of equal-height
       cards. At the top of the card it would push the photo down and reopen the exact
       misalignment it was added to fix, so it is gone; the copy below absorbs the
       difference in description length instead.
     - the gradient mask dissolved the photo's TOP edge into the copy above it. With
       nothing above, it just faded the card's own top edge to transparent.
     - 250px was tuned to balance a photo sitting under two lines of copy. The client
       called the picture too big; 190px is closer to the Teladoc proportion and gives
       the enlarged heading room without making the card taller. */
.what-we-treat .tab button .tab-card__photo,
.home-services__card .tab-card__photo {
    display: block;
    width: 100%;
    height: 190px;
    padding-left: 0;
    background-color: transparent;
    background-size: cover;
    background-position: center 32%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* DRB-174 (Aug 11): on /what-we-treat the three photos are now the card — there is no box
   around them — so they take a portrait crop, the shape the client's comp draws (~4:5).
   The sources are 480x480, so in a box taller than it is wide `cover` fits the full height
   and trims the sides: you see the whole person head-to-torso instead of a tight square
   crop. All three subjects are centred, so a 10%-a-side trim clears them.
   Width-capped rather than height-capped: 4:5 in a 376px desktop column is a 470px-tall
   photo, which pushes the conditions the page exists for below the fold. Capping the width
   keeps the crop portrait at every size instead of flattening it back to a letterbox on
   desktop. The home page's cards are untouched: they keep the 190px letterbox set above.
   Must sit AFTER that rule — same specificity, so source order is what decides. */
/* Same source-order rule as the photo below: the shared `.tab-card__head` rule above sets
   `padding: 16px 18px 18px` at equal specificity, so this has to follow it. The heading is
   the label for the photo directly beneath it — the only inset it needs is the gap down. */
.what-we-treat .tab button .tab-card__head {
    padding: 0 0 10px;
    }
.what-we-treat .tab button .tab-card__photo {
    height: auto;
    aspect-ratio: 4 / 5;
    max-width: 264px;
    margin-left: auto;
    margin-right: auto;
    background-position: center;
    margin-top: auto;
    }

/* DRB-169: availability strip — the navy "BOOK A VISIT" banner is replaced with the
   client's light rounded band: five facts with hairline dividers (live availability
   dot, insurance, the two live DB prices, static average wait). No CTA on purpose —
   the band informs, the cards below convert. */
.what-we-treat .content .pt-1 {
    padding-top: 6px;
    }
.wwt-trust {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    margin: 6px 0 18px;
    padding: 18px 10px;
    background: #fff;
    border: 1px solid #e4e9f2;
    border-radius: 14px;
    }

/* DRB-174 (Aug 11): each label is now two short stacked lines instead of one long run.
   That is the shape common to all four of the client's reference shots, and it is what
   lets five facts sit in a single row on a 390px phone — the old one-line labels
   ("Board-certified doctors available now") were wide enough to force a 2-up grid. */
.wwt-trust__item {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 9px;
    -webkit-flex: 1 1 0;
    -ms-flex: 1 1 0;
    flex: 1 1 0;
    min-width: 0;
    padding: 2px 6px;
    color: #002669;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    white-space: normal;
    }
.wwt-trust__label {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    }
.wwt-trust__item i {
    color: #145da7;
    font-size: 19px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.wwt-trust__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #2edb7a;
    -webkit-box-shadow: 0 0 0 4px rgba(46,219,122,.25);
    box-shadow: 0 0 0 4px rgba(46,219,122,.25);
    display: inline-block;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }

/* Hairline dividers only while the band is one row; once items wrap the left border
   would draw a stray line at each row start. Wrapped rows lean on the gap alone. */
@media (min-width: 1150px) {
.wwt-trust__item + .wwt-trust__item {
    border-left: 1px solid #d9deec;
    }
}

@media (max-width: 1149px) {
.wwt-trust__item {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    }
.wwt-trust {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-column-gap: 26px;
    column-gap: 26px;
    }
}

/* DRB-174 (Aug 11): on /what-we-treat the client's comp draws the band as a white card with
   a hairline between every fact, at phone width. That was previously desktop-only because
   the old one-line labels wrapped to a 2-up grid below 1150px and the left borders then drew
   stray lines at the start of each row. The two-line labels fixed the wrap — five items fit
   one row at 390 — so the dividers can come down with them.
   Excluded on .service-landing, whose comp (image2) shows the same five facts flat, with no
   card and no rules between them. */
@media (min-width: 361px) {
.what-we-treat:not(.service-landing) .wwt-trust {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-column-gap: 0;
    column-gap: 0;
    padding-left: 4px;
    padding-right: 4px;
    }
.what-we-treat:not(.service-landing) .wwt-trust__item + .wwt-trust__item {
    border-left: 1px solid #d9deec;
    }

/* Room for the hairline to sit off the text, and content-sized columns so the padding
     does not come out of the label: equal columns (flex: 1 1 0) left "available now" 8px
     short and dropped that one fact onto a third line while the other four sat on two. */
.what-we-treat:not(.service-landing) .wwt-trust__item {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 0 4px;
    }
}

/* Both comps draw the icon to the LEFT of its two-line label. That only holds once there
   is width for it: measured at 390 with content-sized columns, four of the five labels
   overflowed their column and ran into the dividers. So the icon-left arrangement starts
   at 600px and the phone keeps the stacked icon from main.css:7807, which fits five facts
   in one row cleanly. */
@media (min-width: 600px) and (max-width: 1149px) {
.what-we-treat .wwt-trust__item {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    text-align: left;
    gap: 8px;
    font-size: 13px;
    }
.what-we-treat .wwt-trust__item i {
    font-size: 17px;
    }
}

/* Split: condition cards (each its own box) on the left + separate doctor panel on the right */
.what-we-treat .tabcontent .split {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 24px;
    padding-top: 0;
    padding-bottom: 20px;
    }
.what-we-treat .tabcontent .split .inner {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: auto;
    max-width: none;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px;
    }
.what-we-treat .tabcontent.chronic-conditions .split .inner,
.what-we-treat .tabcontent.psychiatry .split .inner {
    grid-template-columns: repeat(3,1fr);
    }

/* DRB-163 condition card: photo banner across the top, the icon riding as a badge over its
   bottom edge, then the copy column. Below 640px — where the grid collapses to one column
   and a banner would make the page enormous — this flips to the client's mockup layout
   (icon | photo | copy on a single row). See the 640px block further down. */
.what-we-treat .tabcontent .split .inner .card {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 0;
    width: auto;
    margin: 0;
    padding: 0 0 16px;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    background: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
    overflow: hidden;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    }
.what-we-treat .tabcontent .split .inner .card:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    }
.what-we-treat .tabcontent .split .inner .card .card-photo {
    display: block;
    width: 100%;
    height: 150px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    background-color: transparent;
    background-size: cover;
    background-position: center;
    -webkit-mask-image: -webkit-linear-gradient(to top,transparent 0%,#000 30%);
    -webkit-mask-image: linear-gradient(to top,transparent 0%,#000 30%);
    mask-image: -webkit-linear-gradient(to top,transparent 0%,#000 30%);
    mask-image: linear-gradient(to top,transparent 0%,#000 30%);
    }
.what-we-treat .tabcontent .split .inner .card .card-body {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 8px 16px 0;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.what-we-treat .tabcontent .split .inner .card:hover {
    text-decoration: none;
    background-color: #f0f4f8;
    }
.what-we-treat .tabcontent .split .inner .card h5 {
    color: #145da7;
    font-size: 16px;
    margin: 0;
    }

/* DRB-174 (Aug 11): condition titles take their service's colour, so each landing page
   reads as one colour family. Qualified this far only to outrank the (0,5,1) rule above —
   a bare `.condition-card__title--urgent` loses to it. Mental Health keeps hero-blue,
   which is already the inherited value, so it needs no rule of its own. */
.what-we-treat .tabcontent .split .inner .card h5.condition-card__title--urgent {
    color: #6b3fa0;
    }
.what-we-treat .tabcontent .split .inner .card h5.condition-card__title--primary {
    color: #146c43;
    }
.what-we-treat .tabcontent .split .inner .card p.gray-text {
    font-size: 13px;
    margin: 0;
    line-height: 1.4;
    }
.what-we-treat .tabcontent .split .inner .card .condition-card-footer {
    font-size: 13px;
    color: #373435;
    font-weight: 600;
    margin-top: 4px;
    }
.what-we-treat .tabcontent .split .inner .card .card-cta {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    color: #326eb3;
    font-weight: 700;
    font-size: 13px;
    }
.what-we-treat .tabcontent .split .inner .card .card-cta i {
    font-size: 11px;
    }

/* "Doctor Available Now" panel — its own bordered, rounded card */
.wwt-doc {
    -webkit-flex: 0 0 300px;
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
    background: #eff4f8;
    border: 1px solid #d0dbe5;
    border-radius: 16px;
    padding: 26px 22px;
    text-align: center;
    }
.wwt-doc__head {
    margin-bottom: 16px;
    }
.wwt-doc__badge {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    color: #1f7a44;
    font-size: 13px;
    font-weight: 700;
    }
.wwt-doc__dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2eb85c;
    display: inline-block;
    }
.wwt-doc__wait {
    display: block;
    font-size: 12px;
    color: #677174;
    margin-top: 4px;
    }
.wwt-doc__photo {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 12px;
    border: 4px solid #eff4f8;
    }
.wwt-doc__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    }
.wwt-doc__photo--empty {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #eff4f8;
    color: #145da7;
    font-size: 42px;
    }

/* DRB-174: !important is required here, not stylistic — the global `h4 { font-size: 24px
   !important }` at the top of this file outranks a plain class rule, so the 17px this
   block used to declare never applied and the heading rendered at 24px. At 24px
   "Dr. Awharitefe Urhuogo, MD" needs 312px inside a 254px column, which is what pushed
   the credential onto its own line. 18px fits the longest name we render on one line. */
.wwt-doc__name {
    font-size: 18px !important;
    margin: 0 0 4px;
    color: #373435;
    }
.wwt-doc__spec {
    font-size: 13px;
    color: #677174;
    margin: 0 0 10px;
    }
.wwt-doc__rating {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    margin-bottom: 16px;
    }
.wwt-doc__stars {
    color: #a85c00;
    font-size: 14px;
    letter-spacing: 1px;
    }
.wwt-doc__rev {
    font-size: 12px;
    color: #677174;
    }
.wwt-doc__cta {
    display: block;
    width: 100%;
    }
@media (max-width: 980px) {
.what-we-treat .tabcontent .split {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.what-we-treat .tabcontent .split .inner {
    width: 100%;
    }
.what-we-treat .tabcontent.urgent-care .split .inner {
    grid-template-columns: repeat(2,1fr);
    }
.what-we-treat .tabcontent.chronic-conditions .split .inner,
.what-we-treat .tabcontent.psychiatry .split .inner {
    grid-template-columns: repeat(2,1fr);
    }
.wwt-doc {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    }
}

@media (max-width: 750px) {
.what-we-treat .tab .tablinks {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    }
.what-we-treat .tab button span {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    text-align: center;
    }

/* DRB-163: the tab cards stack their icon above the label at this width. .tab-card__head
     is a row by default, so re-stack it here to keep that treatment under the new photo. */
.what-we-treat .tab button .tab-card__head,
.home-services__card .tab-card__head {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 6px;
    }
.home-services__card .tab-card__text {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    }

/* Three cards still sit side by side here, so each is only ~180px wide. The desktop
     250px photo turns that into a 179x424 sliver (h:w 2.4); this brings it back to ~1.4. */
.what-we-treat .tab button .tab-card__photo,
.home-services__card .tab-card__photo {
    height: 150px;
    }

/* …but the /what-we-treat tabs are sized by their 4:5 aspect-ratio now (main.css:14306),
     and a fixed height here overrides it and flattens the portrait crop back to a letterbox.
     The home cards keep the 150px above. */
.what-we-treat .tab button .tab-card__photo {
    height: auto;
    }
}

@media (max-width: 640px) {
.what-we-treat .tabcontent.urgent-care .split .inner,
.what-we-treat .tabcontent.chronic-conditions .split .inner,
.what-we-treat .tabcontent.psychiatry .split .inner {
    grid-template-columns: 1fr;
    }
.what-we-treat .tab {
    padding-top: 24px;
    }

/* DRB-163 — phones match the client's mockup: icon | photo | copy on one row, rather
     than the stacked photo banner used at wider widths. The grid is a single column here,
     so a banner per card would roughly triple the scroll depth.
     align-items: stretch is what makes the photo and the copy column finish flush with
     each other; a fixed photo height leaves the copy overhanging it by a line or two,
     and the descriptions vary from one line to five so no single height fits. */
.what-we-treat .tabcontent .split .inner .card {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 10px;
    padding: 14px;
    }
.what-we-treat .tabcontent .split .inner .card .card-photo {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    width: 96px;
    height: auto;
    min-height: 88px;
    -webkit-flex: 0 0 96px;
    -ms-flex: 0 0 96px;
    flex: 0 0 96px;
    border-radius: 10px;
    -webkit-mask-image: none;
    mask-image: none;
    }
.what-we-treat .tabcontent .split .inner .card .card-body {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    padding: 0;
    }

/* Wireframe leans harder on the title/description size gap than the desktop card does. */
.what-we-treat .tabcontent .split .inner .card h5 {
    font-size: 17px;
    }

/* The tab buttons are pinned to 60px tall further up the sheet, which leaves no room for
     the new photo — release it and let the three cards size to their content. */
.what-we-treat .tab button {
    height: auto;
    padding-left: 0 !important;
    padding-right: 0 !important;
    }
.what-we-treat .tab button .tab-card__head,
.home-services__card .tab-card__head {
    padding: 12px 8px 0;
    }
.what-we-treat .tab button .tab-card__photo,
.home-services__card .tab-card__photo {
    height: 104px;
    }

/* Same as the wider breakpoint: the tabs are sized by aspect-ratio, the home cards are not. */
.what-we-treat .tab button .tab-card__photo {
    height: auto;
    }

/* The tab version gets this from `.tab button span { padding-left: 0 }` at this width;
     the home cards set the 10px explicitly, so they have to clear it explicitly too. */
.home-services__card .tab-card__text {
    padding-left: 0;
    }

/* Three columns on a phone leave ~110px per card — only the title and photo survive.
     /what-we-treat drops its own desc at 500px for the same reason. */
.home-services__card .tab-card__desc,
.home-services__more {
    display: none;
    }

/* DRB-174: the shared title is 20px so the desktop headings read as "a little bigger"
     per the client. Three cards across a 390px phone leaves a 95px column, where 20px
     needs 112-130px and wraps every title to two lines ("Urgent / Care"). Step it down
     here — with the tighter side padding below, 15px fits all three on one line at 390.
     Scoped to .home-services__card so /what-we-treat's tab cards, which get far more
     width once they stack at this breakpoint, keep the full 20px. */
.home-services__card .tab-card__title {
    font-size: 15px;
    }
.home-services__card .tab-card__head {
    padding-left: 5px;
    padding-right: 5px;
    }
}

/* ===== DRB-174: standalone service landing pages (/urgentcare, /primarycare,
   /mentalhealth) — scoped .service-landing =====
   These reuse .what-we-treat for the condition grid, cards and doctor panel; only the
   page header and the cross-links to the other two services are new. */
/* Must not be a <header> element — see the note in parts/servicelanding.php. The bare
   `header` selector in this sheet is the fixed site nav, so a <header> here gets
   position:fixed and paints over the real nav bar. */
/* DRB-174 (Aug 11) — the client's note was that this area is "a top paragraph of just
   words". It becomes a two-column hero: keyword eyebrow + display line + intro on the
   left, the service's own photograph framed as a phone on the right. */
.service-landing__head {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,.85fr);
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: 28px;
    column-gap: 28px;
    row-gap: 0;
    padding-top: 34px;
    padding-bottom: 10px;
    max-width: none;
    }

/* Two grid children here: the whole copy stack, and the art. The intro only leaves this
   block on a phone, where .service-landing__copy goes `display: contents` (below) and its
   three children become grid items in their own right. Making the intro a permanent grid
   child instead opened a ~60px hole between the headline and the intro on desktop: the art
   spans both rows and is the tallest thing in the header, so it stretched them. */
.service-landing__copy {
    min-width: 0;
    }

/* The H1. Small on purpose — it carries the search keyword, not the visual weight.
   See the note in parts/servicelanding.php.
   !important is load-bearing here, not laziness: this sheet sets `h1 { font-size: Npx
   !important }` at 900/767/500 (main.css:6802, 7033, 7830) and `.what-we-treat h1
   { padding: 20px 0 !important }` at 767, both of which otherwise beat a class selector
   and blow the eyebrow up to 20-36px with 40px of padding. */
.service-landing__title {
    font-size: 14px !important;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    line-height: 1.2;
    margin: 0 0 14px;
    padding: 0 !important;
    }
.service-landing__headline {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.02em;
    color: #002669;
    margin: 0 0 18px;
    }
.service-landing__intro {
    font-size: 16px;
    line-height: 1.6;
    color: #677174;
    margin: 0 0 22px;
    max-width: 34em;
    }

/* ---- Hero art ----
   The client's own illustration per service, supplied with the Aug 11 feedback: a phone on a
   video call over a tinted blob, with the service badge and a plant, all baked into one file
   (mental health is an armchair instead — his artwork, his call). This replaced a phone frame
   drawn in CSS; the artwork is better at every size and it is exactly what he asked for.
   Exported to images/resources/service-heroes/<key>.webp — trimmed to the alpha bounds so the
   art fills its box rather than floating in transparent margin, 860px wide for 2x. */
.service-landing__art {
    justify-self: center;
    width: 100%;
    max-width: 420px;
    }
.service-landing__hero-img {
    display: block;
    width: 100%;
    height: auto;
    }

/* The landing pages drop the trust strip's card entirely — flat icon row, per the
   client's three landing-page references. /what-we-treat keeps its card (his fourth
   reference still shows it there). */
.service-landing .wwt-trust {
    background: none;
    border: 0;
    border-radius: 0;
    padding: 6px 0 0;
    margin: 2px 0 26px;
    }

/* The two columns are kept all the way down to a phone rather than stacking — that is what
   the client's comps show at 390, and stacking put a full-viewport photo above the words so
   you scrolled past the art before reading anything. The art column just gets narrower. */
@media (max-width: 900px) {
.service-landing__head {
    grid-template-columns: minmax(0,1fr) minmax(0,.85fr);
    -webkit-column-gap: 20px;
    column-gap: 20px;
    padding-top: 22px;
    }
.service-landing__headline {
    font-size: 30px;
    }
.service-landing__art {
    max-width: 300px;
    }
}

/* DRB-176 (was single-column below 600): the client's comp keeps the artwork to the RIGHT
   of the copy on a phone too — eyebrow, headline and intro stacked on the left, art beside
   them, "smaller to help fit everything". The single-column stack this replaces put a
   full-width artwork between the headline and the intro. The copy column gets the larger
   share because the artwork carries wide blob/plant margins around its handset. */
@media (max-width: 600px) {
.service-landing__head {
    grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
    -webkit-column-gap: 14px;
    column-gap: 14px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 22px;
    }
.service-landing__headline {
    font-size: 28px;
    margin-bottom: 12px;
    }
.service-landing__intro {
    margin-bottom: 0;
    }
.service-landing__art {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    max-width: 230px;
    }
}

@media (max-width: 560px) {
.service-landing__headline {
    font-size: 24px;
    letter-spacing: -.015em;
    }
.service-landing__title {
    font-size: 11.5px !important;
    letter-spacing: .06em;
    margin-bottom: 8px;
    }
.service-landing__intro {
    font-size: 13.5px;
    line-height: 1.5;
    }
}

/* "Also available from DoctorsBeyond" — the two services you are NOT on. */
.service-landing__other-heading {
    font-size: 24px;
    font-weight: 700;
    color: #373435;
    margin: 40px 0 18px;
    }
.service-landing__others {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
    padding-bottom: 44px;
    }
.service-landing__other {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    background: #fff;
    border: 1px solid #d0dbe5;
    border-radius: 12px;
    padding: 16px;
    text-decoration: none;
    -webkit-transition: transform .15s ease,box-shadow .15s ease;
    transition: transform .15s ease,box-shadow .15s ease;
    }
.service-landing__other:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 10px 26px rgba(20,60,120,.12);
    box-shadow: 0 10px 26px rgba(20,60,120,.12);
    text-decoration: none;
    }
.service-landing__other-photo {
    -webkit-flex: 0 0 96px;
    -ms-flex: 0 0 96px;
    flex: 0 0 96px;
    width: 96px;
    height: 96px;
    border-radius: 10px;
    background-color: #eff4f8;
    background-size: cover;
    background-position: center 30%;
    }
.service-landing__other-text {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    }

/* Link from each tab pane on /what-we-treat out to that service's own page. */
.wwt-seealso {
    margin: 18px 0 0;
    font-size: 15px;
    font-weight: 700;
    }
.wwt-seealso a {
    color: #326eb3;
    text-decoration: none;
    }

/* 17px of link is a poor tap target on a phone. Padded to the 44px minimum without moving
   the text: the extra sits inside the paragraph's own margin. */
@media (max-width: 1024px) {
.wwt-seealso a {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 44px;
    }
.wwt-seealso {
    margin-top: 4px;
    }
}

.wwt-seealso a:hover {
    text-decoration: underline;
    }
.wwt-seealso i {
    font-size: 12px;
    margin-left: 4px;
    }
@media (max-width: 767px) {
/* The 30px step this used to apply belonged to the old design, where .service-landing__title
     WAS the display heading. It is now a 14px eyebrow (the display line is
     .service-landing__headline, stepped down in the 900px block above), so scaling it here
     would blow the eyebrow up to nearly the headline's size. */
.service-landing__others {
    grid-template-columns: 1fr;
    }
}

@media (max-width: 500px) {
.service-landing__other-photo {
    -webkit-flex: 0 0 68px;
    -ms-flex: 0 0 68px;
    flex: 0 0 68px;
    width: 68px;
    height: 68px;
    }

/* These cross-links inherit two mobile hide rules written for other layouts: this page
     carries .what-we-treat on its root, so `.what-we-treat .tab-card__desc { display: none }`
     (main.css:7721) strips the tagline, and `.home-services__more { display: none }`
     (main.css:14600) strips the "Learn more" line. Both exist because those layouts put
     three cards across a phone; these are one-up and full width, so the card was rendering
     as a lone title in a box. Re-shown here only. */
.service-landing__other .tab-card__desc,
.service-landing__other .home-services__more {
    display: block;
    }
.service-landing__other .tab-card__desc {
    font-size: 13px;
    line-height: 1.4;
    }
.service-landing__other .home-services__more {
    font-size: 13px;
    }
}

/* ===== Flaticon PNG icon integration — scoped .fi-img ===== */
/* Usage: <img class="fi-img" src="https://cdn-icons-png.flaticon.com/512/{id}.png" alt="" aria-hidden="true">
   Sized via font-size of parent container (1em × 1em). Two color presets below. */
.fi-img {
    display: block;
    width: 1em;
    height: 1em;
    object-fit: contain;
    -webkit-filter: brightness(0) saturate(100%) invert(28%) sepia(83%) saturate(680%) hue-rotate(197deg) brightness(97%) contrast(95%);
    filter: brightness(0) saturate(100%) invert(28%) sepia(83%) saturate(680%) hue-rotate(197deg) brightness(97%) contrast(95%);
    }

/* Green variant for benefit checkmarks (flat-green #20bf6b) */
.fi-img--green {
    -webkit-filter: brightness(0) saturate(100%) invert(63%) sepia(62%) saturate(520%) hue-rotate(109deg) brightness(95%) contrast(93%);
    filter: brightness(0) saturate(100%) invert(63%) sepia(62%) saturate(520%) hue-rotate(109deg) brightness(95%) contrast(93%);
    }

/* Blue variant for provider card bullets (blue #326eb3) */
.fi-img--blue {
    -webkit-filter: brightness(0) saturate(100%) invert(36%) sepia(68%) saturate(650%) hue-rotate(196deg) brightness(96%) contrast(92%);
    filter: brightness(0) saturate(100%) invert(36%) sepia(68%) saturate(650%) hue-rotate(196deg) brightness(96%) contrast(92%);
    }

/* Membership band main icon — same hero-blue but inside a white circle at 58px */
.membership-band__icon .fi-img {
    width: 58px;
    height: 58px;
    }
