:root {
    --white:#fff;
    --black:#000;
    --blue:#13294B;
    --blue-light:#e8ecf3;
    --blue-dark:#040b14;
    --gold: #dcb33e;
    --gold-dark:#a68a35;
    --gold-light: #e2dcce;
    --gold-light-2: #f3f0eb;
}

 html { scroll-behavior: smooth; scroll-padding-top: 225px; }
.bg-white { background-color: var(--white); }
.bg-black { background-color: var(--black); }
.bg-blue { background-color: var(--blue); }
.bg-blue-dark { background-color: var(--blue-dark); }
.bg-gold { background-color: var(--gold); }
.bg-gold-light { background-color: var(--gold-light); }
.bg-blue-light { background-color: var(--blue-light); }
.bg-gold-light-2 { background-color: var(--gold-light-2); }
.bg-gold-dark { background-color: var(--gold-dark); }

.text-white { color: var(--white); }
.text-black { color: var(--black); }
.text-blue { color: var(--blue); }
.text-gold { color: var(--gold); }
.text-gold-dark { color: var(--gold-dark); }

a { color:var(--blue); }

.header-wrapper { position:fixed; top:0; left:0; right:0; z-index:999; width:100%; }
header { background-color: var(--white);}


.nav-util, .nav-util a { color: var(--white); text-decoration: none; font-size:14px; font-weight: 500; }
/* .nav-util a:not(:last-child)::after { content: " | "; color: var(--white); margin: 0 .5rem } */

body { background-color:var(--white);  font-family: "Montserrat", sans-serif; font-size:18px; color:var(--black); }

.text-fs-12 { font-size:12px; }
.text-fs-14 { font-size:14px; }
.text-fs-15 { font-size:15px; }
.text-fs-16 { font-size:16px; }
.text-fs-18 { font-size:18px; }
.text-fs-20 { font-size:20px; }
.text-fs-24 { font-size:24px; }
.text-fs-28 { font-size:28px; }
.text-fs-32 { font-size:32px; }
.text-fs-36 { font-size:36px; }
.text-fs-40 { font-size:40px; }

.mw-990 { max-width:990px; }
.mw-1280 { max-width:1280px; }

nav { margin:auto; } 
nav ul { margin: 0; padding: 0; list-style: none; position: relative;  } 
nav ul li { display: inline-block; position:relative; } 
nav > ul > li {  padding:10px 0; }
nav a { display: block; padding: 0 10px; color: var(--black); font-size: 17px; text-decoration: none; font-weight: 600; } 
nav ul ul { opacity:0; position: absolute; top: 40px; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease;  background: var(--blue); padding: 1rem; border-radius:.25rem; z-index:50; text-align: left;  pointer-events: none; width:325px; } 

nav ul ul.dd-about-us { width:204px;}
nav ul ul.dd-workers-compensation { width:188px;}
nav ul ul.dd-patient-center { width:244px;}
nav ul ul.dd-locations { width:388px;}
nav ul ul.dd-physicians { width:355px;}
nav ul ul.dd-contact-us { width:204px; right:0; }
nav ul ul.dd-physical-therapy { width:184px; }


nav ul li:hover > ul { display:inherit;  top: 40px; opacity:1;  pointer-events: all; } 
nav ul ul li { width: 100%; float: none; display: list-item; position: relative; margin-bottom:5px; } 
nav ul ul ul li { position: relative; top:-60px; left:200px;  } 
nav ul ul a { font-size:14px; color: var(--white); }
nav a:hover { color: var(--blue); } 
nav ul ul a:hover { color: var(--gold); } 
nav ul ul li:hover > ul { display:inherit; }

