/* -----------------------------------------------------------------------*/
/* >>>>>>>> PATIENT PORTAL CSS <<<<<<<<<<<<<<<<-*/
/* ---------------------------------------------------------------------*/

/*EXAMPLE OF FONT IMPORT */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600);
@import url('https://fonts.googleapis.com/css?family=Alegreya+Sans:500');
@font-face {
    font-family: "idealtheme";
    src: url("../fonts/idealtheme.woff");
}


* {
    padding:0; margin:0;
}

html, body {
    height: 100%;
    transition: all .4s ease-in-out;
}

body {
   -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: 'Open Sans', sans-serif;
}

p {

}

a {
    text-decoration: none;
}

h1 {
    font-family: 'Alegreya Sans', sans-serif;
    color: #013d79;
    font-weight: 500;
}

/*When the body color conflicts with the tooltip */
p.aToolTipContent {
/*     color: white !important; */
}


/* ---------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>> HEADER <<<<<<<<<<<<<<<<<<<<-*/
/* -------------------------------------------------*/
.header-wrapper {

}

.top-header{
    height: 40px;
    background: #f9f9f9;
    border-bottom: 1px solid #e4e4e4;
    font-size: 11px;
    text-transform: uppercase;
    display: none;
}

.top-header a{
    color: #013d79;
    line-height: 40px;
    vertical-align: middle;
}

.ico-bars:before {
    font-family: 'idealtheme';
    content: "\f0c9";
    color: #013d79;
    font-style: normal;
    font-size: 13px;
    margin-right: 8px;
    vertical-align: text-top;
    padding-top: 1px;
    display: inline-block;
}

.ico-phone5:before {
    font-family: 'idealtheme';
    content: "\e70e";
    color: #013d79;
    font-style: normal;
    margin-right: 8px;
    margin-left: 41px;
}

 .call-us {
     transform: translateY(-2px);
 }

div.f_left {
    max-width: 1180px;
    box-sizing: border-box;
    padding: 0 20px;
    margin: 0 auto;
    color: #013d79;
}

.top_login {
    padding: 12px 0px;
    margin-right: 41px;
}

.soc_name{
    display: none;
}

.top-socials {
    float: right;
    margin-right: -9px;
}

.ico-facebook4::before {
    font-family: 'idealtheme';
    content: "\f09a";
    color: #808c8c;
    font-style: normal;
    font-size: 14px;
    display: inline-block;
    width: 30px;
}

.ico-twitter4:before {
    font-family: 'idealtheme';
    color: #808c8c;
    font-style: normal;
    font-size: 14px;
    content: "\f099";
    display: inline-block;
    width: 32px;
}

.ico-instagram:before {
    font-family: 'idealtheme';
    content: "\ea90";
    font-size: 14px;
    color: #808c8c;
    font-style: normal;
    display: inline-block;
    width: 32px;
}

div.login_form_colored {
    display: none;
}

.login_popup {
    display: inline-block;
}

.logo{
    display: block;
}

.logo a{
    height: 45px;
}

.logo img{
    margin: 10px;
   max-width: 90%;
   padding-top: 20px;
    
}
/*********************MEGA MENU START*************************/

.main-menu {
    display: none;
}
.main-menu ul li.mega-menu-parent  > ul {
    left: -250px;
    width: 285px;
    height: 308px;
    background-color: #1B2E5F;
}

.main-menu ul li.mega-menu-parent > ul > li {
    font-size: 12px;
    font-weight: 400;
    padding: 0 ;
    margin: 0 ;
    text-transform: uppercase;
    height: 28px;
    overflow: visible;
    clear: left;
    display: block
}

.main-menu ul li.mega-menu-parent > ul > li:hover a span.parent_arrow {
    background-image:url('../images/arrow_white.png');
}

span.parent_arrow {
    background-image:url('../images/arrow.png');
    display: block;
    float: right;
    width: 28px;
    height: 13px;
    margin-top: 11px;
    background-repeat: no-repeat;
    transition: all .4s ease-in-out;
}

.main-menu ul li.mega-menu-parent ul li:first-child ul.mega-menu {
    display: none;
    opacity: 0;
    visibility: hidden;
    transition: all .4s;
}

