@import url('https://fonts.googleapis.com/css?family=IM+Fell+English+SC');

:root {
  /*font-size:0.625em;*/
}

  /*  MAIN LAYOUT	============================================================================= */


  html,body {min-height:100vh}
  body {
    margin: 0;
    padding: 0;
    font-size: 18px;
    overflow-x: hidden;
    font : 98%/1.6 Arial, "Helvetica Neue", Helvetica, Helve, sans-serif;
    color : #666; 
    background: #EEE8AA; 
    height:100%;
  }


  #wrapper {
    width: 1200px; /*100%;
    position: relative;
    text-align: left;*/
            margin: 0 auto;
            margin-top : 15px;
            margin-bottom: 30px;
            background-color: #fff;
            -moz-box-shadow:    9px 9px 7px -5px #000;
            -webkit-box-shadow: 9px 9px 7px -5px #000;
            box-shadow:         9px 9px 7px -5px #000;
  }
  
    #headcontainer {
      width: 100%;
      
    }
  
      header {
        clear: both;
        width: 50%; /* 1000px / 1250px */
        max-width: 75em; /* 1200px / 16 */
        margin-top: 10px;
        margin-left: 10px;
        /*margin-right : auto;*/
        padding: 0;
        position: relative;
        color: #000; /*#000;*/
        z-index: 999;
        background: green;
        
      }
  
        #toplogo { 
          /*padding: 5px; /*2em 0 0.5em 0;*/
          width: 100%;
          /*height:140px; */
          float: left;
          /*color: #030;*/
          margin-top: 20px;
          
          
        }


        #maincontentcontainer {
          width: 100%; border-top:5px #a2e5b9 solid; margin-top: 0px; /*0.6em; /*border-bottom:1px #ccc solid;*/
        }
      
          #maincontent{
            clear: both;
            width: 95%; /* 1000px / 1250px */
            max-width: 92.31em; /* 1200px / 13 */
            margin-top: 10px;
            margin: auto;
            color: #333;
            line-height: 1.5em;
            font-size: 0.8125em; /* 13 / 16 */
            
          }


          
/*  HEADINGS  ============================================================================= */

h1, h2, h3, h4, h5, h6 {
  font-family:  Arial, "Helvetica Neue", Helvetica, Helve, sans-serif;
  font-weight : normal;
  margin-top: 0px;
  }
  
  h1 { 
  color: rgb(4, 97, 27);
  margin-bottom : 0.2em;
  font-size : 2.5em; /* 40 / 16 */
  line-height : 1.4;
  font-weight:bold;
  }
  
  h2 { 
    color: rgb(4, 97, 27);
  margin-bottom : .5em;
  font-size : 2em; /* 32 / 16 */
  line-height : 1.2;
  }
  
    h2.dotted {
    padding-bottom : 0.5em;
    margin-bottom:0;
    border-bottom: 2px #ccc dotted;
    font-size : 1.5em; 
    text-transform:uppercase;
    }
  
  h3 { 
    color: rgb(4, 97, 27);
  margin-bottom : 0.3em;
  font-size : 1.375em; /* 22 / 16 */
  line-height : 1.3; }
  
    footer h4 { 
    color: #fff;
    margin-bottom : 0.7em;}
  
  
  h4 { 
    color: rgb(4, 97, 27);
  margin-bottom : 0.5em;
  font-size : 1.25em; /* 20 / 16  */
  line-height : 1.25; }
  
  h5 { 
    color: rgb(4, 97, 27);
  margin-bottom : 1.0em;
  font-size : 1em; /* 16 / 16 */
  text-transform:uppercase; }
  
  h6 { 
    color: rgb(4, 97, 27);
  font-size : 1em; /* 16 / 16  */ }
  
  /*  TYPOGRAPHY  ============================================================================= */
  
  p, ol, ul, dl, address { 
  margin-bottom : 1em; 
  font-size : 1em; /* 16 / 16 = 1 */ }
  text-align: justify;
  
  p {
  hyphens : auto;  }
  
  
  p.introtext {
  font-size: 1.375em; /* 22 / 16 */
  line-height: 1.4em;
  }
  
  p.center {
  text-align: center;
  }


