/* Reset
------------------------------------------------------------ */
* {
  margin: 0;
  padding: 0;
}
html { overflow-y: scroll }
body {
  background: #336633;
  font-size: 13px;
  color: #666666;
  font-family: Arial, helvetica, sans-serif;
}
#bodywrapper {
  width: 100%;
}
ol, ul {
  list-style: none;
  margin: 0;
}
 ul li {
  margin: 0;
  padding: 0;
 }
h1 {
  margin-bottom: 10px;
  color: #111111;
}
a, img {
  outline: none;
  border: none;
  color: #000;
}
img {
  display: block;
  margin-bottom: 10px;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section { 
  display: block;
}

h3 span {
  padding-left: 60px; 
  background-image: url(widget.png);
  background-repeat: no-repeat;
  background-position: middle left;
}

/* Structure */
#wrapper {
  width: 96%;
  max-width: 920px;
  margin: auto;
  padding: 0.5% 2% 0 2%;
}
#blurb {
  position: relative;
  font-size: 1.5em;
  text-align: center;
  color: white;
  background-color: #9d162b;
  width: 90%;
  padding: 3% 5%;
  margin: 0;
}
#contacts {
  position: relative;
  font-size: 1.3em;
  text-align: center;
  color: white;
  width: 94%;
  padding: 2% 3%;
  margin: 0 auto;
}
#contacts section { 
  background-color: rgba(51, 102, 51, 0.25); 
  margin-bottom: 1em; 
  padding-left: 1%;
  padding-right: 1%; 
  padding-top: 1em; padding-bottom: 1em;
  display: inline-block; width: 44%;
  vertical-align: top;
}

#contacts section p { margin: 2%; font-size: 0.85em; overflow: hidden; text-align: center; }
#contacts a { display: block; color: white; overflow: hidden; text-overflow: "Email us"; }

/* Logo H1 */
header h1 {
  margin: 0 auto;
  display: block;
  text-indent: -9999px;
}
header h1 img { margin: 0 auto; width: 80%; max-width: 360px; }

/* Nav */
header nav {
  float: right;
  margin-top: 40px;
}
header nav li {
  display: inline;
  margin-left: 15px;
}
#skipTo { display: none }
#skipTo li { background: #b1fffc }

.clearfix { clear: both; }

/* Banner */
#banner {
  display: block; 
  margin-bottom: 15px;
  width: 100%;
}
#banner img { width: 100% }
 
/* Image grid */
#image-grid { position: relative; display: table; margin: 2em auto; border: 1px solid #ddd; border-radius: 3px; }
#image-grid .overlay { display: none; border-radius: 5px; position: absolute; background-size: cover; z-index: 99 }
#image-grid .row-1 .cell:first-child { border-radius: 5px 0 0 0; }
#image-grid .row-1 .cell:last-child { border-radius: 0 5px 0 0; }
#image-grid .row-4 .cell:first-child { border-radius: 0 0 0 5px; }
#image-grid .row-4 .cell:last-child { border-radius: 0 0 5px 0; }
#image-grid .row { display: table-row; }
#image-grid .row .cell { display: table-cell; overflow: hidden; background: linear-gradient(to bottom right, #ffffff , #ffe0e0); 
  margin: 0; padding: 0; }
#image-grid .row .cell .front { display: block; position: relative; }
#image-grid .row .cell .back { display: none; position: relative; }
#image-grid .row .cell, #image-grid .row .cell .front, #image-grid .row .cell .back {
  /* min-width: 21vh; min-height: 21vh; width: 21vh; height: 21vh; */
  min-width: 120px; min-height: 120px; width: 120px; height: 120px;
}
.row-5 { visibility: hidden !important; height: 1px !important; }
.row-5 * { height: 1px !important; min-height: inherit !important; } 

/* Media Queries */
@media screen and (min-width: 480px) and (max-width: 526px) { 
    #wrapper { width: 100%; padding: 2% 0; }
    #image-grid { margin: 1em auto; border: 2px outset #ddd;  }
}
@media screen and (width: 360px) { 
    #wrapper { width: 100%; padding: 2% 0; }
    #image-grid { margin: 0.5em auto; border: none; }
}

@media screen and (max-width: 479px) { 
    #wrapper { width: 100%; padding: 2% 0; }
    #contacts {
        float: left;
        clear: left;
        margin: 0 0 10px;
        width: 100%;
    }
    #contacts section { float: none; width: 100%; }
    #image-grid { margin: 0.8em auto; border: 1px outset #ddd; }
    #image-grid .row .cell, #image-grid .row .cell .front, #image-grid .row .cell .back {
      min-width: 90px; min-height: 90px; width: 90px; height: 90px;
    }
}

@media screen and (min-width: 640px) {
  body {
    background-image: url('images/background.jpg');
    background-repeat: no-repeat;
    background-position: top right;
    background-size: auto 100%;
  }
  #bodywrapper {
    background-image: url('images/backgroundl.jpg');
    background-repeat: no-repeat;
    background-position: top left;
    background-size: auto 100%;
  }  
} 

@media screen and (max-width: 1099px) { 
    #contacts section a .short { display: inline; }
    #contacts section a .long { display: none; }
}

@media screen and (min-width: 1100px) { 
    #contacts section a .short { display: none; }
    #contacts section a .long { display: inline; }
}

