@font-face {
    font-family: "Sofia Pro";
    font-weight: 200;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_ExtraLight_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 300;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_Light_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 400;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_Regular_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 500;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_Medium_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 600;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_SemiBold_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 700;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_Bold_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 800;
    font-style: normal;
    src: url("../../fonts/Sofia_Pro_Black_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 200;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_ExtraLight_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 300;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_Light_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 400;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 500;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_Medium_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 600;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_SemiBold_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 700;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_Bold_Italic_VN.otf") format("opentype");
}

@font-face {
    font-family: "Sofia Pro";
    font-weight: 800;
    font-style: italic;
    src: url("../../fonts/Sofia_Pro_Black_Italic_VN.otf") format("opentype");
}

/******************************************************************************/

/* Global */

a {
    font-family: "Sofia Pro", sans-serif;
    font-weight: 300;
    font-style: normal;
}

body {
    font-family: "Sofia Pro", sans-serif;
    font-weight: 300;
    font-size: 15px;
    line-height: 26px;
    color: #231f20;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    background: #f9f9f9;
    overflow-x: hidden;
}

.button {
    white-space: nowrap;
    border: 1px solid transparent !important;
    border-radius: 0.25rem !important;
}

.btn-green, .search-submit {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

.btn-black {
    background: #231f20 !important;
    border-color: #231f20 !important;
    color: #fff;
}

.btn-white {
    background: #fff !important;
    border-color: #fff !important;
    color: #000 !important;
}

.mt20 {
    margin-top: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mt50 {
    margin-top: 50px;
}

.mt80 {
    margin-top: 80px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb30 {
    margin-bottom: 30px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb50 {
    margin-bottom: 50px;
}

.mb80 {
    margin-bottom: 80px;
}

.mb0 {
    margin-bottom: 0 !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.text-upper {
    text-transform: uppercase;
}

.text-upper {
    text-transform: uppercase;
}

.freg {
    font-weight: 400;
}

.align-items-center {
    -webkit-box-align: center!important;
    -ms-flex-align: center!important;
    align-items: center!important;
}

.justify-content-center {
    -webkit-box-pack: center!important;
    -ms-flex-pack: center!important;
    justify-content: center!important;
}

.visible {
    visibility: visible!important;
}

.col-2dot4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}

.col-2dot4, .col-sm-2dot4, .col-md-2dot4, .col-lg-2dot4, .col-xl-2dot4 {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.d-none {
    display: none!important;
}

/***********************/

/* Header */
#header .header-wrapper #masthead {
    position: absolute;
    width: 100%;
    transition: all .4s;
}

#header .header-wrapper #masthead:hover {
    background: #fff;
}

#header .header-wrapper {
    position: relative;
}

#header a {
    color: #fff;
    transition: none;
}

body:not(.home) #header a {
    color: #000;
}

body:not(.home) #header #top-bar a {
    color: #fff;
}

body:not(.home) #header {
    margin-bottom: 102px;
}

#header .header-wrapper #masthead:hover a {
    color: #000;
}

#header .top-divider {
    display: none;
}

#header .header-wrapper #masthead .header-inner {
    max-width: 90%;
}

#header .header-wrapper #masthead .button {
    border: 1px solid #fff !important;
    color: #fff !important;
    height: 36px;
    line-height: 33px;
    font-size: 15px;
    margin-right: 10px;
}

#header .header-wrapper #masthead:hover .button {
    border: 1px solid #000 !important;
    color: #000 !important;
}

#header .header-wrapper #masthead .button:hover {
    color: #fff !important;
}

body:not(.home) #header .header-wrapper #masthead .button {
    border: 1px solid #000 !important;
    color: #000 !important;
    color: #000;
}

body:not(.home) #header .header-wrapper #masthead .button:hover {
    color: #fff !important;
}

#header #logo {
    width: auto !important;
    margin: 0;
}

.header-main .header-nav {
    justify-content: center;
}

.header-main .header-nav > li > a {
    font-weight: 300;
}

.header-main .header-nav > .menu-item > a {
    padding: 7px 12px;
    position: relative;
    transition: all .3s;
}

.header-main .header-nav > .menu-item.current-menu-item  a {
    color: var(--primary-color) !important;
}

.header-main .header-nav > .menu-item > a::after {
    content: "";
    background: var(--primary-color);
    position: absolute;
    height: 2px;
    width: 0;
    margin: auto;
    bottom: 0;
    left: 0;
    right: 0;
    transition: all .3s;
}

