/*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/


/* Table of contents
––––––––––––––––––––––––––––––––––––––––––––––––––
- Grid
- Base Styles
- Typography
- Links
- Buttons
- Forms
- Lists
- Code
- Tables
- Spacing
- Utilities
- Clearing
- Media Queries
*/


/* Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box; }
.column,
.columns {
  width: 100%;
  float: left;
  box-sizing: border-box; }

/* For devices larger than 400px */
@media (min-width: 400px) {
  .container {
    width: 85%;
    padding: 0; }
}

/* For devices larger than 550px */
@media (min-width: 550px) {
  .container {
    width: 80%; }
  .column,
  .columns {
    margin-left: 4%; }
  .column:first-child,
  .columns:first-child {
    margin-left: 0; }

  .one.column,
  .one.columns                    { width: 4.66666666667%; }
  .two.columns                    { width: 13.3333333333%; }
  .three.columns                  { width: 22%;            }
  .four.columns                   { width: 30.6666666667%; }
  .five.columns                   { width: 39.3333333333%; }
  .six.columns                    { width: 48%;            }
  .seven.columns                  { width: 56.6666666667%; }
  .eight.columns                  { width: 65.3333333333%; }
  .nine.columns                   { width: 74.0%;          }
  .ten.columns                    { width: 82.6666666667%; }
  .eleven.columns                 { width: 91.3333333333%; }
  .twelve.columns                 { width: 100%; margin-left: 0; }

  .one-third.column               { width: 30.6666666667%; }
  .two-thirds.column              { width: 65.3333333333%; }

  .one-half.column                { width: 48%; }

  /* Offsets */
  .offset-by-one.column,
  .offset-by-one.columns          { margin-left: 8.66666666667%; }
  .offset-by-two.column,
  .offset-by-two.columns          { margin-left: 17.3333333333%; }
  .offset-by-three.column,
  .offset-by-three.columns        { margin-left: 26%;            }
  .offset-by-four.column,
  .offset-by-four.columns         { margin-left: 34.6666666667%; }
  .offset-by-five.column,
  .offset-by-five.columns         { margin-left: 43.3333333333%; }
  .offset-by-six.column,
  .offset-by-six.columns          { margin-left: 52%;            }
  .offset-by-seven.column,
  .offset-by-seven.columns        { margin-left: 60.6666666667%; }
  .offset-by-eight.column,
  .offset-by-eight.columns        { margin-left: 69.3333333333%; }
  .offset-by-nine.column,
  .offset-by-nine.columns         { margin-left: 78.0%;          }
  .offset-by-ten.column,
  .offset-by-ten.columns          { margin-left: 86.6666666667%; }
  .offset-by-eleven.column,
  .offset-by-eleven.columns       { margin-left: 95.3333333333%; }

  .offset-by-one-third.column,
  .offset-by-one-third.columns    { margin-left: 34.6666666667%; }
  .offset-by-two-thirds.column,
  .offset-by-two-thirds.columns   { margin-left: 69.3333333333%; }

  .offset-by-one-half.column,
  .offset-by-one-half.columns     { margin-left: 52%; }

}


/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
  font-size: 62.5%; }
body {
  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: 'Nunito', sans-serif;
  color: #222; }

.other {
  background-image: url("/images/background.jpg");

}

/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300; }
h1 { font-size: 4.0rem; line-height: 1.2;  letter-spacing: -.1rem;}
h2 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -.1rem; }
h3 { font-size: 3.0rem; line-height: 1.3;  letter-spacing: -.1rem; }
h4 { font-size: 2.4rem; line-height: 1.35; letter-spacing: -.08rem; }
h5 { font-size: 1.8rem; line-height: 1.5;  letter-spacing: -.05rem; }
h6 { font-size: 1.5rem; line-height: 1.6;  letter-spacing: 0; }

/* Larger than phablet */
@media (min-width: 550px) {
  h1 { font-size: 5.0rem; }
  h2 { font-size: 4.2rem; }
  h3 { font-size: 3.6rem; }
  h4 { font-size: 3.0rem; }
  h5 { font-size: 2.4rem; }
  h6 { font-size: 1.5rem; }
}

p {
  margin-top: 0; }


/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #315a2e;
  text-decoration: none;
  font-weight: 700;
}
a:hover {
  color: #ACC37D; }


/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  display: inline-block;
  height: 38px;
  padding: 0 30px;
  color: #555;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  line-height: 38px;
  letter-spacing: .1rem;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: 1px solid #bbb;
  cursor: pointer;
  box-sizing: border-box; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  color: #333;
  border-color: #888;
  outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
  color: #FFF;
  background-color: #33C3F0;
  border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
  color: #FFF;
  background-color: #1EAEDB;
  border-color: #1EAEDB; }


/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  height: 38px;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 65px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
label,
legend {
  display: block;
  margin-bottom: .5rem;
  font-weight: 600; }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal; }


