@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');

.page-template-chiropractor #main,
.page-template-acupuncture #main { padding: 0px !important; }
.page-template-chiropractor #main .fusion-row,
.page-template-acupuncture #main .fusion-row { padding: 0px; margin: 0px; max-width: 100%; }

.wrapper { padding: 0px 20px; margin: 0px auto; position: relative; max-width: 1480px; width: 100%; }

.d-flex { display: flex; flex-wrap: wrap; }
.v-start { align-items: flex-start; }
.v-center { align-items: center; }
.v-end { align-items: flex-end; }
.h-start { justify-content: flex-start; }
.h-center { justify-content: center; }
.h-end { justify-content: flex-end; }

.ct-btn-wrap { padding-top: 5px; gap: 16px; flex-wrap: nowrap; }
.ct-btn-wrap.v1 { padding-top: 16px; }
.ct-btn-wrap .book-now-btn,
.ct-btn-wrap .call-us-btn { width: 100%; height: 54px; padding: 0 16px; gap: 8px; color: #FFF; font-size: 16px; font-weight: 500; line-height: 100%; text-transform: uppercase; transition: all 350ms; border-radius: 40px; background: #E60008; }
.ct-btn-wrap .book-now-btn:hover { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2); background: #f00; }
.ct-btn-wrap .call-us-btn { background: #0E6CD1; }
.ct-btn-wrap .call-us-btn:hover { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2); background: #0283DA; }
.ct-btn-wrap .map-btn { padding: 0 26px 0 6px; width: 100%; height: 54px; color: #141617; font-size: 14px; font-weight: 400; line-height: 100%; border-radius: 30px; border: 1px solid #68C6FF; transition: all 350ms; background: #F2F9FD; }
.ct-btn-wrap .map-btn span { margin: 0px auto; }
.ct-btn-wrap .map-btn:hover { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2); background: #ffffff; }

.ct-page-hero-sec { padding: 72px 0px; position: relative; text-align: center; letter-spacing: 0px; }
.ct-page-hero-sec .bg { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: cover; }
.ct-page-hero-sec .bg:before { content: ""; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; opacity: 0.6; background: #0283DA; }
.ct-page-hero-sec .bg .curve { margin-left: -960px; position: absolute; bottom: 0px; left: 50%; width: 1920px; height: 100px; color: #F2F9FD; }
.ct-page-hero-sec .bg .curve svg { width: 100%; height: 100%; }
.ct-page-hero-sec h1 { padding: 0px; margin: 0px 0px 17px !important; color: #FFF; text-align: center; font-family: "Source Serif 4", serif; font-size: 64px; font-weight: 600; line-height: 100%; letter-spacing: -1.28px; }
.ct-page-hero-sec p { color: #FFF; font-size: 16px; font-weight: 500; line-height: 100%; }

.ct-page-sec-1 { padding: 81px 0px 105px; letter-spacing: 0px; background: #F2F9FD; }
.ct-page-sec-1 .left { width: 48.9%; }
.ct-page-sec-1 .video { padding: 38px 0px 0px; margin-left: auto; width: 40.4%; position: relative; }
.ct-page-sec-1 .video img { width: 100%; border-radius: 24px; }
.ct-page-sec-1 h2, .ct-page-sec-1 h3 { margin: 0px 0px 30px !important; color: #0283DA; font-family: "Source Serif 4", serif; font-size: 42px; font-weight: 600; line-height: 120%; letter-spacing: -0.84px; }
.ct-page-sec-1 p { margin: 0px 0px 20px; color: #141617; font-size: 16px; font-style: normal; font-weight: 400; line-height: 165%; }

.ct-page-sec-2 { overflow: hidden; position: relative; height: 600px; }
.ct-page-sec-2 iframe { margin: -600px 0px 0px -2000px; position: absolute; top: 50%; left: 50%; width: 4000px !important; height: 1200px !important; min-height: inherit !important; }

.ct-page-sec-3 { padding: 0px; display: flex; flex-wrap: wrap; letter-spacing: 0px; position: relative; z-index: 1; background: #F2F9FD; }
.ct-page-sec-3 .inner { padding: 36px 36px 53px; margin: -80px 0px 0px; position:  relative; border-radius: 24px; background: #FFF; box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.08); }
.ct-page-sec-3 h3 { margin: 0px 0px 36px !important; color: #0283DA; text-align: center; font-family: "Source Serif 4", serif; font-size: 42px; font-style: normal; font-weight: 600; line-height: 100%; letter-spacing: -0.84px; }
.ct-page-sec-3 .tiles-wrap { margin: 0px -12px; }
.ct-page-sec-3 .tiles-wrap .repeat { padding: 0px 12px; width: 25%; }
.ct-page-sec-3 .tiles-wrap .repeat a { display: block; }
.ct-page-sec-3 .tiles-wrap .repeat img { margin-bottom: 24px; width: 100%; border-radius: 8px 8px 0 0; }
.ct-page-sec-3 .tiles-wrap .repeat h4 { margin: 0px 0px 16px !important; color: #0E6CD1; text-align: center; font-family: var(--body_typography-font-family); font-size: 18px; font-weight: 500; line-height: 100%; letter-spacing: -0.36px; text-transform: uppercase; }
.ct-page-sec-3 .tiles-wrap .repeat p { margin: 0px 0px 17px; color: #141617; text-align: center; font-size: 14px; font-style: normal; font-weight: 400; line-height: 160%; }
.ct-page-sec-3 .tiles-wrap .repeat .more { display: inline-flex; align-items: center; display: flex; padding: 12px 16px; justify-content: center;
align-items: center; gap: 4px; color: #0E6CD1; font-size: 14px; font-weight: 500; line-height: 100%; transition: all 350ms; }
.ct-page-sec-3 .tiles-wrap .repeat .more svg { transition: all 350ms; }
.ct-page-sec-3 .tiles-wrap .repeat a:hover .more svg { margin-left: 4px; }

.ct-page-sec-4 { padding: 90px 0px 151px; letter-spacing: 0px; position: relative; background: #F2F9FD; }
.ct-page-sec-4 .left { padding-top: 32px; width: 48.9%; }
.ct-page-sec-4 .right { padding: 0px; margin-left: auto; flex-direction: column; width: 40.4%; position: relative; }
.ct-page-sec-4 .right .one { margin-left: auto; width: calc(100% - 122px); height: 420px; overflow: hidden; border-radius: 24px; }
.ct-page-sec-4 .right .one img, .ct-page-sec-4 .right .two img, .ct-page-sec-4 .right .three img { width: 100%; height: 100%; min-height: 100%; object-fit: cover; }
.ct-page-sec-4 .right .two { margin-top: -65px; width: calc(100% - 122px); height: 553px; position: relative; overflow: hidden; border-radius: 24px; }
.ct-page-sec-4 h3 { margin: 0px 0px 36px !important; color: #0283DA; font-family: "Source Serif 4", serif; font-size: 42px; font-weight: 600; line-height: 120%; letter-spacing: -0.84px; }
.ct-page-sec-4 p { margin: 0px 0px 16px; color: #141617; font-size: 16px; font-style: normal; font-weight: 400; line-height: 162%; }
.ct-page-sec-4 ul, .ct-page-sec-4 ol { padding: 14px 0px 19px 25px; margin: 0px !important; color: #141617; font-size: 16px; font-style: normal; font-weight: 400; line-height: 162%; color: #0E6CD1; }
.ct-page-sec-4 ul li, .ct-page-sec-4 ol li { padding-bottom: 12px; }
.ct-page-sec-4 ul li a, .ct-page-sec-4 ol li a { color: #0E6CD1; }
.ct-page-sec-4 .ct-btn-wrap { padding-top: 19px; }
.ct-page-sec-4 .curve { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 70px; background: url(images/bg.jpg) bottom center no-repeat; }

.ct-page-sec-5 { padding: 60px 0px 69px; letter-spacing: 0px; position: relative; }
.ct-page-sec-5 h3 { margin: 0px 0px 41px !important; color: #0283DA; font-family: "Source Serif 4", serif; font-size: 46px; font-weight: 600; line-height: 120%; letter-spacing: -0.92px; text-align: center; }
.ct-page-sec-5 .tiles-wrap { margin: 0px -12px; }
.ct-page-sec-5 .tiles-wrap .repeat { padding: 0px 12px 24px; width: 25%; }
.ct-page-sec-5 .tiles-wrap .repeat a { padding: 10px 24px; width: 100%; min-height: 100px; transition: all 350ms; border-radius: 16px; background: #0283DA; }
.ct-page-sec-5 .tiles-wrap .repeat a:hover { background: #0E6CD1; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2); }
.ct-page-sec-5 .tiles-wrap .repeat .icon { width: 64px; }
.ct-page-sec-5 .tiles-wrap .repeat h4 { padding: 0px 0px 0px 16px; margin: 0px !important; color: #FFFFFF; font-family: var(--body_typography-font-family); font-size: 18px; font-weight: 500; line-height: 100%; letter-spacing: -0.36px; width: calc(100% - 64px); }

.ct-page-sec-5.v1 { padding: 172px 0px 134px; background: #0E6CD1; }
.ct-page-sec-5 .curve-top { width: 100%; height: 95px; position: absolute; top: 0px; left: 0px; background: url(images/bg1.jpg) top center no-repeat; }
.ct-page-sec-5 .curve-bottom { width: 100%; height: 79px; position: absolute; bottom: 0px; left: 0px; background: url(images/bg2.jpg) bottom center no-repeat; }
.ct-page-sec-5.v1 h3 { color: #FFF; }
.ct-page-sec-5.v1 .tiles-wrap .repeat a { background: #F2F9FD; }
.ct-page-sec-5.v1 .tiles-wrap .repeat h4 { color: #0283DA; }
.ct-page-sec-5.v1 .tiles-wrap .repeat a:hover { background: #FFFFFF; }

.ct-page-sec-6 { padding: 129px 0px; letter-spacing: 0px; width: 100%; }
.ct-page-sec-6 .gallery-wrap { margin: 0px -12px; }
.ct-page-sec-6 .gallery-wrap .left { padding: 0px 12px; width: 33.333333%; }
.ct-page-sec-6 .gallery-wrap .tiled-gallery-item {}
.ct-page-sec-6 .gallery-wrap .tiled-gallery-item img { width: 100%; object-fit: cover; border-radius: 24px; }
.ct-page-sec-6 .gallery-wrap .tiled-gallery-item + .tiled-gallery-item { padding-top: 18px; }
.ct-page-sec-6 .gallery-wrap .v1 img,
.ct-page-sec-6 .gallery-wrap .v5 img { height: 400px; }
.ct-page-sec-6 .gallery-wrap .v2 img,
.ct-page-sec-6 .gallery-wrap .v4 img { height: 310px; }
.ct-page-sec-6 .gallery-wrap .v3 img { height: 728px; }

.ct-page-sec-7 { padding: 66px 0px 124px; letter-spacing: 0px; position: relative; background: #F2F9FD; }
.ct-page-sec-7 h3 { padding: 0px; margin: 0px 0px 57px !important; text-align: center; color: #0283DA; font-family: "Source Serif 4", serif; font-size: 46px;font-style: normal; font-weight: 600; line-height: 1; letter-spacing: -0.92px; }
.ct-page-sec-7 .faq-wrap { gap: 24px; flex-wrap: nowrap; }
.ct-page-sec-7 .faq-wrap .faq-column { width: 100%; }
.ct-page-sec-7 .faq-wrap .repeat { padding: 0px 0px 16px; }
.ct-page-sec-7 .faq-wrap .inner { overflow: hidden; border-radius: 16px; border: 1px solid #0283DA; background: #FFFFFF; }
.ct-page-sec-7 .faq-wrap .inner .head { padding: 10px 23px; cursor: pointer; min-height: 74px; color: #0283DA; font-size: 18px; font-weight: 500; line-height: 100%; letter-spacing: -0.36px; text-transform: uppercase; transition: all 350ms; }
.ct-page-sec-7 .faq-wrap .inner .head svg { width: 24px; }
.ct-page-sec-7 .faq-wrap .inner .head .r { padding: 0px 0px 0px 24px; width: calc(100% - 24px); }
.ct-page-sec-7 .faq-wrap .inner .content { padding: 24px 23px 23px; display: none; }
.ct-page-sec-7 .faq-wrap .inner .content p { margin: 0px 0px 20px; color: #141617; font-size: 14px; font-weight: 400; line-height: 158%; }
.ct-page-sec-7 .faq-wrap .inner .content p:nth-last-of-type(1) { margin-bottom: 0px; }
.ct-page-sec-7 .faq-wrap .inner.is-active .head { color: #ffffff; background: #0283DA; }
.ct-page-sec-7 .faq-wrap .inner svg .line { transition: all 350ms; }
.ct-page-sec-7 .faq-wrap .inner.is-active svg .line { opacity: 0; }
.ct-page-sec-7 .curve-bottom { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 71px; background: url(images/bg3.jpg) bottom center no-repeat; }
.ct-page-sec-7 .faq-wrap .inner .content ul, .ct-page-sec-7 .faq-wrap .inner .content ol { padding: 0px 0px 15px 30px; margin: 0px; color: #141617; font-size: 14px; font-weight: 400; line-height: 158%; }
.ct-page-sec-7 .faq-wrap .inner .content ul li, .ct-page-sec-7 .faq-wrap .inner .content ol li { padding-bottom: 5px; }

.ct-page-sec-4.v1 { padding: 118px 0px 219px; background: #FFF; }
.ct-page-sec-4.v1 .right { padding: 118px 0px 0px; margin: 0px; order: -1; width: 40.7%; }
.ct-page-sec-4.v1 .left { margin-left: auto; }
.ct-page-sec-4.v1 .one { margin: 0px; }
.ct-page-sec-4.v1 .two { margin-left: auto; position: relative; z-index: 1; }
.ct-page-sec-4.v1 .three { margin-top: -58px; width: calc(100% - 122px); height: 420px; position: relative; overflow: hidden; border-radius: 24px; }
.ct-page-sec-4.v1 .curve { background-image: url(images/bg4.jpg); }

.ct-page-sec-1.v1 { padding: 125px 0px 146px; }

.ct-page-sec-8 { padding: 81px 0px 98px; text-align: center; letter-spacing: 0px; position: relative; background-position: center center; background-repeat: no-repeat; background-size: cover; }
.ct-page-sec-8:before { content: ""; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; opacity: 0.8; background: #0283DA; }
.ct-page-sec-8 .inner { margin: 0px auto; max-width: 704px; }
.ct-page-sec-8 h3 { margin: 0px 0px 16px !important; color: #F2F9FD; font-family: "Source Serif 4", serif; font-size: 50px; font-weight: 600; line-height: 120%; letter-spacing: -1px; }
.ct-page-sec-8 p { margin: 0px 0px 19px; color: #FFFFFF; text-align: center; font-size: 16px; font-weight: 400; line-height: 160%; }

.ct-page-sec-1.acupuncture-page { padding-bottom: 140px; position: relative; }
.ct-page-sec-1.acupuncture-page .curve { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 89px; background: url(images/bg5.jpg) bottom center no-repeat; }

.ct-page-sec-4.acupuncture-page { padding: 111px 0px 181px; background: #ffffff; }
.ct-page-sec-4.acupuncture-page .curve { background-image: url(images/bg6.jpg); }

.ct-page-sec-9 { padding: 97px 0px 122px; letter-spacing: 0px; position:  relative; background: #F2F9FD; }
.ct-page-sec-9 h3 { margin: 0px 0px 52px !important; color: #0283DA; text-align: center; font-family: "Source Serif 4", serif; font-size: 46px; font-style: normal; font-weight: 600; line-height: 100%; letter-spacing: -0.92px; }
.ct-page-sec-9 .tiles-wrap { margin: 0px -12px; }
.ct-page-sec-9 .tiles-wrap .repeat { padding: 0px 12px; width: 16.666666%; }
.ct-page-sec-9 .tiles-wrap .repeat a { min-height: 100%; border-bottom: 2px solid #FFFFFF; display: block; overflow: hidden; border-radius: 8px 8px 16px 16px; background: #FFF; box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.08); }
.ct-page-sec-9 .tiles-wrap .repeat a:hover { border-bottom-color: #0283DA; }
.ct-page-sec-9 .tiles-wrap .repeat img { margin-bottom: 24px; width: 100%; }
.ct-page-sec-9 .tiles-wrap .repeat .txt { padding: 0px 15px 15px; }
.ct-page-sec-9 .tiles-wrap .repeat h4 { margin: 0px 0px 16px !important; color: #0E6CD1; text-align: center; font-family: var(--body_typography-font-family); font-size: 18px; font-weight: 500; line-height: 100%; letter-spacing: -0.36px; text-transform: uppercase; }
.ct-page-sec-9 .tiles-wrap .repeat p { margin: 0px 0px 17px; color: #141617; text-align: center; font-size: 14px; font-style: normal; font-weight: 400; line-height: 160%; }
.ct-page-sec-9 .tiles-wrap .repeat .more { display: inline-flex; align-items: center; display: flex; padding: 12px 16px; justify-content: center;
align-items: center; gap: 4px; color: #0E6CD1; font-size: 14px; font-weight: 500; line-height: 100%; }

.ct-page-sec-5.acupuncture-page { padding: 84px 0px 0px; }
.ct-page-sec-6.acupuncture-page { padding-top: 96px; }

.fancybox-slide.fancybox-slide--video { padding: 0px; }