.header-main .header-nav > .menu-item.current-menu-item  a::after, .header-main .header-nav > .menu-item a:hover::after {
    width: 100%;
}

.icon-shopping-cart:before {
    width: 26px;
    height: 26px;
    background: url(../img/cart-ico-white.svg) no-repeat;
    background-size: 100% 100%;
    display: block;
    content: "" !important;
}

body:not(.home) .icon-shopping-cart:before {
    background-image: url(../img/cart-ico-black.svg);
    background-repeat: no-repeat;
}

#header .header-wrapper #masthead:hover .icon-shopping-cart:before {
    background: url(../img/cart-ico-black.svg) no-repeat;
    background-size: 100% 100%;
}

.icon-shopping-cart:hover:before {
    background-image: url(../img/cart-ico-green.svg) !important;
    background-repeat: no-repeat;
}

.icon-user:before {
    width: 26px;
    height: 26px;
    background: url(../img/user-ico-white.svg) no-repeat;
    background-size: 100% 100%;
    display: block;
    content: "" !important;
}

body:not(.home) .icon-user:before {
    background-image: url(../img/user-ico-black.svg);
    background-repeat: no-repeat;
}

#header .header-wrapper #masthead:hover .icon-user:before {
    background: url(../img/user-ico-black.svg) no-repeat;
    background-size: 100% 100%;
}

.icon-user:hover:before {
    background-image: url(../img/user-ico-green.svg) !important;
    background-repeat: no-repeat;
}

.icon-search:before {
    width: 26px;
    height: 26px;
    background: url(../img/search-ico-white.svg) no-repeat;
    background-size: 100% 100%;
    display: block;
    content: "" !important;
}

body:not(.home) .icon-search:before {
    background-image: url(../img/search-ico-black.svg);
    background-repeat: no-repeat;
}

#header .header-wrapper #masthead:hover .icon-search:before {
    background: url(../img/search-ico-black.svg) no-repeat;
    background-size: 100% 100%;
}

.icon-search:hover:before {
    background-image: url(../img/search-ico-green.svg) !important;
    background-repeat: no-repeat;
}
/* End Header */

/* Homepage Video Banner */
.videobanner .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 49%;
    overflow: hidden;
}

.videobanner .video-container::before {
    content: "";
    background: #282828;
    display: block;
    opacity: 0.5;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
}

.videobanner .video-source {
    width: 100%;
    position: absolute;
    height: auto;
}

.videobanner .absolute-text-box {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
    max-width: 820px;
    color: #fff;
    text-align: center;
    z-index: 3;
}

.videobanner .absolute-text-box h1 {
    font-size: 44px;
    margin: 0 0 20px;
    color: #fff;
}

.videobanner .absolute-text-box p {
    font-weight: 200;
}
/* End Homepage Video Banner */

/* Homagepage About Us */
.homepage-about-wrapper {
    padding: 90px 0 70px;
    background: #F9F9F9;
}

.homepage-about-wrapper .button {
    margin: 0 !important;
}

.homepage-about-wrapper .row {
    position: relative;
}

.homepage-about-wrapper .row::before {
    content: "";
    position: absolute;
    width: 100px;
    height: 100px;
    background: #E4EEE0;
    left: -30px;
    bottom: -15px;
}

.homepage-about-wrapper .row::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    background: #E4EEE0;
    right: -60px;
    top: -60px;
}

.homepage-about-wrapper .text-col {
    background: #F9F9F9;
    position: relative;
    z-index: 1;
}

.homepage-about-wrapper .img-col img {
    border-radius: 10px;
}
/* End Homagepage About Us */

/* Homepage Featured */
.homepage-featured-wrapper {
    padding: 60px 0 40px;
}

.homepage-featured-wrapper .item {
    text-align: center;
}

.homepage-featured-wrapper .item h5 {
    font-weight: 400;
    font-size: 18px;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #000;
}

.homepage-featured-wrapper .item .icon {
    margin-bottom: 20px;
    max-height: 72px;
}

.homepage-featured-wrapper .item .num {
    font-weight: 800;
    font-size: 45px;
    color: var(--primary-color);
    line-height: normal;
    margin-bottom: 0;
}