.main-menu ul li.mega-menu-parent:hover ul li:first-child ul.mega-menu {
    display: block;
    opacity: 1;
    visibility: visible;
}

.main-menu ul li.mega-menu-parent ul li a {
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
    padding: 0 22px;
    color: #eaeaea;
    position: relative;
    display: block;
    font-weight: 500;
    line-height: 30px;

    transition: all .4s ease;
    background-color: #1B2E5F;
}
.main-menu ul li.mega-menu-parent ul li a:hover {
    background: #013d79;
}
.main-menu ul li.mega-menu-parent ul.mega-menu {
    margin-left: 285px;
    width: 900px;
    height: 308px;
    display: none;
    visibility: hidden;
    opacity: 0 ;
    top: 0;
    z-index: 100;
}

.main-menu ul li.mega-menu-parent ul.mega-menu ul {
 width: 100%;
}
.main-menu ul li.mega-menu-parent ul.mega-menu ul li {
 background: rgba(0, 0, 0, 0.02);
}
.main-menu ul li.mega-menu-parent ul.mega-menu:hover li{
    background: rgba(255, 255, 255, 0.02);
}
.main-menu ul li.mega-menu-parent ul li:hover ul.mega-menu{
    display: block;
    visibility: visible;
    opacity: 1 ;
}

.main-menu ul li.mega-menu-parent ul li ul.mega-menu li ul li a{
    width: 258px;
    background: rgba(0, 0, 0, 0.02);
    transition: all .4s ease-in-out;
}

.main-menu ul li.mega-menu-parent ul li ul.mega-menu li ul li a:hover{
    background-color: #1B2E5F;
}

.main-menu ul li.mega-menu-parent ul li ul.mega-menu li ul li a:before{
    content: url('../images/arrow_right.png');
    padding-right: 8px;
}

.main-menu ul ul.mega-menu > li {
    display: inline-block;;
    float: left;
    width: 33.3%;
    box-sizing: border-box
}

.main-menu ul li.mega-menu-parent ul.mega-menu ul {
    position: relative;
    left: auto;
}
li.gallery:hover ul.team-members {
    z-index: 104;
    display: block !important;
    opacity: 1 !important;
    transition: all .4s ease-in-out;
}
ul.team-members {
    width:900px !important;
    display:none !important;
    opacity: 0 !important;
    transition: all .4s ease-in-out;
    overflow: hidden;
    margin-left: 285px;
    margin-top:-198px;
    padding-top: 22px;
    height: 300px;
    background: #013d79;
}
 ul.team-members li {
    display: inline-block;
    overflow: hidden;
    width: 180px !important;
    float: left;
    height: 300px;
    background: #013d79;
}
ul.team-members li a {
    background: #013d79 !important;
}
ul.team-members li a:hover {
    background: #013d79;
}

ul.team-members li:hover {
    background: #013d79 !important;
}
span.parent_arrow {
    background-image:url('../images/arrow.png');
    right: 20px;
    display: block;
    background-repeat: no-repeat;
}
.ico-gallery::before {
    font-family:'idealtheme';
    content: "\e6a1";
    font-weight:400;
    font-style: normal;
    color: white;
    width: 20px;
    height: 20px;
    padding-right: 8px;

}
ul.team-members li a span::before {
    content: url('../images/arrow_right.png');
    padding-right: 5px;
}
/*********************MEGA MENU END***************************/


/* ---------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>> MAIN NAV <<<<<<<<<<<<<<<<<<-*/
/* -------------------------------------------------*/
.menu_wrapper{
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    text-align: center;
   
}
.main-menu {
    display: none;
    line-height: 74px;
    vertical-align: middle;
    margin-top: -35px;
    padding-left: 43px;
}

.main-menu ul {
    list-style-type:none;
    display: inline-block;
}

.main-menu > ul > li {
    position: relative;
    display: inline-block;
}

.main-menu > ul > li > a {
    color: #013d79;
    font-size: 12px;
    line-height: 18px;
    padding: 28px 18px;
    font-weight: 600;
    display: block;
    text-transform: uppercase;
    background: rgba(255, 255, 255, 0.02);
}

