@charset "utf-8";

/*  Main Stylesheet for Default - Wide  */

/*  COLORS    

Blue:  #084086;
Orange: #d65e04;
Gray:  #abb0b3;

*/

/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Positioning
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Images
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Graphical Elements
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Buttons
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Lists -- OL, UL, DL
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Blockquotes and Testimonials
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Text Boxes
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Information Boxes
-----------------------------------------------------------------*/
/* ----------------------------------------------------------------
	Alerts
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
	Home Page
-----------------------------------------------------------------*/

* {	margin: 0; 	padding: 0; }

body {
	background-color: #ffffff;
    clear: none;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 16px;
	color: #2d3b46;
}

.container {
    margin: 0 auto;
    max-width: 1440px;
    position: relative;
	padding: 1em;
}




/* Colors------------------------------------------------------*/

.blue { color: #084086; }
.orange { color: #d65e04; }
.gray { color: #abb0b3; } /* Dark Gray */
.black { color: #2d3b46; }


.bgBlue { background-color: #084086; }
.bgOrange { background-color: #d65e04; }
.bgGray { background-color: #ebebeb; }


.emergency { color: red; }


/* Typography------------------------------------------------------*/

h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: 1em;
	color: #084086;
	font-family: "Open Sans", Arial, sans-serif;
	font-weight: normal;
	font-style: normal;
}

h1 {
    font-size: 1.75em;
	 color: #0a4086;
}

h1.title {
	font-size: 2em;
	font-family: Georgia;
	margin-top:0;
	margin-bottom: 0;
}

h2.section-title {
	font-size: 2em;
}

h2 {
	font-size: 1.6em;
	font-weight: 400;
}

h3 {
	font-size: 1.5em;	
}

h4 {
	font-size:1.4em;
}

h5 {
	font-size: 1.25em;
}

h6 {
	font-size: 1em;
	color: #009933;
}

p {
	font-size:1em;
	line-height:1.6em;
	margin-bottom:1.5em;
}

a {
	color: #084086;
	text-decoration: none;
}

a:hover {
	color:#d65e04;
	text-decoration: underline;
}

.intro, .large {
	font-size:1.1em;
	line-height:1.75em;
	clear:left;
	margin: 1em 0;
}

.quote {
	color: #fff;
	font-style: italic;
	width: 100%;
	text-align: center;
	padding-top: .5em;
	padding-bottom: .5em;
}


.quote p {
	font-size: 1em;
	line-height: 1.1em;
	margin-bottom: 0;
	max-width: 95%;
}

.small {
	font-size: 75%;
}

.big {
	font-size: 125%;
}


.cta {
	font-style:italic;
	font-weight:bold;
	color:#1E70B9;
	font-size:1.25em;
	line-height:1.75em;
	text-align:center;	
}

.caption {
	margin-left: 15px;
	font-style: italic; 
	font-size: 1.1em;
}



/* Positioning------------------------------------------------------*/


.clear {
	clear:both;
}

.tright {
  text-align: right !important;
}
.tleft {
  text-align: left !important;
}

.center {
	text-align:center;
	margin-left: auto;
	margin-right: auto;
}

.right, .left {
	float:none;
	display:block;
}


.flex {
	display: block;
}

.w100 {
	width: 100%;
}

.mt1 { margin-top: 1em; }
.mb1 { margin-bottom: 1em; }
.mt2 { margin-top: 2em; }
.mb2 { margin-bottom: 2em; }
.mt3 { margin-top: 3em; }
.mb2 { margin-bottom: 2em; }
.mb3 { margin-bottom: 3em; }
.mt5 { margin-top: 5em; }
.mb5 { margin-bottom: 5em; }


/* Boxes----------------------------------------------------------*/

.callbox {
	background-color:#CA1C24;
	border: 1px solid #555;
	color: #fff;
	font-size: 1.2em;
}

.phone p {
	background-color: #ffffff;
	color: #555;
	padding: 1em;
}



/* Images----------------------------------------------------------*/

img {
	max-width: 100%;
	height: auto;
}

.frame {
	padding: 5px; 
	border:1px solid #cccccc;
}

.border {
	border: 1px solid #555;
}

.br8 {
	border-radius: 8px;
}


img.right, img.left {
	float: none;
	display: block;
	min-width: 100px;
	margin:1em auto 1.5em;
}



/* Social Icons ------------------------------------------------------*/


#social img {
   margin-right: 10px;
}

/* Graphical Elements------------------------------------------------------*/


hr {
    background: #0171bb none repeat scroll 0 0;
    border: none;
    height: 1px;
    padding: 0;
    width: 98%;
	margin: 1em auto 2.5em;
	clear:both;
}

hr.gray {
    background: #ccc none repeat scroll 0 0;
	width: 25%;
	margin-left:0;
}

i.fa, .icon {
	margin-right:.5em;
}

.icon {
	margin-right:8px;
}

.quote.bgOrange {
	margin-bottom: 2em;
}


/* Buttons-----------------------------------------*/


.btn {
    background-color: #03609F;
    border: 1px solid #17026B;
    border-radius: 5px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) inset;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    float: left;
    font-size: 1em;
    font-weight: normal;
    height: 2em;
    letter-spacing: 1px;
    outline: 0 none;
    overflow-wrap: normal;
    padding: 0 1em;
    vertical-align: middle;
    white-space: nowrap;
	line-height: 2em;
}

.btn:hover {
	color:#ccc;
}

#mapbtn {
    float: none;
    margin: 12px 0;
    text-align: center;
}

.hours {
	margin-top: 2em;
	margin-bottom: .5em;
}

.refill-btn, .appt-btn, .hours-btn {
	background: #d65e04; 
	border-radius: 8px;
   color: #ffffff;
   cursor: pointer;
   font-family: arial;
   font-size: 1.3em;
	line-height:1.5em;
   font-weight: bold;
   height: 45px;
   margin: 0 auto;
   text-align: center;
   text-decoration: none;
   text-shadow: 0 1px 0 rgba(0, 0, 0, 0.8);
   width: 100%;
	max-width: 250px;
}

.hours-btn {
	background: #fc7b19; /* Old browsers */
	background: -moz-linear-gradient(top, #084086 0%, #084086 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #084086 0%,#084086 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #084086 0%,#084086 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border: 1px solid #084086;
	margin-bottom:.5em;
}

.hours-btn:hover, .refill-btn:hover {
		background: #444;
}


.refill-btn img, .hours-btn img {
	margin-left:.5em;
	margin-top:0;
}

.refill-btn {
	border: none;
}


.logos {
	margin-left: auto;
	margin-right: auto; 
	padding-top: 1em;
	padding-bottom: 2em;
}

.logo-img {
    margin-top: 1em;
    margin-bottom: 1em;
	text-align: center;
}

.logo-img img {
	max-width: 75%;
}

#services .flex3 {
    padding-bottom: .5em;
}

.seasonal .flex3 {
	text-align: center;
}


#about .flex-container.mb3 {
	margin-bottom: 3em;
}


.hero #gallery {
	width: 100%;
}

#gallery img {
	margin: 0 !important;
}