.homepage-featured-wrapper .item:after {
    content: "";
    background: url(../img/stats-line.png) no-repeat;
    width: 1px;
    height: 142px;
    display: block;
    position: absolute;
    right: 0;
    bottom: 30px;
}

.homepage-featured-wrapper .small-4:last-child .item:after {
    display: none;
}
/* End Homepage Featured */

/* Homepage Promises */
.homepage-promises-wrapper {
    background: url(../img/btm-promise-ohc.png) no-repeat center 98%;
    margin-bottom: 50px;
    padding: 0 0 196px;
    
}

.homepage-promises-wrapper .wrap {
    background: #000;
    color: #fff;
    padding-top: 60px;
}

.homepage-promises-wrapper .row {
    margin-bottom: 65px;
}

.homepage-promises-wrapper p {
    margin: 0;
}

.homepage-promises-wrapper .title h2 {
    color: #fff;
    font-size: 40px;
    font-weight: normal;
    font-family: "Times New Roman", Times, serif;
}

.homepage-promises-wrapper h5 {
    color: #fff;
    font-weight: 500;
    font-size: 18px;
}
/* End Homepage Promises */

/* Homepage quy trình khám */
.homepage-abt-expect-wrapper {
    padding: 0 0 30px;
}

.homepage-abt-expect-wrapper .title h2 {
    font-size: 40px;
    font-weight: normal;
    font-family: "Times New Roman", Times, serif;
    color: #000;
}

.homepage-abt-expect-wrapper .row {
    position: relative;
}

.homepage-abt-expect-wrapper .row .line {
    position: absolute;
    height: 1px;
    width: 92%;
    top: 80px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: var(--primary-color);
    border: none;
    opacity: 1;
}

.homepage-abt-expect-wrapper .item {
    text-align: center;
    margin-bottom: 30px;
}

.homepage-abt-expect-wrapper .item .icon {
    max-width: 151px;
    margin: 0 auto 30px;
}

.homepage-abt-expect-wrapper .item .icon img {
    position: relative;
    z-index: 2;
    background: #f9f9f9;
    border-radius: 50%;
}

.homepage-abt-expect-wrapper .item .desc {
    font-weight: 200;
    font-size: 14px;
}
/* End Homepage quy trình khám */

/* Homepage Common */
.homepage-hm-common {
    background: url(../img/bg-common-condition-home.jpg) no-repeat;
    background-size: cover;
    padding: 80px 0;
}

.homepage-hm-common .title h2 {
    color: #000;
    text-transform: capitalize;
    font-size: 40px;
    font-weight: normal;
    font-family: "Times New Roman", Times, serif;
}

.homepage-hm-common .cc-block-item {
    margin-bottom: 40px;
    position: relative;
    padding: 0 0 40px;
    background: url(../img/trans.png);
    border-radius: 10px;
    text-align: center;
}

.homepage-hm-common .cc-block-item .cc-item {
    padding: 15px 0;
}

.homepage-hm-common .cc-block-item .cc-item p {
    margin-bottom: 10px;
}

.homepage-hm-common .cc-block-item .cc-item .figure {
    height: 99px;
    text-align: center;
}

.homepage-hm-common .cc-block-item .figure img {
    max-width: 165px;
    height: auto;
    margin: 0 auto;
}

.homepage-hm-common .cc-block-item .figure .fg-1 {
    display: block;
    max-height: 150px;
}

.homepage-hm-common .cc-block-item .figure .fg-2 {
    display: none;
}

.homepage-hm-common .cc-block-item .slick-current .cc-item .figure .fg-1 {
    display: none;
}

.homepage-hm-common .cc-block-item .slick-current .cc-item .figure .fg-2 {
    display: block;
}

.slick-arrow {
    border: none;
    background: url(../img/arr-slide.png) no-repeat;
    position: absolute;
    top: 50%;
    text-indent: -99999px;
    display: block;
    width: 18px;
    height: 29px;
    min-height: unset;
    padding: 0;
    outline: none !important;
    cursor: pointer;
    z-index: 2;
    margin: 0;
}

.slick-arrow.slick-prev {
    left: -20px;
    background-position: left top;
}

.slick-arrow.slick-next {
    right: -20px;
    background-position: right top;
}


.homepage-hm-common .cc-block-item .slick-slider .slick-arrow {
    top: 40%;
}

.homepage-hm-common .cc-block-item .slick-slider .slick-arrow.slick-prev {
    left: -50px;
}