/* TABLES ============================================================================= */
#meals {
  font-family: Arial, Helvetica, sans-serif;
  border-collapse: collapse;
  width: 100%;
}

#meals td, #meals th {
  border: 1px solid #ddd;
  padding: 15px;
  text-align: left;
}

#meals tr:nth-child(even){background-color: #f2f2f2;}
 
#meals th {
  padding-top: 12px;
  padding-bottom: 12px;
  text-align: left;
  background-color: #04AA6D;
  color: white;
}


#meals .GridviewScrollItem:hover td
{
  color: white;
background-color: rgb(0, 61, 51);
}

/* TABLES ============================================================================= */

	#footercontainer {
		width: 100%;
		background: #222;
	}
	
		footer {
			clear: both;
			width: 95%; /* 1000px / 1250px */
			max-width: 100em; /* 1200px / 12 */
			margin: 0 auto;
			font-size: 0.75em; /* 12 / 16 */
			padding: 1.5em 0;
			color: #ccc;
		}


		footer a:link, footer a:visited { color: #ccc; text-decoration: none; }
		footer a:hover { color: #fff; text-decoration: underline; }

		ul.pagefooterlist {
			display: block;
			float: left;
			margin: 0px;
			padding: 0px;
			list-style: none;
			width:100%;
		}

		ul.pagefooterlist li {
			clear: left;
			margin: 0px;
			padding: 0px 0px 3px 0px;
			display: block;
			line-height: 1.5em;
			font-weight: normal;
			background: none;

		}

		.socialmedia
		{
			height: 34px;
		}

		.socialmedia img {
			padding: 5px 10px 5px 0px;
			vertical-align: middle;
			opacity: 0.75;
			-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
			filter: alpha( opacity  = 75);
			-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all 0.3s ease;
		}

		.socialmedia a
		{
			text-decoration: none;
		}

		.socialmedia a:hover img {
			opacity: 1.0;
			-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
			filter: alpha( opacity  = 100);
		}
		.socialmedia span {  }


    #smallprintcontainer {
      width: 100%;
      background: #111;
      text-align: center;
    }
    
      #smallprint {
        clear: both;
        width: 80%; /* 1000px / 1250px */
        max-width: 109.09em; /* 1200px / 11 */
        margin: 0 auto;
        font-size: 0.6875em; /* 11 / 16 */
        padding: 2em 0;
        color: #ccc;
      }
      
      #smallprint img.footerlogo {
        float: left;
        margin-right: 2em;
        margin-bottom: 3em;
      }
      
      #smallprint img.footerflag {
        float: left;
        margin-right: 0.5em;
      }
  
      #smallprint a:link, #smallprint a:visited { color: #ccc; text-decoration: none; }
      #smallprint a:hover { color: #ccc; text-decoration: underline; }


/* 
Counters 
*/

.menu ol { 
  counter-reset:menu;
}



/*
Regular menu items
*/

.menu-item a {
  display:flex;
  justify-content:flex-start; /*shrink towards text*/
  color:currentColor;
  text-decoration:none;
  padding:0.3rem 0; /* avoid flickin' */
  order:0;
}

.menu-item a::before { /* dots */
  content:"";
  display:block;
  border-bottom:1px dotted black;
  position:relative; top:-3px;
  flex:1 1 auto;
  margin:0 1rem;
  order:1;
}

.menu-item a::after { /* item ids */
  counter-increment:menu;
  content:counters(menu, ".");
  flex:0 0 auto;
  order:2;
  transform:rotate(0deg)scale(1.2);
  text-decoration:underline;
}



/* 
Sub menu & items
*/

.sub-menu {
  font-size:1.6rem;
  font-weight:normal;
}

.sub-menu > li > a {
  text-indent:0ch; /*
    Chrome indentS the "dots" elm, i.e. it counts pseudo-elm.
    FF and Edge indents first non pseudo-elm. 
    Turn it off for consistency.
  */
  padding:0.5rem 0 0.5rem 2ch;
  margin:0;
}