/*  -------- 	REFERRAL SECTION  -------  */

.referralContainer {
	width: 100%;
	padding-top: 1.5em;
}


#referralContent {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
        -ms-flex-pack: space-between;
            justify-content: space-between;
	max-width: 1200px;
	margin: 0 auto;
	padding-left: 1em;
   padding-right: 1em;
}


#referralContent p.subtext {
   color: #fff;
	font-size: 1.25em;
}


#referralContent .flex-container.nowrap {
	max-width: 140px;
	margin-bottom:1.5em;
	margin-left: auto;
	margin-right: auto;
}

	#referralContent img {
		max-width: 48px;
	}

/* -------------------------------  */



/*  -------------  STAFF PAGE   ----------------- */


		#staff-content {
			margin: 1em 0 2em 0;
		}

      #about {
			margin: 1em 0 -.2em 0;
      }



      #resourceLinks {
        margin: 1em auto 2em auto;
        width: 95%;
      }
		
		#staff-content img { 
			text-align: center;
			margin-bottom:1em;
			width: 100%;
			max-width: 400px;
		}
		
		#staff-content .flex-container {
			margin-bottom: 3em;
			padding-left: 15px;
			padding-right: 15px;
			padding-top: 15px;
		}

      #staff-content .flex-container.bgGray {
         padding-bottom: .75em;
      }
		
	
		#staff-content .flex p {
			font-size: 1.2em;
		}
		
		#staff-content .flexImg.order {
			order: 1;
			margin-right: 0;
		}

      #resourceLinks .flex-container {
        margin: 1em auto 3em;
      }

      .flexlink-img {
         text-align: center;
			margin-bottom: 1em;
      }

      .flexlink-text p {
        font-size: 1.15em;
        line-height: 1.4em;
        margin-bottom: 1.5em;
      }

      .flexlink-text h2 {
        font-size: 1.4em;
        font-weight: 400;
        text-align: center;
      }