.homepage-hm-common .cc-block-item .slick-slider .slick-arrow.slick-next {
    right: -50px;
}

.homepage-hm-common .cc-block-item .slick-current {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 12px 18px 0px rgba(0, 0, 0, 0.3);
}

.homepage-hm-common .cc-block-item .slick-current .cc-item {
    box-shadow: inset 0 -5px 10px 0px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
}

.homepage-hm-common .cc-block-item .slick-current .cc-item p {
    color: var(--primary-color);
}

.homepage-hm-common .cc-block-item .slick-track {
    padding-bottom: 25px;
}

.homepage-hm-common #hm-common-details .text .content a {
    color: var(--primary-color);
}

.homepage-hm-common #hm-common-details .text .content ul {
    padding-left: 30px;
}
/* End Homepage Common */

/* Our Treatment */
.homepage-our-treatment .title h2 {
    color: #000;
    font-size: 40px;
    font-weight: normal;
    font-family: "Times New Roman", Times, serif;
}

.cc-block-item .nav-tabs {
    border: none;
}

.homepage-our-treatment .condition-items .cc-block-item .nav-tabs .nav-item {
    padding: 0;
}

.cc-block-item .nav-tabs .nav-link {
    background: none;
    border: none;
    color: #231f20;
    padding: 0;
    border-radius: 0;
    margin-bottom: 30px;
}

.homepage-our-treatment .condition-items .cc-block-item .nav-tabs .nav-link .figure {
    background: url(../img/bg_item-treatment.png) no-repeat top center;
    width: 183px;
    height: 183px;
    position: relative;
}

.homepage-our-treatment .condition-items .cc-block-item .nav-tabs .nav-link .figure img {
    margin: 25px auto 0;
    max-height: 99px;
}

.cc-block-item .figure img {
    max-width: 165px;
    height: auto;
    margin: 0 auto;
}

.cc-block-item .figure .fg-2 {
    display: none;
}

.cc-block-item .figure {
    height: 165px;
    text-align: center;
}

.cc-block-item .nav-tabs .nav-link:hover .figure .fg-1, .cc-block-item .nav-tabs .nav-link.active .figure .fg-1 {
    display: none;
}

.cc-block-item .nav-tabs .nav-link:hover .figure .fg-2, .cc-block-item .nav-tabs .nav-link.active .figure .fg-2 {
    display: inline-block;
}

#cc-results:before {
    display: block;
    content: "";
    background: url(../img/bg-cc-results.png) no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    opacity: 0.35;
}

.homepage-our-treatment .condition-items #cc-results {
    min-height: 543px;
    max-height: 543px;
}

#cc-results {
    position: relative;
    border-radius: 10px;
    background: var(--primary-color);
    padding: 35px;
}

#cc-results .card {
    border: none;
    color: #fff;
    background: none;
}

.tab-content>.tab-pane {
    display: none;
}

.tab-content>.active {
    display: block;
}

#cc-results .details {
    max-height: 230px;
    overflow: auto;
}
/* End Our Treatment */

/* Homepage Teams */
.homepage-hm-team {
    padding-top: 90px;
    padding-bottom: 160px;
    background: #fff url(../img/bg-hm-team.png) no-repeat bottom -80px center;
}

.homepage-hm-team .title h2 {
    color: #000;
    font-size: 40px;
    font-weight: normal;
    font-family: "Times New Roman", Times, serif;
}

.homepage-hm-team .slick-slider .slick-arrow {
    background: url(../img/arr-slide-w.png) no-repeat;
}

.homepage-hm-team .slick-slider .slick-arrow.slick-next {
    background-position: right top;
}

.homepage-hm-team .slick-dots {
    position: absolute;
    right: 0;
    margin: 0;
    bottom: -60px;
}

.slick-dots li {
    list-style: none;
    display: inline-block;
    margin-right: 5px;
}

.homepage-hm-team .slick-dots li {
    margin-right: 10px;
}

.slick-dots li button {
    text-indent: -99999px;
    background: #898989;
    width: 5px;
    height: 5px;
    display: block;
    border: none;
    padding: 0;
    outline: none;
}

.homepage-hm-team .slick-dots li button {
    background: #fff;
    min-height: unset;
    margin: 0;
}

.slick-dots li.slick-active button {
    background: #269200;
}

.homepage-hm-team .slick-dots li button {
    background: #fff;
}

.homepage-hm-team .slick-dots li.slick-active button {
    background: #269200;
}