/*
Main menu
*/

.menu {
  width:22vw;
  min-width:20ch;
  display:flex;
  flex-flow:column nowrap;
  font-size:0.625em;
  font:bold 2.4rem/1 'IM Fell English SC', serif;
  position:relative;
  transform:rotate(-0deg);
}

.menu::before {
  content:"/";
  align-self:center;
  transform:rotate(0deg);
  margin-bottom:1rem;
}

.menu::after {
  content:"/";
  align-self:center;
  transform:rotate(0deg);
  margin-top:1rem;
}



/*
Fx
*/

.menu { transition:transform 0.3s;  font-size:1.5em;}
.menu:hover { transform:rotate(0); }

.menu::before { transition:transform 0.5s; }
.menu:hover::before { transform:rotate(0); content:"__"; }
.menu::after { transition:transform 0.5s; }
.menu:hover::after { transform:rotate(0); content:"__"; }

.menu .menu-item a::after { transition:transform 0.3s }
.menu:hover .menu-item a::after { transform:rotate(0) }

.menu:hover > ol > .menu-item { opacity:0.3; }

.menu-item:hover {
  transition:background-color 0.3s;
  background:rgba(30, 202, 14, 0.315);
  opacity:1 !important;
}

.menu-item:hover a::after {
  text-decoration:none;
}

.menu-item:hover > a::before {
  transition:flex-grow 0.3s;
  width:0; flex-grow:0;
  transform-origin:center bottom;
}

/*
Collapse
*/

.sub-menu > .menu-item {
  max-height:1ch;
  transform:scaleY(0.1);
  transform-origin:center top;
  transition:transform 0.2s, max-height 0.5s;
}

.menu:hover .sub-menu .menu-item {
  max-height:10em;
  transform:scaleY(1);
}



/*  GRID COLUMN SETUP   ============================================================================= */

.col {
	display: block;
	float:left;
	margin: 1% 0 1% 1.2%;
}

.col:first-child { margin-left: 0; } /* all browsers except IE6 and lower */


/*  REMOVE MARGINS AS ALL GO FULL WIDTH AT 480 PIXELS */

@media only screen and (max-width: 480px) {
	.col { 
		margin: 1% 0 1% 0%;
	}
}

/*  GRID OF THREE   ============================================================================= */

	
.span_3_of_3 {
	width: 100%; 
}

.span_2_of_3 {
	width: 66.1%; 
}

.span_1_of_3 {
	width: 32.2%; 
}


/*  GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
	.span_3_of_3 {
		width: 100%; 
	}
	.span_2_of_3 {
		width: 100%; 
	}
	.span_1_of_3 {
		width: 100%;
	}
}

/*  GRID OF FOUR   ============================================================================= */

	
.span_4_of_4 {
	width: 100%; 
}

.span_3_of_4 {
	width: 74.6%; 
}

.span_2_of_4 {
	width: 48%; /*49.2%;*/ 
}

.span_1_of_4 {
	width: 23.8%; 
}


/*  GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
	.span_4_of_4 {
		width: 100%; 
	}
	.span_3_of_4 {
		width: 100%; 
	}
	.span_2_of_4 {
		width: 100%; 
	}
	.span_1_of_4 {
		width: 100%; 
	}
}

/*  GRID OF FIVE  */
.span_5_of_5 {
	width: 100%;
}
.span_4_of_5 {
	width: 79.68%;
}
.span_3_of_5 {
	width: 59.36%;
}
.span_2_of_5 {
	width: 39.04%;
}
.span_1_of_5 {
	width: 18.72%;
}

@media only screen and (max-width: 480px) {
	.span_5_of_5 {
		width: 100%;
	}
	.span_4_of_5 {
		width: 100%;
	}
	.span_3_of_5 {
		width: 100%;
	}
	.span_2_of_5 {
		width: 100%;
	}
	.span_1_of_5 {
		width: 100%;
	}
}