/*-------------------------------------------------- FONT IMPORT --------------------------------------------------*/

@import url("../m/css2-9b16813a.css");
@import url("../m/css2-3d603c4e.css");

/*------------------------------------------------- FONT STYLING --------------------------------------------------*/

.tsI_hd {font-family: "McLaren", sans-serif !important;}
.tsI_sh {font-family: "Pangolin", cursive !important;}

.tsD_hr hr {
  background: linear-gradient(to right, var(--promo1) 33%, transparent 33%, transparent 36%, 
                                        var(--promo2) 36%, var(--promo2) 66%, transparent 66%,
                                        transparent 69%, var(--promo3) 69%, var(--promo3) 100%) !important;
  border: none !important;

   width: 30% !important;
   height: 5px !important;

  -moz-transition: all 0.4s ease-in-out !important;
  -webkit-transition: all 0.4s ease-in-out !important;
  -o-transition: all 0.4s ease-in-out !important;
  transition: all 0.4s ease-in-out !important;
}
.tsD_hr .tsI:hover hr {width: 50% !important;}

/*------------------------------------------------------ MAP ------------------------------------------------------*/

.section_content .tsT_plugin .b2b-location.wide .b2b-location-items-container .b2b-location-items.show-details li p {
  margin: 0 !important;
  line-height: 1.5em !important;
}
.tsD_map *,
.b2b-location-detail-info * {color: #fff !important;}

@media print,screen and (min-width: 1025px){
  iframe.b2b-location-canvas {position:absolute !important;top:0;left:0;right:0;bottom:0;height: 100% !important;}
  
  .b2b-location-items-container {position: absolute !important;right: 4rem !important;bottom: 2rem !important;top:2rem !important;width: 25% !important;}
  .b2b-location.wide {display:block !important;position:relative;min-height: 38rem !important;}
  
  div#_the_map_wrapper {position: relative;}
}

.tsD_map,
.tsD_map .tsR,
.tsD_map .tsI {padding: 0 !important;margin: 0 !important;max-width: 100% !important;width: 100% !important;}


/*-------------------------------------------------- GLOBAL BODY --------------------------------------------------*/

#wrapper {overflow: hidden !important;}

.tsD_white * {color: #fff !important;}
.tsD_black * {color: #222 !important;}

@media (min-width: 481px) {
  .tsD_noPadTop {padding: 0 !important;}
}
.tsD_p1 {padding: 3rem 0 !important;}

.content {
  padding-top: 3.7rem !important;
  padding-bottom: 2rem !important;
}


.tsD_bkg {background: color-mix(in srgb, var(--promo3) 40%, transparent) !important;}

.shape {
  position: absolute;
  width: 500px;
  height: 500px;
  border-radius: 50%;

  background: var(--promo1);
  opacity: 0.2;
  float: left;
  z-index: -1;
}
.shape.blue.right {
  width: 700px;
  height: 700px;
  
  background: var(--promo2);
  float: right;
  right: 0 !important;
}

.tsD_removeSpace {
  padding: 0 !important; 
  margin-bottom: -100px !important; 
}
/*----------------------------------------------------- CTA -------------------------------------------------------*/

.gmb:not(.tsI_btn):hover {border-bottom: none !important;}
.gmb img {max-width: 15rem !important;}

/*---------------------------------------------------- HEADER -----------------------------------------------------*/
.tsH_wrp {padding: 0 0.5rem !important;}

.tsH {
  display: flex !important;
  display: -webkit-flex !important;
  flex-direction: column-reverse !important;
  -webkit-flex-direction: column-reverse !important;
}
/*---------------------------------------------------- SOCIAL -----------------------------------------------------*/
.tsSC .social-media-links a, .tsSC .tsC_Btn {color: #fff !important;}
.tsSC .social-media-links a:hover, .tsSC .tsC_Btn:hover {color: var(--promo3) !important; background: transparent !important;}

.tsSC {box-shadow: none !important;}

.tsSC .tsC_Btn {
  font-weight: 500 !important;
  letter-spacing:1px !important;
  font-size:.72rem !important;
}

/*---------------------------------------------------- LOGO ------------------------------------------------------*/
.tsH #_the_logo {padding: .8rem 0 .7rem !important;}

@media (min-width: 1025px){
  .tsH.expand #_the_logo img {
	max-height: 9rem !important;
  }
  .tsH.shrink #_the_logo img {
	max-height: 6rem !important;
  }
}
@media (max-width: 1024px){
  .tsH #_the_logo img {
	max-height: 5rem !important;
  }
  
  .tsCntct .tsCntct_list{
	text-align: left !important;
  }
}


.tsF #_the_logo img {max-height: 5rem !important;}
/*-------------------------------------------------- NAVIGATION ---------------------------------------------------*/
.tsH .menu .sf-menu li {
  font-weight: 500 !IMPORTANT;
  letter-spacing: .8px !important;
}
.tsH .menu > ul > li {padding: 0 .7rem !important;}
.tsH .current-menu-item a {font-weight: bold !important;}

/*--- Sub-Menu Styling ---*/
.tsH .menu .sub-menu a {
  padding: 0rem .15rem .4rem !important;
  margin-bottom: 0 !important;
  text-transform:capitalize !important;
  font-size:.81rem !important;
}
.tsH .menu .sub-menu {padding-bottom:.8rem !important;}
.tsM #access .menu .sf-menu > li {margin: .5rem 0;}
.tsM #access .menu ul a {white-space: pre-wrap !important;}

/*---------------------------------------------------- BUTTON -----------------------------------------------------*/
/* TACTILE PUSH BUTTON */
.tsI_btn {
  padding: 12px 20px !important;
  color: var(--promoT) !important;
  text-transform: uppercase !important;
  background: var(--promo4) !important;
  border: 3px solid var(--promoT) !important;
  border-radius: 5rem !important;
  box-shadow: 0 7px 0px var(--promo2) !important;

  -webkit-transition: all 0.3s !important;
  -moz-transition: all 0.3s !important;
  transition: all 0.3s !important;
}
.tsI_btn:hover {
  background: var(--promo4) !important;
  transform: translateY(4px);
  box-shadow: 0 3px 0px var(--promo2) !important;
}
/*--------------------------------------------------- CONTENT -----------------------------------------------------*/

/*----------------------------------------------------- DLS -------------------------------------------------------*/
.tsD_dl .tsI_wrp {overflow: hidden !important;}

.tsD_dl .tsI_txt {
  padding: 0 !important;
  overflow: hidden !important;

  max-width: 45rem !important;
  margin: 0 auto 0 !important;
}

.tsD_dl .tsI_hd {
  line-height: 1.2 !important;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.4) !important;
}
.tsD_dl .tsI_sh {
  font-weight:400 !important;
  margin: 0rem auto 1.5rem !important;
}