.homepage-hm-team #team-list .slick-list {
    padding-top: 40px !important;
}

#team-list .item, #overview-list .item {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 5px 8px 0px rgba(0, 0, 0, 0.15);
    margin-bottom: 40px;
}

.homepage-hm-team #team-list .item {
    margin: 2% 3%;
}

#team-list .item a, #overview-list .item a {
    color: #231f20;
}

.photo {
    margin-bottom: 30px;
    border-radius: 10px;
}

#team-list .item .photo, #overview-list .item .photo {
    position: relative;
    margin: 0;
    max-height: 330px;
    overflow: hidden;
}

#team-list .item .photo {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

#team-list .item .photo:before, #overview-list .item .photo:before {
    content: "";
    background: #000;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}

.photo img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}

#team-list .item .photo img, #overview-list .item .photo img {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.homepage-hm-team #team-list .item .photo img {
    filter: blur(1px);
    -webkit-filter: blur(1px);
}

.homepage-hm-team #team-list .slick-list .slick-current .item .photo img {
    filter: blur(0px);
    -webkit-filter: blur(0px);
}

#team-list .item .team-details, #team-list .item .overview-details, #overview-list .item .team-details, #overview-list .item .overview-details {
    padding: 20px;
}

.team-details .name {
    font-size: 20px;
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
}

.team-details .position {
    color: var(--primary-color);
    margin: 0;
}

.homepage-hm-team #team-list .slick-list .slick-current {
    margin-top: -30px;
}

.homepage-hm-team #team-list .slick-list .slick-current .item {
    background: var(--primary-color);
}

.homepage-hm-team .slick-list .slick-current .item a, .homepage-hm-team #team-list .slick-list .slick-current .item p {
    color: #fff;
}
/* End Homepage Teams */

/* Homepage Testimonial */
#testi-wrap {
    background: url(../img/bg-testimonial-home.png) no-repeat top center;
    background-size: cover;
    padding-top: 90px;
    padding-bottom: 30px;
}

.container-fluid {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.container-fluid > .row {
    max-width: 100%;
}

#testi-wrap .mb-fr-col.hm {
    max-width: 750px;
}

#testi-wrap .testi-block {
    background: none;
    box-shadow: none;
}

#testi-wrap .testi-block .testi-head {
    background: none;
    text-align: right;
    height: auto;
    padding: 0;
    margin: 0 0 50px;
}

#testi-wrap .testi-block .testi-head h3 {
    color: var(--primary-color);
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0;
}

#testi-wrap .testi-block .testi-head h2 {
    color: #000;
    font-size: 40px;
    font-family: "Times New Roman", Times, serif;
    text-transform: none;
}

.testi-block .item {
    padding: 0 30px 30px;
    text-align: right;
    height: 0;
}

#testi-wrap .testi-block .item {
    padding: 0;
}

#testi-wrap .testi-block .item.slick-active {
    height: auto;
}

#testi-wrap .arrows {
    text-align: right;
}

#testi-wrap .arrows .slick-arrow {
    position: relative;
    right: 0;
    left: 0;
    display: inline-block;
    margin: 0 10px;
    width: 10px;
    background-size: 100%;
    height: 17px;
    vertical-align: middle;
}

#testi-wrap .arrows .slick-arrow.slick-prev {
    background-image: url(../img/arr-slide-left.png);
}

#testi-wrap .arrows .slick-arrow.slick-next {
    background-image: url(../img/arr-slide-right.png);
}

/* End Homepage Testimonial */

/* Hero Section */
.hero-section {
    justify-content: center;
    display: flex;
    flex-direction: column;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll;
    text-align: center;
    border-style: none;
    border-width: 1px;
    border-radius: 0px;
    min-height: 320px;
    margin: 0px 0px 10px;
    padding: 10px;
    margin-bottom: 45px;
}

.medium-hero .hero-section {
    min-height: 250px;
}

.hero-section h1 {
    font-size: 75px;
    font-weight: 400;
    color: #fff;
    margin: 0;
    font-family: "Times New Roman", Times, serif;
    text-transform: capitalize;
}

.medium-hero .hero-section h1 {
    font-size: 40px;
    font-family: "Sofia Pro", sans-serif;
}
/* End Hero Section */

/* Trang Tĩnh */
body:not(.home) #main {
    /* margin-top: 102px; */
}

