
html,
body {
  font: 400 16px/1.4 'Arial', sans-serif;
  margin:0;     /* This is used to reset any browser-default margins */
  height:100vh; /* This is needed to overcome a Chrome bug. */
  width:100%;  
}


body.ngdialog-open { overflow: initial !important; }


.ngdialog.ngdialog-theme-default .ngdialog-content {

  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);

  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;

  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -ms-perspective: 1000;
  perspective: 1000;
}


.nav, .pagination, .carousel, .panel-title a { cursor: pointer; }



#header {
    height:100vh;
	min-height:100vh;
    width:100%;
    background: url(../img/intro.png);
    background-color: #222;
	  xbackground-attachment: fixed;
	  background-repeat: no-repeat;
	  xbackground-position: 0% -20%;
    -webkit-background-size: cover;
	   -moz-background-size: cover;
		 -o-background-size: cover;
			background-size: cover;
}


#topNav {
	z-index:-1;
}

#nav {
  background-color: #ffffff;
}


.divider {
	height:50px;
}

.panel {
	border-width:0;
}

.scroll-top {
   position:fixed;
   bottom:0;
   right:6%;
   z-index:300;
   background: #f2f3f2;
   font-size:24px;
   border-top-left-radius:3px;
   border-top-right-radius:3px;
}

.section {
  min-height: 100vh;
  height: auto !important;
}

.image-section {
  min-height: 60vh;
  height: auto !important;
  
  background-color: #222;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	   -moz-background-size: cover;
		 -o-background-size: cover;
			background-size: cover;
}

/* Bootstrap Overrides */


.page-header {
    border-bottom: none;
}

.thumb {
    margin-bottom: 30px;
}

.dropdown-header {
  color: #78b829;
  font-size: 18px;
  font-weight: bold;
}


select:required {
    background: #f9faea;
}

select:invalid {
    border-color: red;    
}

input:required {
    background: #f9faea;
}

input:invalid {
    border-color: red;    
}

input.ng-invalid {
    border-color: red;    
}

textarea:required {
    background: #f9faea;
}

textarea:invalid {
    border-color: red;    
}

.app-form .ng-dirty.ng-invalid{
    border-color: red;    
}

img.centered {
   display: block;
   margin: auto auto;
 }


 @media (max-width:767px){

    h1 {
        font-size: 28px;
    }

    h2 {
        font-size: 24px;
    }

    h3 {
        font-size: 22px;
    }
 }