/*  -------------  NEW PATIENTS PAGE   ----------------- */


#newPatients p { font-size: 1.25em; } 
#tbl-hours { margin-bottom: 2em; font-size: 1.2em; }



/*  -------------  SERVICES PAGE   ----------------- */


#services #page-title.container.clear {
        padding-top: 0;
}

h1.title {  
    font-size: 2em;
	 line-height: 1.25em;
    font-family: Georgia;
    margin-top: 0;
    margin-bottom: 0;
}

#services {
	width: 98%;
}

#services.container {
	padding: 1em 0 1em .5em;
}

.percent90 {
    width: 95%;
    margin: 0 auto;
}

#services .flex-container {
	display: flex;
	flex-wrap: wrap;
	padding-left: .5em;
}

#services .flex4 {
	margin-bottom: .5em;
	margin-right: 0;
	flex: 1 0 calc(50% - 1em);
}

#services .default_button.xlarge {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0;
  width: 90%;
  padding: 0;
  line-height: 1.4em;
  height: 55px;
}

#services #results {
	width: 95%;
	margin-left: auto;
	margin-right: auto;
}

p.overflowVisible {
	overflow: visible !important;
}

p.overflowHidden {
	overflow: hidden !important;
}

#painImg, #laserImg, #dentistryImg, #behaviorImg, #nutritionImg, #fleaImg {
	max-width: 250px;
}

#nutritionImg {
	margin-bottom: 2em;
}

#surgery img {
	margin-top: 30px;
	max-width: 250px;
}


/* -------------   CONTACT PAGE -------------   */

#mapaddr {
   font-size: 1em;
   line-height: 1.7em;
   clear: both;
   text-align: center;
}


/* -------------   EMERGENCY PAGE -------------   */

#emergency-logos {
	display:flex;
	flex-wrap: wrap; 
	margin-bottom:3em;
	justify-content: space-around;   
}

#emergency a {
	font-size: .9em;
}

#bluepearl-nfld, #bluepearl-sko, #vet-specialty {
	text-align: center;
}

#bluepearl-nfld, #bluepearl-sko {
	margin-bottom: 5em;
}


#emergency p {
	font-size: 1.25em;
}

#sub-footer h3 {
   font-size: 1.25em;
   margin-bottom: .75em;
   text-decoration: underline;
}

#sub-footer h3.last {
	margin-top: 1.25em;
}

#sub-footer p, #sub-footer table {
   font-size: .9em;
}

#sub-footer p {
   margin-bottom: 1em;
}


/* -------------------------------  */