.main-menu >ul > li:hover > a {

}

.main-menu ul ul {
    visibility: hidden;
    opacity: 0;
    left: 0;
    position: absolute;
    width: 220px;
    background: #013d79;
    transition: all 0.4s ease-in-out;
    z-index: 10000;
}

.main-menu  ul  li:hover ul {
    visibility: visible;
    opacity: 1;
    display: block
}

.main-menu ul ul > li {
    width: 100%;
    transition: all .4s ease;
}

.main-menu  ul li ul  li  a {
    display: block;
    font-weight: 500;
    line-height: 30px;
    font-size: 12px;
    padding: 0 5px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
    color: #eaeaea;
    text-transform: uppercase;
}

.main-menu ul ul > li:hover {
    background-color: #1B2E5F;
}
.mountain {
    width: 100%;
    height: 48px;
    background-color: #1265A8;
    display: none;
}

/* ----------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>> CONTENT <<<<<<<<<<<<<<<<<<<<-*/
/* --------------------------------------------------*/

.content {
    border-radius: 10px;
    padding: 8px 20px 20px;
    width: 900px;
    margin: 40px auto 20px;
}

.portal_menu > ul {
   padding: 20px 15px 10px;
   font-size: 14px;
}

.portal_menu li a {
    line-height: 1.2em;
    padding: 2px 0 0 52px;
}

.text {
    width:650px;
    min-height:300px;
}

.text .spacer {height: 170px; width: 85px; float:left;}

.text h1 {
    padding-top: 16px
}

.text li {
    list-style: disc inside none;
    padding: 2px;
}

.login_intro {
    line-height: 24px;
    color: #3a3a3a;
    font-size: 14px;
    font-weight: 400;

}
/* --------------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>>> LOGIN FORM <<<<<<<<<<<<<<<<<<<<-*/
/* ------------------------------------------------------*/
.content form {
}

.content form label span, #signin_form p a {
}


#signin_form {
    margin: 25px 100px 0px 190px;
}

.signin_inputs input:not([type="submit"]) {
    border: 1px solid #999999;
    border-radius: 5px 5px 5px 5px;
    padding: 3px;
    width:150px;
}

#signin_form label {
    font-size:14px;
}


input[type=text],input[type=password], select {
    border: 1px solid #CCCCCC;
    border-radius: 6px 6px 6px 6px;
    color: #666666;
    padding: 3px;
}

textarea {
    border-radius:6px;
    border: 1px solid #CCCCCC;
    color: #666666;
    padding:6px;
    width:99%;
}

select {
    border: 1px solid #CCCCCC;
    border-radius: 6px 6px 6px 6px;
    padding: 3px;
}

.help_marker {
    visibility: hidden;
}

.help_link span:after {
    content: '\f059';
    visibility: visible;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color:#666;
}

/* --------------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>> BUTTON STYLING <<<<<<<<<<<<<<<<<<<<-*/
/* ------------------------------------------------------*/

.button, button {
  background-image: none;
 /*padding: 8px 16px !important;
  border: none !important;*/
  background-color: #013d79;
  transition: all .2s;
  border-radius: 4px;
  -webkit-appearance: none;
}

.button:hover, button:hover {
  background-color: #083C3B;
}

/* ----------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>>> FOOTER <<<<<<<<<<<<<<<<<<<<-*/
/* --------------------------------------------------*/
.sub_foot {
    padding: 12px;
    position: relative;
    display: block;
    margin: 0 auto;
    width: 100%;
    display:block;
    box-sizing: border-box;
    background-color: #90a9c5;

}
.sub_foot a {
    color: white;
    font-size: 12px;
}

.footer_address {
    display:none;
}

/* ---------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>> STICKY FOOTER <<<<<<<<<<<<<<<<-*/
/* -------------------------------------------------*/

/*Sticky Footer Code Below */
.wrapper{
  min-height: 100%;
  
}

.wrapper:after {
  content: "";
  display: block;
}

.sub_foot .wrapper:after {
 /* equal to footer height */
  height: 38px;
}

/* ---------------------------------------------------*/
/* >>>>>>>>>>>>>>> HIDE SOME THINGS <<<<<<<<<<<<<<<<-*/
/* -------------------------------------------------*/