@media (min-width: 1025px){
  .tsD_dl .tsI {height: 90vh !important;}
  .tsD_dl .tsI_txt {padding: 0 0 6rem !important;}
  .tsD_dl .tsI_hd {font-size: 3rem !important;}
  .tsD_dl .tsI_sh {font-size: 1.5rem !important;}
}
@media (max-width: 1024px){
  .tsD_dl .tsI {
	min-height: 420px !important;
	height: 65vh !important;
  }
  .tsD_dl .tsI_txt {
	margin: 0 auto !important;
	padding: 0 0 2rem !important;
	max-width: 35rem !important;
  }
  .tsD_dl .tsI_hd {font-size: 2.3rem !important;}
  .tsD_dl .tsI_sh {font-size: 1.25rem !important;}
}

/*--- DL #2 ---*/
.tsD_dl2 {margin: 0 !important;}

.tsD_dl2 .tsI_txt{
  max-width:40rem !important;
  margin: 0 auto !important;
}

@media (min-width:1025px){
  .tsD_dl2 .tsI {height: 84vh !important;}
  .tsD_dl2 .tsI_txt {padding: 0 0 3.7rem !important;}
}

/*--------------------------------------------------- FEATURES ----------------------------------------------------*/

.tsD_photofeature16 {
  padding: 0 0 2rem !important;
  margin-top: -5rem !important;
}

.tsD_photofeature16 .tsI {
  margin-bottom: 0 !important;
  -moz-transition: all 0.35s ease-in-out !important;
  -webkit-transition: all 0.35s ease-in-out !important;
  -o-transition: all 0.35s ease-in-out !important;
  transition: all 0.35s ease-in-out !important;
}

.tsD_photofeature16 .tsI_wrp {justify-content: center !important;}

.tsD_photofeature16 .tsI_hd {font-size: 2rem !important;}
.tsD_photofeature16 .tsI_sh {
  font-size: .95rem !important;
  font-weight: normal !important;
}
.tsD_photofeature16 .tsI_img {
  padding: 1rem 1rem 1.35rem !important;
  max-width: 13rem !important;
  margin: 0 auto !important;
  -moz-transition: all 0.35s ease-in-out !important;
  -webkit-transition: all 0.35s ease-in-out !important;
  -o-transition: all 0.35s ease-in-out !important;
  transition: all 0.35s ease-in-out !important;
}
.tsD_photofeature16 .tsI:hover .tsI_img {
  transform: scale(1.2);
}

.tsD_photofeature16 .tsI_img img {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, .6) !important;
  border: 8px solid var(--promo1) !important;

  -moz-transition: all 0.35s ease-in-out !important;
  -webkit-transition: all 0.35s ease-in-out !important;
  -o-transition: all 0.35s ease-in-out !important;
  transition: all 0.35s ease-in-out !important;
}
.tsD_photofeature16 .tsI:hover .tsI_img img {
  border: 1px solid var(--promo3) !important;
}