.fade-in { opacity:0; }
.mobile-overlay-wrapper { opacity:0; position:fixed; top:0; left:0; right:0; bottom:0; background-color: rgba(0,0,0, .9); z-index:1000; display:flex; align-items:center; justify-content: center; text-align: center; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; pointer-events: none; }
.mobile-overlay-wrapper > li { margin-bottom:1rem; }
.mobile-overlay-wrapper a  { color:var(--white); text-decoration: none; font-size:27px; }
.mobile-overlay-wrapper a.order-online-link { font-size:20px; display:inline-block; margin-top:.5rem;  }
.mobile-dropdown { display:none; }
.mobile-dropdown a { font-size:15px; color: var(--white); }
.mobile-trigger { cursor:pointer; width:40px; height:20px; position:fixed; top:140px; right:23px; z-index:1005;  display:none; }
.mobile-trigger span { width:100%; display: block; background-color: var(--blue); height:2px; margin-bottom:5px; border-radius: .25rem; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease;}

body.open .mobile-trigger span { background-color: var(--white); }
body.open .mobile-trigger span:nth-child(3) { display:none; }
body.open .mobile-trigger span:nth-child(1) { transform:rotate(45deg) }
body.open .mobile-trigger span:nth-child(2) { transform:rotate(-45deg); margin-top:-7px; }
body.open .mobile-overlay-wrapper { opacity: 1; pointer-events: all; }

.cycle-slideshow{position:relative;width:100%;height:600px;overflow:hidden; background-color: var(--black);}
.cycle-slideshow > div{ position:absolute;width:100%;height:600px;opacity:0;transition:opacity 1s ease-in-out;}
.cycle-slideshow > div img { width:100%; height:100%; object-fit:cover; object-position: center; opacity:.7 }
.cycle-slideshow div.active{opacity:1;}
#custom-pager{display:flex;justify-content:center;margin-top:5px;}
#custom-pager span{cursor:pointer;font-size:55px;padding:5px;color:var(--gray);}
#custom-pager span.active{opacity:1;color:var(--gold);}
.slide { position:relative; }
.hero-text { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); z-index:15; text-align: center; width:90%; }
.hero-text h1 { font-size:clamp(30px, 6vw, 60px); color: var(--white);  }
.btn-blue { display:inline-block; background-color: var(--blue); color: var(--gold); border-radius: 100px; padding:.5rem 2rem; font-size:16px; text-align: center; text-transform: uppercase; text-decoration: none; font-weight: bold; }
footer { padding:6rem 3rem; }
footer a { color:var(--white); text-decoration: none;}
.btn-gold { display:inline-block; background-color: var(--gold); color: var(--white); text-align: center; padding:.25rem 2rem; font-size:16px; font-weight: bold; border:none; border-radius: 100px; text-transform: uppercase; text-decoration: none;}
.btn-gold-sm { display:inline-block; background-color: var(--gold); color: var(--white); text-align: center; padding:.25rem 2rem; font-size:12px; font-weight: bold; border:none; border-radius: 100px; text-transform: uppercase; text-decoration: none;}
.btn-blue-md { display:inline-block; background-color: var(--blue); color: var(--white); text-align: center; padding:.25rem 2rem; font-size:14px; font-weight: bold; border:none; border-radius: 100px; text-transform: uppercase; text-decoration: none;}
.btn-blue-sm { display:inline-block; background-color: var(--blue); color: var(--white); text-align: center; padding:.25rem 2rem; font-size:10px; font-weight: bold; border:none; border-radius: 100px; text-transform: uppercase; text-decoration: none;}
#submit-ml { position:absolute; top:3px; right:3px; }
.bg-trans { background-color: transparent;}
#map { height: 800px; }
ul.make-columns { column-count: 2; }
.doc-image { height:300px; overflow:hidden; display:block; }
.doc-image img { object-fit:cover; width:100%; height:100%; object-position:top }