.portal_menu  .pt_allergies {display:none;}
.state_divider, .state_province, .zip_divider, .zip_postal {display:none;}
.pwd_set_account {}

#seconary_nav {
  display: none;
}

/* =========================================================================*/
/*-------------------------------------------------------------------------*/
/* UPDATE PORTAL MENU ANIMATIONS */
/*-----------------------------------------------------------------------*/
/* =====================================================================*/
.portal_menu li {
    transition: all .1s;
    padding-left: 10px;
    background-position: 8px 0
}

.portal_menu li:hover {
    background-position: 0 0;
    margin-left:0;
}

.portal_menu li a:hover {
    text-decoration: none;
    font-weight: bold;
}

/* -----------------------------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>>>>> Registration overrides<<<<<<<<<<<<<<<<<<-*/
/* ---------------------------------------------------------------------*/

/* Registration */
.address1, .address2{
    float: left;
    width: 32%;
}


/* -----------------------------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>>>> PRACTICE SPECIFIC OVERRIDES<<<<<<<<<<<<<<<<<<-*/
/* ---------------------------------------------------------------------*/
/* Hide Patient Scheduling */
.schedule-step {
    display: none
}


/* -----------------------------------------------------------------------*/
/* >>>>>>>>>>>>>>>>>>>>>>>>> MOBILE MEDIA QUERIES<<<<<<<<<<<<<<<<<<<<<<<-*/
/* ---------------------------------------------------------------------*/

@media screen and (max-width: 1200px){

    body {
        padding-top:0;
        width:100%;
        margin:auto;
        overflow-x: hidden;
    }
	.menu_wrapper{
		 height: 165px;
	}
	

    header {
        position:relative;
        margin-top: 0;
        text-align: center;
    }

    span.call-us {
        display: none;
    }

    .main-menu {
        display:none;
    }
    .text {
        max-width:none;
        width:auto;
    }

    .text h1 {
        text-align:center;
    }

    input {
        font-size:12px;
    }

    .wrapper {
        width: 100%;
        box-shadow:none;
        min-height: 860px;
    }
    .content {
        padding: 0 22px 22px;
        width: auto;
        margin: 20px;
    }

    .content-wrapper {
        width: 100%;
    }
    .container {
        width: auto;
    }

    #seconary_nav {
      display: block;
      font-size: 22px;
      margin: 10px auto;
      text-align: center;
      width:80%;
      color: black;
    }
    .right-block {
      display: none;
      text-align: right;
    }

    .draggable {
      max-width: 100% !important;
    }

    #registration {margin-right:0px;}
    .content_inner {padding:0;}
    .text {padding:0px; width:auto;}

    .block label {font-size:16px; padding:12px 4px 8px;}
    .block label span {font-size:16px;}

    .menu_main {
        display:none;
    }
    .portal_menu {display:none;}
    .menu_main .link_active {display:none;}

    .text p.msg {
        color: #f60;
        position: relative;
        right: 0;
    }

    .draggable {
      max-width: 100% !important;
    }

    #signin_form {
        max-width: 400px;
        margin: 20px auto;
    }

    #signin_form label {
        font-size: 11px;
    }

    .bg-top-bar {
        font-size: 13px;
        padding: 9px 22px;
    }

    .soc-icons {
        display: none;
    }
    .bg-menu {
        display:block;
        width: 100%;
    }

    /*Fix Documents */

    .content .document_menu {
        width: auto;
        margin: 0;
        border-radius: 16px;
    }

    /* Mobile Form fixes */
    input[type=text],input[type=password], select {
        width: 95%;
    }

    .signin_inputs input {
        width: 55%;
    }

    form label span {
        font-size: 12px;
        line-height: 1.1em;
        font-weight: normal;
    }

    /*Registration Form Mobile Fixes */
        .stats_block label, .contact_block label, .ec_block label, .insurance_block label, .zip, .city, .state, .country, .address_block .address1,.address_block .address2 {
           width: 45% !important;
           display: inline-block !important;
           float:none !important;
        }
        .password_block .PWD1, .password_block .PWD2{
            float:none !important;
        }

}