/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
  list-style: square inside; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 1%;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  font-size: 90%; }
li {
  margin-bottom: 0; }


/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
  padding: .2rem .5rem;
  margin: 0 .2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #F1F1F1;
  border: 1px solid #E1E1E1;
  border-radius: 4px; }
pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }


/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
  text-align: left;
  line-height: 2.0rem;
}
th:first-child,
td:first-child {
  padding-left: 0; }
th:last-child,
td:last-child {
  padding-right: 0; }


/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }


/* Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-right {
  float: right; }
.u-pull-left {
  float: left; }


/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }


/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }


/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/


/* Larger than mobile */
@media (min-width: 400px) {}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}

/* Larger than tablet */
@media (min-width: 750px) {}

/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}


/* General Classes
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.resize {
	width: 100%;
	height: auto;
}

.right-align {
	text-align: right;
}

.left-align {
	text-align: left;
}

.main-content {
	float: right;
  padding-top: 1%;
}

.main-content h1{
  font-weight: bold;
  color: #315A2E;
}

.w15, .w25, .w35, .w45 {
	width: 100%;
	text-align: center;
}

.img-left img, .img-right img {
	width: 60%;
	height: auto;
}

@media (min-width: 550px) {
.img-right {
	float: right;
	padding-left: 2%;
}

.img-left {
	float: left;
	padding-right: 2%;
}

.img-left img, .img-right img {
	width: 100%;
	height: auto;
}

.w15 {
	width: 15%;
}

.w25 {
	width: 25%;
}
	
.w35 {
	width: 35%;
}

.w45 {
	width: 45%;
}
}
/* Header
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.green-bg {
	background: #ACC37D;
}

.contact {
	text-align: right;
}

.contact a {
	color: #ffffff;
	text-decoration: none;
	transition: 0.3s;
}

.contact a:hover {
	color: #315a2e;
}

.contact-top {
  width: 100%;
  background-color: #ACC37D;
  float: left
}

.contact-inner {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  box-sizing: border-box;
}

.directions {
	display: inline-block;
	border: 1px solid #ACC37D;
	background: #ffffff;
	text-align: left;
	padding: 3px;
	margin: 3px;
	font-weight: 700;
	font-size: 12px;
	line-height: 12px;
}

.directions a, .address a {
	color: #315a2e;
	text-decoration: none;
}

.directions a:hover, .address a:hover {
	color: #ACC37D;
}

.address {
    text-align: right;
    font-weight: 700;
    font-size: 3.0rem;
    line-height: 3.0rem;
    padding: 2% 0 0 0;
}

.alert {
  padding: 20px;
  background-color:  #315A2E;
  color: #FFF;
  text-align: center;
}
.alert a{
  color:#fff;
}

.closebtn {
  margin-left: 15px;
  color: white;
  font-weight: bold;
  float: right;
  font-size: 22px;
  line-height: 20px;
  cursor: pointer;
  transition: 0.3s;
}
.closebtn:hover {
  color: black;
}
/* =Nav
-------------------------------------------------------------- */

#menu {
	background-color:#D7D7D7;
	text-align:center;
}
	
ul.topnav {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #D7D7D7;
  text-align:center;
  line-height: 1.4rem;
}

ul.topnav li {display: inline;
text-align:center;}

ul.topnav li a {
    display: inline-block;
    color: #315a2e;
    text-align: left;
    padding: 14px 18px;
    text-decoration: none;
    transition: 0.3s;
    font-size: 2.2rem;
    font-weight: 700;
}

ul.topnav li a:hover {
	background-color: #ACC37D;
	color: #ffffff;
}

ul.topnav li.icon {display: none;}


@media screen and (max-width:680px) {
  ul.topnav li:not(:first-child) {display: none;}
  ul.topnav li.icon {
    float: right;
    display: inline-block;
  }
}

@media screen and (max-width:680px) {
  ul.topnav.responsive {position: relative;}
  ul.topnav.responsive li.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  ul.topnav.responsive li {
    float: none;
    display: inline;
  }
  ul.topnav.responsive li a {
    display: block;
    text-align: left;
  }
}

/* Slideshow  */

.mySlides {display: none}

/* Slideshow container */
.slideshow-container {
  width: 100%;
  position: relative;
  margin: auto;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  margin-top: -22px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}