@media (min-width: 1025px) {
  .tsD_photofeature16 .tsI {
    margin-left: 1% !important;
    margin-right: 1% !important;
    width: 22% !important;
  }
}

@media(max-width: 600px) {
  .tsD_photofeature16 .tsI {width: 100% !important;}
}

/*---------------------------------------------------- BANNER -----------------------------------------------------*/

.tsD_banner .tsI {padding: 1rem 0 !important;}

/*---------------------------------------------------- SPLIT ------------------------------------------------------*/
/*--------------------------------------------------- SERVICES ----------------------------------------------------*/
/*--------------------------------------------------- SUBPAGES ----------------------------------------------------*/

.tsD_internaldl {border-bottom: 2rem solid var(--promo1) !important;}

.tsD_internaldl .jarallax-img {object-position: top !important;}
.page-id-844286 .tsD_internaldl .jarallax-img {object-position: 50% 20% !important;} /* ABOUT US */
.page-id-844289 .tsD_internaldl .jarallax-img {object-position: 50% -30% !important;} /* Sports Physicals */

@media(max-width: 1024px) {
  .tsD_internaldl .tsI {height: 50vh !important;}
  .page-id-844289 .tsD_internaldl .jarallax-img { margin-top: 100px !important; object-position: 30% 50% !important;} /* Sports Physicals */
}

/* --- */
.tsD_internalbot {padding: 0 0 2rem !important;}
.tsD_internalbot .tsI {
  margin: 0 !important;
  padding: 0 2% !important;
}
.tsD_internalbot .tsI_btn {margin: 1.5rem 0;}


/* --- internal1 --- */
.tsD_internal1 {padding: 1rem 0 !important;}
.tsD_internal1 .tsI {
  width: 100% !important;
  margin: 0 !important;
}

.tsD_internal1 .tsI_btn {margin: 1rem 0;}

/* --- about --- */
.tsD_photofeature29 {
  max-width: 100rem !important;
  margin: 0 auto !important;

  padding-bottom: 3rem !important;
}
.tsD_photofeature29 .tsI {
  -moz-osx-font-smoothing: grayscale !important;
  backface-visibility: hidden !important;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5) !important;
  display: block !important;
  transform: translateZ(0px) !important;
  transition-duration: 0.3s !important;
  transition-property: transform !important;
  vertical-align: middle !important;

  flex-grow: 1 !important;
}
.tsD_photofeature29 .tsI:hover{
  -webkit-transform: rotate(4deg) scale(1.2) !important;
  -moz-transform: rotate(4deg) scale(1.2) !important;
  -ms-transform: rotate(4deg) scale(1.2) !important;
  -o-transform: rotate(4deg) scale(1.2) !important;
  transform: rotate(4deg) scale(1.2) !important;
  z-index: 98 !important;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.5) !important;
}

