/* Box Hacking
   I NEED this!!! Include padding and border in the element's total width and height, like original IE model! https://css-tricks.com/box-sizing/ 
*/
html 
{
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

*,
*:before,
*:after 
{
  box-sizing: inherit;
  -moz-box-sizing: inherit;
  -webkit-box-sizing: inherit;
}
.cf:after 
{
  content: "";
  display: table;
  clear: both;
}

body
{
/*  color: #2a391b; */
  color:#003c2c;
  font-family:Arial;
  font-size:1.05rem;
  background-color:#283719;
  background-image:url(/images/grassbackground.jpg);
  margin:0 auto;
  font-family:Georgia,serif;
}
img
{
  display:block; /* need this to get rid of white space below img */
}
header, main, footer
{
  max-width:950px;
  margin:0 auto;
}
header a
{
  text-decoration:none;
/*  color: #c6d166; */ /* #fdfef2; */
  color: #ffffff;
}
header a:hover
{
  color:#99a067;
}
header #banner-div
{
  position:relative;
  margin:0 auto;
  border:4px solid #243033;
  border-radius:20px;
}
header #banner-img
{
  width:100%;
  border-radius:20px;
}
header #banner-logo
{
  width:90%;
  position:absolute;
  bottom:1rem;
  left:1rem;
  z-index:1000;
}
header #banner-contact
{
  color:white;
  font-size:3.2vw;
  position:absolute;
  right:1vw;bottom:1vw;
  font-weight:bold;
  z-index:1000;
}
@media screen and (min-width: 950px) {
  header #banner-contact {
    font-size: 1.8rem !important;
  }
}

#menu
{
  margin-left:6px;
  color: #c6d166; /* #fdfef2; */
}

#menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
/*    background-color: #283719; */
}

#menu li {
    text-align:center;
/*    border-right:4px solid #243033; */
    width:24.8%;
    float: left;
    padding-top:.5rem;
    padding-bottom:.5rem;
}
#menu li a {
    display: block;
    color: white;
    text-align: center;
    text-decoration: none;
}

#menu li:hover {
/*    background-color: #243033; */
    background-color: #283719;
}
#menu li
{
  font-size:.9rem;
}
@media screen and (min-width: 600px) 
{
  #menu li
  {
    font-size:1.4rem;
  }
}

main
{
  background-color: #99a067; /* #fdfef2; */
/*  background-color:#fdfef2; */
  margin:0 auto;
  border:4px solid #243033;
  border-radius:20px;
}
footer
{
  background-color: #99a067; /* #fdfef2; */
  color:#003c2c;
  margin:0 auto;
  margin-top:1rem;
  text-align:center;
  padding:1rem;
  border:4px solid #243033;
  border-radius:20px;
  font-size:.8rem;
}
footer a
{
  text-decoration:none;
  color: #243033;
}
.page-title
{
  padding:1rem;
  text-align:center;
  color: #283719;
  font-size:3.1rem;
  font-family: Georgia,serif;
  font-style:italic;
  font-weight:bold;
  text-shadow: 1px 0 0 #243033, 0 -1px 0 #243033, 0 1px 0 #243033, -1px 0 0 #243033;
 /*  text-shadow:4px 4px 4px gray; */
}
/*
input[type=text], select, textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    resize: vertical;
}

label {
    padding: 12px 12px 12px 0;
    display: inline-block;
}

input[type=submit] {
    background-color: #4CAF50;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    float: right;
}

input[type=submit]:hover {
    background-color: #45a049;
}
*/
button
{
  display: inline-block;
  margin: .5rem;
  padding: .5rem;
  font-size: 1rem;
  line-height: 1;
  appearance: none;
  box-shadow: none;
  border-radius: 0;
}
button:focus 
{
  outline: none;
}
section.press
{
  margin:0 auto;
  text-align:center;
}
button 
{
  color: #fff;
  background-color: #003c2c;  /* #6496c8; */
  border: none;
  border-radius: .5rem;
  box-shadow: 0 .3rem #243033;
  cursor:pointer;
}
button:hover,
button.hover 
{
  background-color: #194f41; /* #417cb8; */
}
button:active,
button.active 
{
  background-color: #194f41; /* #417cb8; */
  box-shadow: 0 0 #27496d;
  transform: translateY(.3rem);
}

.button-small
{
  width:5rem;
}
.button-medium
{
  width:10rem;
}
.button-large
{
  width:15rem;
}

div.box-text, div.box-image
{
  margin:0 auto;
  width:90%;
  text-align:left;
  border:4px solid #283719;
  border-radius:6px;
  padding:1rem;
  margin-bottom:2rem;
  box-shadow:2px 2px;
}
.testimonial-attribute
{
  text-align:right;
}
div.box-image
{
  padding:0;
}
div.box-image img
{
  width:100%;
}

#rates p
{
  margin-bottom:1rem;
}

.section-title
{
border-top:1px solid #283719;
font-weight:bold;
margin-bottom:.5rem;
margin-top:.5rem;
padding-top:.5rem;
}

.rounded-image
{
  width:100%;
  border-radius:20px;
}

#builtby, #builtby a
{
  color:#003c2c;
  font-size:.8rem;
}
#builtby
{
  display:table;
  margin:0 auto;
}
#builtby div
{
  display:table-cell;
  vertical-align:middle;  
}
#acsw
{
  width:100%;
  max-width:3rem;
  margin-right:.5rem;
}
#facebook
{
  width:100%;
  max-width:10rem;
  margin-right:2rem;
  border-radius:4px;
}