/* Caption text */
.text {
  color: #ffffff;
  text-shadow: 0 0 2px #333;
  font-size: 3.0vmax;
  padding: 8px 12px;
  position: absolute;
  bottom: 5%;
  left: 5%;
  width: 100%;
  text-align: left;
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active, .dot:hover {
  background-color: #717171;
}

/* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

/* On smaller screens, decrease text size */
@media only screen and (max-width: 300px) {
  .prev, .next {font-size: 11px}
}
/* =Calls
-------------------------------------------------------------- */

.calls {
	display: flex;
  justify-content:space-around; 
	margin: 4% 0;
}

.calls div {
	width: 25%;
	text-align: center;
}

.calls img {
	width: 30%;
}

.calls p {
	font-size: 1.8vmax;
	font-weight: 700;
	color: #315a2e;
}

.calls a {
	text-decoration: none;
}

.calls a:hover {
	filter: saturate(0.5)
}

.dental-waiting-room {
	background: url("../images/beamsville-dental-office-waiting-room.jpg");
	background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
	padding: 5% 0;
	text-align: center;
	color: #ffffff;
  margin-bottom: 2%;
}
.dental-waiting-room p{
  font-size: 2.0rem;
}

.services-section {
	display: flex;
	padding: 2%;
}

.services-section a {
  display: inherit;
  text-decoration: none;
  color: inherit;
}

.services-section a:hover {
  color: #d0e28c;
}

.services-section i {
	color: #ACC37D;
	font-size: 6.0rem;
}

.services-section h5 {
	color: #315a2e;
	font-weight: 700;
}

.services-section p, .home-bio p {
	line-height: 1.4rem;
	font-size: 1.4rem;
}

.left-icon {
	width: 25%;
	text-align: center;
  padding-right: 5%;
}

.home-bio h1 {
	color: #315a2e;
	font-weight: 700;
}

.google-maps {
	overflow: hidden;
	height:400px;
}
.google-maps-home {
	overflow: hidden;
}

.google-maps iframe {
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.footer {
	color: #315a2e;
	font-size: 1.4rem;
	line-height: 1.4rem;
  font-weight: 600;
  padding: 25px 0;
}

.footer h4 {
	font-weight: 900;
	color: #315a2e;
}

.bottom-nav {
	list-style-type: none;
  	margin: 0;
  	padding: 0;	
}
.bottom-nav a {
	text-decoration: none;
	color: #315a2e;
}
.bottom-nav a:hover {
	color: #fff;
}
.bottom-nav li{
  margin-bottom: 1rem;
}

.footer-contact {
  line-height: 2.0rem;
}
.footer-contact a {
  color: #315a2e; 
  text-decoration: none;
}
.footer-contact a:hover {
  color: #fff;  
}

.footer2 {
  background-color: #315a2e;
  color:#fff;
  font-size:1.2rem;
  padding:1% 0 1%;
}
.footer2 a{
  color:#fff;
  font-weight:bold;
  text-decoration: none;
}
@media (max-width: 768px){
  .footer2 {
    text-align: center;}
}

.uponline{
  text-align:right;
}
@media (max-width: 768px){
  .uponline {
    text-align: center;}
}
.uponline img{
  max-width:80px;
}

.home-text {
    width: 75%;  
}

/* Services
-------------------------------------------------------------- */

.services-main {
	float: right;
}

.sidebar {
	padding:2%;
	text-align:center;
	font-size:1.5rem;
	float: left;
}

.sidebar ul{
	list-style:none;
}

.sidebar li{
	background-color: #ACC37D;
	margin-bottom:2%;
	color:#ffffff;
}
.sidebar li a{
	text-decoration:none;
	color:#ffffff;
	padding: 1%;
  font-weight: 400;
	
}

.sidebar li a:hover {
  color: #333333;
  font-weight: 400;
 }

@media (max-width: 900px) {
.sidebar {
	font-size:1.2rem;}
}

.contact-form {
	border: 1px solid #315a2e;
	border-radius: 15px;
	padding: 4%;
	margin-bottom:2%;
}

@media (max-width: 550px) {
.sugar1 {
  display: none;
}
}

@media (min-width: 551px) {
.sugar2 {
  display: none;
}
}
/* Google API Map
-------------------------------------------------------------- */
.google-directions {
	text-align:center;
	background-color: #d7d7d7;
	display:flex;
	justify-content:center;
	padding-top:1%;
}

 /* Always set the map height explicitly to define the size of the div
       * element that contains the map. */
      #map {
        height: 100%;
      }
      /* Optional: Makes the sample page fill the window. */
      html, body {
        height: 100%;
        margin: 0;
        padding: 0;
      }
      .map-control {
        background-color: #fff;
        border: 1px solid #ccc;
        box-shadow: 0 2px 2px rgba(33, 33, 33, 0.4);
        font-family: 'Roboto','sans-serif';
        margin: 10px;
        padding-right: 5px;
        /* Hide the control initially, to prevent it from appearing
           before the map loads. */
        display: none;
      }
      /* Display the control once it is inside the map. */
      #map .map-control { display: block; }

      .selector-control {
        font-size: 14px;
        line-height: 30px;
        vertical-align: baseline;
      }