/* Go To Top/Bottom Buttons  */

.btntop, #back2Top {
	position:fixed;  /* Or fixed */
	bottom: 20px;
   right: 20px;
	overflow: hidden;
   z-index: 999;
   cursor: pointer;
}

.btnbtm {
	position:fixed;
	top: 15px;
   right: 10px;
}


#bottom, #top, #back2Top {
	background: #084086 none repeat scroll 0 0;
	border-radius: 5px;
	color: #ffffff;
	font-size: 28px;
	padding: 4px 8px;
	opacity:.8;
}

i.fa.fa-arrow-circle-up {
	margin-right: 0 !important;
}


/* End of Go To Top Button  */



/* OL, UL, DL Lists-------------------------------------------------*/


#content ul, ol {
	margin-left: 1.5em;
	margin-bottom: 1em;
}

#content ul li {
	list-style-type: disc;
}

#content li {
	font-size: 1em;
	line-height: 1.6em;	
}

#content ol li li {
	list-style-type:lower-alpha;
}

#content li ul li {
	font-size: inherit;
}

.col2 {
	columns: 2;
}

.col3 {
	columns: 3;
}

/* Lists with Image Bullets------------------------*/

#content ul.imgbull {
  list-style-type: none;
}

#content ul.imgbull li {
	list-style-type: none;
  background-image: url(../images/icons/checkmark.png);
  background-repeat: no-repeat;
  background-position: 0 .3em;  /* horizontal, then vertical */
  padding-left: 1.3em;
}

/* Definition Lists--------------------------------*/

dt {
	font-size:1em;
	line-height:1.5em;
	font-weight: bold;
}

dd {
	margin-bottom: 1.5em;
	font-size:.85em;
	line-height: 1.4em;
}


/* Lists with Pseudo Elements------------------------*/

.pseudo li:last-child {
    color: orange;
	margin-bottom:30px;
}

ul.pseudo2 :last-of-type {
    color: orange;
}

.pseudo3 li:not(:last-child) {
    color: purple;
}

#content .after li { display: inline; margin-left:5px; font-size: 1em;}
.after li:not(:last-child):after { content: "  |  "; margin-left: 5px;}


/*  Textboxes with Image---------------------------------------------*/


.feature {
	max-width:300px;
	border: 1px solid #e5e5e5;
	border-radius:  5px;
}

.fbox-media img {
	 border-bottom: 1px solid #e5e5e5;
}

.image-title {
	text-align:center;
	color:#555;
	font-weight:bold;
	margin-top:1em;
	text-transform:uppercase;
	font-size:1.5em;
}

.subtitle {
	font-size: 1.2em;
	padding:.5em;
	text-align:center;
}


.facebook {
	margin: 2em auto;
	text-align: center;
}

.logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
}


#social {
	max-width: 150px;
}

  .subtext {
    margin-top: .7em;
	  max-width: 1200px;
  }

#bottom {
			background-color: #084086;
		}


/*  HOME PAGE ---------------------------------------------*/

#servicesHome {
   width: 100%;
   background-color: #fff;
	margin-bottom: 0;
   padding-bottom: 0;
}

#servicesHome .flex3 {
	margin-bottom: 2em;
}

/*  ABOUT PAGE ---------------------------------------------*/

#outer-box {
	text-align: center;
}

#aboutIntro {
	width: 95%;
	margin-left: auto;
	margin-right: auto;
}

#about .intro  {
	font-size: 1em;
}


#outer-box h4 {
	max-width: 95%;
}

#tour {    /* Gallery Container */
   background: #ebebeb;
   width: 100%;
   padding-top: 4em;
   padding-bottom: 4em;
}

#tour #gallery {
	margin-left: auto; 
	margin-right: auto;
	width: 100%;
	margin-bottom: 4em;
}

  /*  NEW PATIENT FORM  */

.authorization {
	margin-top: 0px;
	margin-bottom: 0px;
}