.page-static-content {
    padding-top: 15px;
}
/* End Trang Tĩnh */

/* Card */
.card-item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    box-shadow: 0px 7px 30px 0px rgba(0, 0, 0, 0.07);
    border-radius: 10px;
    padding: 30px 15px;
    margin-bottom: 60px;
}

.card-item:hover {
    box-shadow: 0px 12px 18px 0px rgba(0, 0, 0, 0.26);
}

.card-item .head-card {
    position: relative;
    margin-top: -90px;
}

.card-item .icon {
    background: var(--primary-color);
    width: 240px;
    text-align: center;
    margin: 0 auto;
    border-radius: 10px;
    position: relative;
    padding-top: 56%;
}

.card-item .icon img {
    position: absolute;
    top: 8px;
    width: calc(100% - 16px);
    left: 8px;
    height: calc(100% - 16px);
    object-fit: cover;
}

.card-item .shadow-icon {
    content: "";
    display: block;
    background: url(../img/card-icon-shadow.png) no-repeat center center;
    width: 224px;
    height: 78px;
    margin: -40px auto 0;
}

.card-item .title {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.card-item .price {
    text-align: center;
    margin-bottom: 10px;
}

.card-item .excerpt {
    height: 70px;
    overflow: hidden;
    width: 100%;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.card-item .desc {
    font-size: 14px;
    margin-bottom: 20px;
}

.card-item .desc ul {
    margin: 0;
    padding: 0;
}

.card-item .desc ul li {
    margin-bottom: 15px;
    list-style: none;
    background: url(../img/check-grey.png) no-repeat left 7px;
    padding-left: 35px;
    font-size: 16px;
    margin-left: 5px;
}

.card-item:hover .desc ul li {
    background-image: url(../img/check-green.png);
}

.brd-blk {
    border-color: #231f20 !important;
    color: #231f20 !important;
}

.card-item .add_to_cart_inline {
    padding: 0 !important;
    border: 0 !important;
    margin: 15px 0 0 0;
}

.card-item .add_to_cart_inline a {
    margin-bottom: 0 !important;
    border-color: #231f20 !important;
    color: #231f20 !important;
}

.card-item .add_to_cart_inline a.loading {
    background: var(--primary-color) !important;
}
/* End Card */

/* Trang dịch vụ */
#services .card-item a.button {
    background: #fff;
}

#services .card-item a.button:hover {
    border-color: var(--primary-color) !important;
    background: var(--primary-color) !important;
    color: #fff !important;
}
/* End Trang dịch vụ */

/* Trang dịch vụ chi tiết */
.single-service-content .title h2 {
    font-size: 50px;
    color: #231f20;
    font-weight: normal;
    text-transform: capitalize;
}
/* End Trang dịch vụ chi tiết */

/* Accordion */
.accordion {

}

.accordion .card {
    box-shadow: 0px 7px 10px 0px rgba(0, 0, 0, 0.17);
    border-radius: 10px;
    -webkit-border-radius: 10px;
}

.accordion .card-header {
    background: var(--primary-color);
    padding: 0;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
}

.accordion .card-header h2 {
    font-family: "Sofia Pro", sans-serif;
    font-size: 16px;
}

.accordion .card-header .btn-link {
    white-space: normal;
    padding: 15px 40px 15px 20px !important;
    text-align: left;
    color: #fff;
    padding: 0;
    border: none;
    opacity: 1;
    text-decoration: none;
    display: block;
    width: 100%;
    position: relative;
    font-weight: 300;
    background: none;
}

#carrers .accordion .card-header .btn-link {
    font-weight: 600;
    font-size: 13px;
    line-height: 21px;
    margin: 0;
}

.accordion .card-header .btn-link .fas {
    position: absolute;
    right: 20px;
    top: 20px;
}

.accordion .card-header .btn-link.collapsed .fa-chevron-up:before {
    content: "\f078";
}

.collapse {
    display: none;
}

.collapse.show {
    display: block;
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    transition: height .35s ease;
}

.card-body {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1.25rem;
}

.card {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: .25rem;
}
/* End Accordion */

/* Product Category - Shop Page */
.post-type-archive-product #main {
    margin-top: 102px;
}

.post-type-archive-product .shop-page-title, .shop-page-title {
    display: none;
}

.post-type-archive-product .shop-page-title nav.woocommerce-breadcrumb, .shop-page-title nav.woocommerce-breadcrumb {
    display: none;
}