.physicians-page .doc-image { height:380px; }
.lds-ring { display: inline-block; position: relative; width: 80px; height: 80px; }
.lds-ring div { box-sizing: border-box; display: block; position: absolute; width: 64px; height: 64px; margin: 8px; border: 8px solid var(--blue); border-radius: 50%; animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; border-color: var(--blue) transparent transparent transparent; }
.lds-ring div:nth-child(1) { animation-delay: -0.45s; }
.lds-ring div:nth-child(2) { animation-delay: -0.3s; }
.lds-ring div:nth-child(3) { animation-delay: -0.15s; }
@keyframes lds-ring { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.physicians-grid { position: relative; min-height: 50vh; }
.loader { position: absolute; top: 30px; left: 50%; transform: translateX(-50%); z-index: 10; }

.video-responsive { overflow: hidden; padding-bottom: 56.25%; position: relative; height: 0; }
.video-responsive iframe, .video-responsive video { left: 0; top: 0; height: 100%; width: 100%; position: absolute; }

.specialties-page .specialist-body-img, .specialties-page .specialist-body { width:190px !important; margin:auto; max-width:inherit !important; }
.specialties-page .specialty-title { position:absolute; bottom:0; left:0; background:#152a4a87; color:#fff; width:100%; text-align:center; padding:1.3rem 0; font-size:16px;  }
.specialties-page .image-link-wrapper { position:relative; overflow:hidden; }
.specialties-page .image-link-wrapper img { -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease;
 }
.specialties-page .image-link-wrapper:hover img { transform:scale(1.2); }
.specialties-page .specialties-hero { background:#00477f; color:#fff; }
.specialties-page .common-dot { width:17px; height:17px; 
    margin: 0 5px;
    background-color: var(--blue);
    border: 2px solid #fff;
    border-radius: 50%;
    display: inline-block;
 }
.specialties-page .part-name { font-size:11px; }
.specialties-page .specialist-part-one { top:74px;  left:-15px; }
.specialties-page .specialist-part-two { top: 53px; left: 45px; }
.specialties-page .specialist-part-three { top: 167px; left: 47px; }
.specialties-page .specialist-part-nine { top: 151px; left: 131px; }
.specialties-page .specialist-part-eight { top: 198px; left: 119px; }
.specialties-page .specialist-part-four {  top: 204px; left: -46px; }
.specialties-page .specialist-part-five {  top: 301px; left: 23px; }
.specialties-page .specialist-part-six { bottom: 5px; left: 37px; }
.specialties-page .specialist-part-seven { bottom: 16px; left: 95px; }
.specialties-page .specialty-grid { margin-top:-140px; }
.specialties-page .specialty.bg-img { padding-bottom:150px; }
.specialties-page .specialty-content { padding:80px 80px 200px 55px; }

.specialties-page .specialist-part-name { cursor:pointer; position:absolute; }

.specialties-page .specialty-select { width:auto; }
.specialties-page .hero, .specialties-page.hero  { background:var(--gold) url(/northern/img/hero-speciality.jpg) right 0 no-repeat; background-size:cover; padding:100px 0 200px; }
h3 { font-size:1.5rem; }
.border-top-10-gold { border-top:10px solid var(--gold); }

.column-count-2 { columns:2; }
.physical-therapy-services-hand-page .physical-therapy-services-hand, 
.physical-therapy-services-spine-page .physical-therapy-services-spine,
.physical-therapy-services-ortho-page .physical-therapy-services-ortho,
.physical-therapy-services-vestibular-page .physical-therapy-services-vestibular,
.physical-therapy-services-concussion-page .physical-therapy-services-concussion,
.physical-therapy-services-workers-comp-page .physical-therapy-services-workers-comp,
.physical-therapy-services-dry-needling-page .physical-therapy-services-dry-needling { font-weight:bold; }
.hero-text img { max-width:100% !important; width:auto !important;}

@media (max-width:1380px){
    nav a { font-size:15px; padding:0;  }
}

@media (max-width:990px){
    .mobile-trigger { display:block; }
    .nav-util a { font-size:12px; }
    .logo-main { width:250px; }
    ul.make-columns { column-count: 1; }
    .physicians-page .doc-image { height:auto; }
}

@media(max-width:768px){
    .cycle-slideshow, .cycle-slideshow > div{ height:300px;width:100%; }
    footer { padding:3rem }
    .specialties-page .specialty-content { padding:40px 20px 0; }
    .specialties-page .specialty-grid { margin-top:-100px; }
    .column-count-2 { columns:1; }
    
}

@media(max-width:575px){
    .specialties-page .specialty-title { padding:1.3rem .5rem; }
}