.tsD_photofeature29 .tsI_wrp {background-color: #fff !important;}
.tsD_photofeature29 .tsI_cptn {background-color: transparent !important;}
.tsD_photofeature29 .tsI .tsI_img {border: 12px solid #fff !important;}

.tsD_photofeature29 .tsI .tsI_hd {
  padding: 1.5rem 0 2.5rem 0 !important;
  margin: 0 !important;
}

@media (max-width: 750px) {
  .tsD_photofeature29 .tsI {width: 95% !important;}
}
@media(max-width: 850px) {
.tsD_photofeature29 .tsI:hover{
  -webkit-transform: rotate(2deg) scale(1) !important;
  -moz-transform: rotate(2deg) scale(1) !important;
  -ms-transform: rotate(2deg) scale(1) !important;
  -o-transform: rotate(2deg) scale(1) !important;
  transform: rotate(2deg) scale(1) !important;
}
}

/* --- PATIENT FORMS --- */
.tsD_formbtn .tsR_wrp {
  margin-bottom: 0 !important;
}

/* --- FAQS ---*/
.tsD_faq .tsI_num:before {
  background: var(--promo2) !important;
  padding: 0.5rem 1rem !important;
  color: var(--promoT) !important;
  font-weight: 700 !important;
}
/*---------------------------------------------------- REVIEWS ----------------------------------------------------*/
/*------------------------------------------------- FORM STYLING --------------------------------------------------*/

form * {
  letter-spacing: 1px !important; 
  font-weight: normal !important; 
}
.ginput_container input[type=text],
.ginput_container select {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  border-bottom: 2px solid var(--promo2) !important;
}
.ginput_container textarea {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  border-bottom: 2px solid var(--promo2) !important;
}
.section_content .large .gform_wrapper .button {margin-right: 90% !important;}
.gform_wrapper .gform_button[value=Submit] {box-shadow: none !important;}

/* WIDTH ADJUST */
.ginput_container input.medium, 
.ginput_container select.medium, 
.ginput_container textarea.medium {width: 100% !important;}

/* CLICK COLOR CHANGE */
.ginput_container input[type=text]:focus,
.ginput_container select:focus,
.ginput_container textarea:focus {border-color: var(--promo1) !important;}

/*---------------------------------------------------- FOOTER -----------------------------------------------------*/

.tsF .brand {display: none !important;}
.ftr {text-align: center !important;}
.ftr.logo img {width: 50% !important;}

.ftrimg img {mix-blend-mode: multiply;}


@media (max-width: 1024px){
  .ftr.logo img {width: 30% !important;  }
  .ftr:nth-child(n+2) {
    width: 49% !important;
    margin: 0 !important;
    display: inline-block !important;
  }
}
@media (max-width: 850px){
  .ftr:nth-child(n+2) {
    width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

.ftr-link {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    margin-bottom: 2rem !important;
}

.ftr-link a {
    font-size: 1.2rem;
    font-weight: bold !important;
}
/*---------------------------------------------------- MOBILE -----------------------------------------------------*/
/* fix for TSI app/Engage covering footer */
.tsF_section.social {padding-bottom: 7rem !important;}

/*overrides weird built in margin*/
@media (max-width: 450px){
#livesite_active_engage {margin-right:0px !important; }
}

.tsF_section.bottom.social {padding-bottom: 5rem !important;}
/*------------------------------------------------- MEDIA QUERIES -------------------------------------------------*/
/*------------------------------------------------- LIST STYLING --------------------------------------------------*/

.tsI_dsc ul li {list-style-type: square;}
.tsI_dsc ul li::marker {color: var(--promo1) !important;}

#container .the_list_item .the_list_item_desc ol li,  #container .the_list_item .the_list_item_desc ul li{position:static!important;}
ul.columns {columns: 3; -webkit-columns: 3; -moz-columns: 3;}
ul.columns2 {columns: 2; -webkit-columns: 2; -moz-columns: 2;}
ol.columns {columns: 3; -webkit-columns: 3; -moz-columns: 3;}
ol.columns2 {columns: 2; -webkit-columns: 2; -moz-columns: 2;}

@media (max-width: 400px) {
  ul.columns {columns: 1; -webkit-columns: 1; -moz-columns: 1;}
  ul.columns2 {columns: 1; -webkit-columns: 1; -moz-columns: 1;}
  ol.columns {columns: 1; -webkit-columns: 1; -moz-columns: 1;}
  ol.columns2 {columns: 1; -webkit-columns: 1; -moz-columns: 1;}
}

/*---------------------------------------------------- ANIMATION -----------------------------------------------------*/ 

/* Comes In */ 
.come-in {transform: translateY(150px);animation: come-in 1.3s ease forwards;} 
.come-in:nth-child(odd) {animation-duration: .9s;} /* So they look staggered * 
@keyframes come-in {to { transform: translateY(0); }} 

 /* Slide In */ 
.slide-in-right {-webkit-animation:slide-in-right .9s cubic-bezier(.25,.46,.45,.94) both;animation:slide-in 
right .9s cubic-bezier(.25,.46,.45,.94) both} 

@-webkit-keyframes slide-in-right{0%{-webkit-transform:translateX(1000px);transform:translateX(1000px);opacity:0}100%{-webkit-transform:translateX(0);transform:translateX(0);opacity:1}} 

@keyframes slide-in-right{0%{-webkit-transform:translateX(1000px);transform:translateX(1000px);opacity:0}100%{-webkit-transform:translateX(0);transform:translateX(0);opacity:1}} 

/*--------------- Slide Left ----------------*/ 

 .slide-in-left { 
-webkit-animation: slide-in-left 1.25s cubic-bezier(0.250, 0.460, 0.450, 0.940) .33s both; 
        animation: slide-in-left 1.25s cubic-bezier(0.250, 0.460, 0.450, 0.940) .33s both; 
} 

.tsI_hd {Animation-delay: .3s !important;} 
.tsI_sh {Animation-delay: .66s !important;} 
.tsI_btn {Animation-delay: 1s !important;} 

 @-webkit-keyframes slide-in-left { 
  0% {-webkit-transform: translateX(-1000px); transform: translateX(-1000px); opacity: 0;} 
  100% {-webkit-transform: translateX(0); transform: translateX(0); opacity: 1;} 
} 

@keyframes slide-in-left { 
  0% {-webkit-transform: translateX(-1000px); transform: translateX(-1000px); opacity: 0;} 
  100% {-webkit-transform: translateX(0); transform: translateX(0); opacity: 1;} 
} 