.post-type-archive-product .category-page-row {
    padding-top: 0;
}

/* End Product Category - Shop Page */

/* Product Badge */
.product .badge-container {
    margin: 0;
}

.product .badge-container .badge {
    margin: 10px 0 0 10px;
}
/* End Product Badge */

/* Product Item */
.product-small .product-title {
    margin-bottom: 10px;
}

.product-small .product-title a {
    font-size: 17px;
    font-weight: 400;
}

.product-small .add-to-cart-button {
    margin: 10px 0 0 0;
}

.product-small span.amount, span.amount {
    font-size: 17px;
    color: #df0000 !important;
}

.product-small del span.amount, del span.amount {
    color: #383838 !important;
    font-size: 15px;
}
/* End Product Item */

/* Single Product */
.single-product #main {
    margin-top: 0 !important;
}

.single-product .shop-page-title {
    margin-top: 102px;
    border-top: 1px solid #e3e3e3;
}

.single-product .shop-page-title .page-title-inner {
    padding-top: 0;
    position: relative;
}

.single-product .shop-page-title a {
    text-transform: none;
    color: #000;
    font-size: 15px;
}

.single-product .product-main {
    padding-top: 0 !important;
}

.single-product .product-images figure {
    border: 1px solid var(--primary-color);
}

.single-product .product-images .image-tools {
    display: none;
}

.single-product span.amount {
    font-size: 20px;
}

.single-product .product-short-description {
    text-align: justify;
    margin: 26px 0;
}

.single-product .quantity .button {
    background: #4bb9a4;
    text-shadow: none;
    color: #000;
    font-weight: bold;
    font-size: 24px;
    height: 45px;
    width: 45px;
    min-height: unset;
    line-height: normal;
}

.single-product .quantity input[type=number] {
    height: 45px;
    box-shadow: none;
    font-weight: bold;
    font-size: 20px;
}

.single-product .single_add_to_cart_button {
    height: 45px;
    padding: 0 40px;
    font-size: 18px;
    min-height: unset;
}

.single-product .product-footer #accordion-description-content {
    border-left: 1px solid rgba(0,0,0,.06);
    border-bottom: 1px solid rgba(0,0,0,.06);
    border-right: 1px solid rgba(0,0,0,.06);
}

.single-product .product-footer #accordion-description-content ul {
    padding-left: 30px;
}

.single-product .related-products-wrapper h3 {
    font-size: 26px;
    font-weight: 500;
    color: #000;
    margin: 25px 0 10px;
}
/* End Single Product */

/* Cart Page */
body.woocommerce-cart .woocommerce {
    padding: 30px 0 20px;
}
/* End Cart Page */

/* Checkout Page */
form.woocommerce-checkout #place_order {
    width: 100%;
}
/* End Checkout Page */

/** Footer **/
footer {
    background-image: url(../img/bg-footer.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll;
    padding: 30px 0 50px;
    color: #fff;
    bottom: 0;
    position: relative;
    width: 100%;
}

footer a {
    color: #fff;
}

footer a:hover {
    color: #fff;
}

footer .foot-info {
    margin-bottom: 25px;
}

footer .foot-info h4 {
    color: #269200;
    font-size: 20px;
    font-family: "Sofia Pro", sans-serif;
    font-weight: normal;
    margin-bottom: 25px;
}

footer .foot-info .icon {
    position: absolute;
    top: 0;
    left: 0;
}

footer .foot-info .content {
    position: relative;
    padding-left: 30px;
}

footer .foot-info .content p {
    margin: 0;
}

footer .line {
    width: 100%;
    color: #fff;
    border-color: #fff;
    margin: 25px 0;
}

footer ul {
    padding: 0;
    margin: 0;
}

footer ul li {
    list-style: none;
    margin-left: 25px;
    display: inline-block;
}

footer ul li:first-child {
    margin-left: 0;
}

footer .social-icon ul li a {
    background: #269200;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    display: block;
    text-align: center;
    line-height: 42px;
    font-size: 21px;
}

footer .social-icon ul li a:hover {
    opacity: 0.8;
    color: #fff;
}

footer .static-link ul li {
    margin-left: 0;
    margin-right: 10px;
}

footer .copyright {
    font-size: 14px;
    text-align: right;
}
footer .absolute-footer {
    display: none;
}
/* End Footer */

@media (min-width: 576px) {
    .d-sm-block {
        display: block!important;
    }

    .d-sm-none {
        display: none!important;
    }

    .offset-sm-1 {
        margin-left: 8.333333% !important;
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none!important;
    }

    .d-md-block {
        display: block!important;
    }

    .mobile-banner {
        display: none;
    }
}

@media (min-width: 992px) {
    .d-lg-block {
        display: block!important;
    }

    .d-lg-none {
        display: none!important;
    }

    .pb0 {
        padding-bottom: 0 !important;
    }

    .justify-content-lg-start {
        -webkit-box-pack: start!important;
        -ms-flex-pack: start!important;
        justify-content: flex-start!important;
    }
}

@media only screen and (max-width: 1024px) {
    #services .card-item .desc {
        display: none;
    }

    .hero-section, .medium-hero .hero-section {
        min-height: 170px;
    }

    .hero-section h1 {
        font-size: 20px;
    }
}

@media only screen and (max-width: 768px) {
    .videobanner .video-source {
        display: none;
    }

    .videobanner .video-container {
        height: 95vh;
        padding-bottom: 0;
    }

    .videobanner .mobile-banner {
        height: 100%;
        background-size: cover;
        background-position: center;
        transition: all .8s ease;
        display: block;
    }

    .videobanner .absolute-text-box {
        padding: 0 30px;
    }

    .homepage-about-wrapper .text-col {
        text-align: center;
    }

    .homepage-about-wrapper .text-col {
        text-align: center;
    }
    
    .homepage-about-wrapper .img-col {
        padding-right: 30px;
        padding-left: 30px;
    }
    
    .homepage-about-wrapper .row::before {
        bottom: 0;
        top: -27px;
    }

    .homepage-featured-wrapper .item h5 {
        font-size: 14px;
        height: 35px;
    }

    .homepage-featured-wrapper .item .icon {
        max-height: 50px;
    }

    .homepage-featured-wrapper .item .num {
        font-size: 20px;
    }

    .homepage-promises-wrapper {
        padding-bottom: 100px;
    }

    .homepage-abt-expect-wrapper .row .line {
        display: none;
    }

    .homepage-abt-expect-wrapper .item .desc {
        font-size: 16px;
    }

    .col-2dot4 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    #cc-results {
        min-height: auto !important;
    }

    .homepage-hm-common .cc-block-item .slick-slider .slick-arrow.slick-prev {
        left: 0;
    }

    .homepage-hm-common .cc-block-item .slick-slider .slick-arrow.slick-next {
        right: 0;
    }

    .homepage-hm-common {
        padding: 30px 0 0;
    }

    .homepage-hm-common #hm-common-details .item {
        height: 0;
    }

    .homepage-hm-common #hm-common-details .item.slick-active {
        height: auto;
    }

    .homepage-hm-team {
        padding-top: 40px;
        padding-bottom: 100px;
    }

    .homepage-hm-team .slick-dots {
        width: 100%;
        text-align: center;
    }

    #testi-wrap .testi-block .testi-head {
        text-align: center;
    }

    .testi-block .item {
        text-align: center;
    }

    #testi-wrap .arrows {
        text-align: center;
        margin-top: 10px;
    }

    footer .foot-info .content {
        margin-bottom: 10px;
    }

    footer .foot-menu li {
        margin-left: 0 !important;
        margin-right: 1.3em;
    }

    footer .copyright hr {
        display: block !important;
        width: 100%;
        color: #fff;
        border-color: #fff;
        margin: 25px 0;
        opacity: 1;
    }

    footer .copyright li {
        width: 100%;
        text-align: center;
    }

    footer .pb0 {
        padding-bottom: 0;
    }
}

@media only screen and (max-width: 500px) {
    .text-center-important {
        text-align: center !important;
    }

    .homepage-promises-wrapper .row {
        text-align: center;
    }

    .homepage-hm-common #hm-common-details .text h3.title {
        font-size: 20px;
        margin: 0;
        text-transform: uppercase;
        margin-bottom: 20px;
    }

    .homepage-hm-common #hm-common-details .item img {
        margin: 0 auto 20px;
        max-width: 150px;
    }

    .homepage-our-treatment .condition-items .cc-block-item .nav-tabs .nav-item {
        text-align: center;
    }

    .card-item .icon {
        width: 90%;
    }

    .product-small .product-title a {
        font-size: 15px;
    }
}