html, body {margin: 0; padding: 0;}
body {font-family: 'Public Sans', Arial, Helvetica, sans-serif; font-variant-ligatures: none !important;}

#width {position: fixed; top: 0; z-index: 20; padding: 0 3px; font-size: 11px; line-height: 14px; font-family: Arial, Helvetica, sans-serif; background-color: #FF0; z-index: 200; color: #000 !important;}

a, a:visited, a:hover {outline: none;} a {text-decoration: none; cursor: pointer;} img {border: 0;} #phone a {white-space: nowrap;}
.phlink {color: inherit !important; text-decoration: none !important; white-space: nowrap;} .phlink:hover {cursor: text;}
.ham, .ham * {-webkit-touch-callout: none; -webkit-user-select: none; user-select: none; touch-action: manipulation;}
a, .ham {-webkit-tap-highlight-color: transparent);}

#nav a, .box {transition: 0.4s;}

/*-----------------------------------------------*/

/*Home Page Top Image*/

.bgimg {height: 40vw; max-height: 450px;}
.bgimg div {background-repeat: no-repeat; background-size: cover; background-image: url("../images/toppics/toppica.jpg"); background-position: 50%; height: 100%;}
@media (max-width: 1000px) {.bgimg div {background-image: url("../images/toppics/toppicb.jpg");}}
@media (max-width: 550px) {.bgimg div {background-image: url("../images/toppics/toppicc.jpg");}}

/*-----------------------------------------------*/

/*Home Page Service boxes*/

#svcbox .spacer, #svcbox p {display: none;}
#svcbox {display: grid; grid-template-columns: 1fr 1fr 1fr; -ms-grid-columns: 1fr 1fr 1fr; position: relative; grid-gap: 2px; margin: 0 10px; box-sizing: border-box}
.box {position: relative; display: table-cell; overflow: hidden; margin: 20px 10px 10px 10px; border: 2px solid #FF0; box-sizing: border-box}
#svcbox img {width: 100%; display: block; cursor: pointer; -webkit-transition: .4s;}
.box:hover img {-webkit-transform: scale(1.15);} .box:hover {-webkit-filter: saturate(150%) brightness(130%);}

.box h3 {position: absolute; display: block; text-align: center; left: 0; right: 0; margin: auto; font-size: 34px; font-weight: 600; bottom: 50%; left: 50%; -webkit-transform: translate(-50%, 50%); -ms-transform: translate(-50%, 50%); transform: translate(-50%, 50%); color: #FFF; pointer-events: none; width: 80%; text-shadow: 1px 1px 25px #000, 0 0 25px #000, 0 0 5px #000; padding-bottom: 3px; -webkit-transition: 0.4s;}
.box h3, .box a {background: none;}

@media (max-width: 900px) {.box h3 {font-size: 3.7vw;} #svcbox {margin: 0 5px;} .box {margin: 10px 5px 10px 5px; border: 1px solid #FF0;}}
@media (max-width: 650px) {
#svcbox {margin-bottom: 15px;} .box h3 {width: 85%; font-size: 4vw;} .box h3 span {display: block;} #svcbox, .box, #svcbox img {height: 100px;}
}
@media (max-width: 540px) {.box h3 {width: 95%; font-size: 4.3vw;} #svcbox, .box, #svcbox img {height: 80px;}}
@media (max-width: 450px) {#svcbox {display: none;}}

/*-----------------------------------------------*/

/*HEADER*/

#header {height: 220px; margin: 0 auto; padding: 0; top: 0; position: relative; width: 100%; z-index: 2; /*box-shadow: 0px 2px 8px 1px #000000;*/}
#header table {position: relative; margin: auto; padding: 10px 0; width: 91%;}
@media (min-width: 1700px) {#header table {width: 80%;}}

#logo {text-align: center;} #logo img {width: 160px; height: 143px;}
#headertext, #phone {width: 38%; vertical-align: middle; padding-bottom: 20px;}

#headertext {text-align: left; margin: 0;} #headertext h1 span {white-space: nowrap;}
#headertext h1 {font-family: 'Noticia Text', Palatino, serif; font-style: italic; font-weight: 400; font-size: 20px; line-height: 1.4; padding-right: 15px;}

#phone {font-size: 22px; font-weight: 600; text-align: right; white-space: nowrap;} #phone a {text-decoration: none;}
.social {position: absolute; height: 28px; width: 28px; display: block; bottom: 13px; right: 0;}

@media (min-width: 1100px) {#headertext h1 span {display: block;}}

@media (max-width: 805px) {#header {height: 202px;} #logo img {width: 140px; height: 125px;} #headertext h1 {font-size: 18px;}}
@media (max-width: 600px) {#headertext h1 {font-size: 15px;}}
@media (max-width: 530px) {
#headertext, #headertext h1 {visibility: hidden; height: 0; width: 0; padding: 0; margin: 0;}
#logo {text-align: left;} #phone {vertical-align: top; padding-top: 3px;}
}
@media (max-width: 360px) {
#header {height: 254px;} #header table td {display: block;}
#logo, #phone {width: auto; text-align: center;} #phone {padding: 15px 0 10px 0;} .social {top: 15px;}
}

/*-----------------------------------------------*/

/*MENU*/

#lines, #menu, #nav a {margin: 0; padding: 0;} #nav li, #nav li a {list-style-type: none; vertical-align: middle;}

#nav {position: absolute; width: 100%; text-align: center;} #menu {display: none;}
#nav a {width: 100%; font-size: 18px; line-height: 1.25; font-weight: 400; text-decoration: none; height: 52px; display: table-cell; text-align: center; cursor: pointer;}
#nav a.selected {cursor: text; -webkit-user-select: none; -webkit-touch-callout: none;}
@media (min-width: 625px) { 
#lines-container {display: none;} #menu {display: inline;}
#nav li {display: inline-block; margin-right: -4px;} #nav a {padding: 0 18px 0 18px;}
}
@media (max-width: 1055px) and (min-width: 931px) {#nav a {padding: 0 10px 0 10px; font-size: 17px;}}
@media (max-width: 930px) and (min-width: 625px) {#nav li span {display: block;} #nav a {padding: 0 13px 0 13px; font-size: 17px;}}
@media (max-width: 685px) and (min-width: 625px) {#nav a {padding: 0 11px 0 11px; font-size: 16px;}}
@media (max-width: 624px) {
#nav {text-align: center; padding-right: 0;} #nav a {display: block; height: 34px; padding: 10px 0 0 0; font-size: 17px; line-height: 1.4; font-weight: 400;}
#lines-container {display: inline-block; width: 38px; height: 33px; cursor: pointer; margin: 15px auto 0 auto;} #lines {display: block;}
#lines li {height: 4px; background: #FFFF00 !important; content: ""; position: relative; transition: 0.25s ease-in-out;}
#lines li:nth-child(1) {top: 0;} #lines li:nth-child(2) {top: 6px;} #lines li:nth-child(3) {top: 12px;}
.hidden {opacity: 0;} .rot45deg {transform: rotate(45deg); top: 10px !important;} .rot-45deg {transform: rotate(-45deg);}
}
@media (max-width: 624px) and (min-width: 481px) {
#nav #menu {box-shadow: 0px 2px 5px -1px #000000;} #nav a, #nav #menu {width: 330px; font-weight:}
#nav #menu {text-align: center; left: 0; right: 0; position: absolute; margin: 0 auto;}
}
@media (max-width: 360px) {#nav span {display: none;}}

/*-----------------------------------------------*/

/*BODY AREA*/

#bodyarea, h2 {font-size: 21px; line-height: 1.5; font-weight: 400 !important; margin: 0 auto !important;}
#bodyarea {padding: 10px 0 30px 0; width: 91%;}

.bodyhead {font-weight: 600; font-size: 1.35em; line-height: 1.25; text-align: center; margin: 20px auto 0 auto;}
.heading {font-weight: 400; font-size: 1.15em; line-height: 1.4;}

@media (max-width: 480px) {#bodyarea, h2 {font-size: 20px;}} @media (max-width: 320px) {#bodyarea, h2 {font-size: 19px;}}

/*-----------------------------------------------*/

/*Page Pics*/
.pagepic img {width: 100%; display: block;} .pagepic {max-width: 500px; float: right; margin: 12px 0 15px 30px;}
@media (max-width: 880px) {.pagepic {text-align: center; float: none; margin: 30px auto;}}

/*-----------------------------------------------*/

/*Reviews*/

#rvwback {background-color: #e7c111;} #rvws {width: 100%; margin: 30px auto 10px auto;}
#rvwback h4 {margin: 30px auto !important; font-weight: 600 !important; font-size: 1.3em; text-align: center; color: #000;}
.rvw {vertical-align: top; text-align: center; font-size: 20px; padding: 30px; background-color: #FFF; border-radius: 8px;}
.rvwimg {display: inline-block; position: relative; width: 100%; max-width: 265px; background-image: url("../images/5-stars.png"); background-repeat: no-repeat; background-size: 100%; background-position: center center; margin-bottom: 20px;}
.rvwimg div {padding-top: 48px;} .rvwtxt {color: #1D491D; font-size: 1.1em; line-height: 1.7; margin-bottom: 20px;}
.rvw span {display: block; line-height: 1.5; color: #777; font-size: .8em;}

@media (max-width: 1180px) {#rvws {margin: 20px auto 30px auto;} .rvw {padding: 20px;} .rvwtxt {font-size: 1.05em;}}
@media (min-width: 781px) {#rvws {display: table;} .rvw {display: table-cell; width: 31%;}}
@media (max-width: 780px) {#rvws {margin: 0 auto 20px auto;} .rvw {display: block; width: auto; padding: 30px;}}
@media (max-width: 380px) {.rvwtxt {font-size: 1em;}} @media (max-width: 330px) {.rvwimg {margin-bottom: 10px;}}

/*-----------------------------------------------*/

/*BOTTOM AREA*/

#bottomarea {text-align: center; font-size: 14px; line-height: 1.6; padding: 25px 0; clear: both;}

.serving {padding: 0 20px;} .phbtm a:hover {text-decoration: none !important;}
.web a:hover {text-decoration: underline !important; font-style: italic;}
	
@media (max-width: 400px) {#lic2 {margin: 15px auto;} .copyco span, #lic1 span, #lic2 span, .web a {display: block;}}

#totop {position: fixed; right: 16px; bottom: 13px; border-radius: 4px; background-color: rgba(0, 0, 0, 0.35); padding: 8px; font-family: Arial, Helvetica, sans-serif; border: 2px solid #888;}
#totop img {width: 20px; height: 12px;} #totop:hover {-webkit-transform: scale(1.1);}
@media (min-width: 481px) {#totop {-webkit-transition: .3s;}}

.nolink, .serving a {color: inherit !important; text-decoration: none; cursor: text;} .serving a {white-space: nowrap;}
.serving {font-size: 11px; line-height: 1.4; color: #BBB;}

/*====================================================*/


/*COLORS*/

body, #header, #bodyback {background-color: #1D491D} #headertext h1 {color: #f1debd;} #phone {color: #f1debd;}
body {color: #e8ddc9;} a, a:visited, a:hover {color: #FFF;} .bodyhead, .heading {color: #FFFF00;}

#nav {background: #654125 url("../images/bark.jpg"); border-top: 2px solid #002A00; border-bottom: 2px solid #002A00;}
#nav, #nav a, #nav a.selected, #nav a.selected:hover {color: #FFF;}
#nav a.selected, #nav a.selected:hover {background-color: #3D210B;} #nav a:hover {background-color: #066606;}
@media (min-width: 625px) {
#nav li {background-color: rgba(101,65,37,0.8);} #nav a {border-left: 2px solid #000;} #nav a.bord {border-right: 2px solid #000;}
}
@media (max-width: 624px) {#nav li {background-color: #654125;} #nav a {border-top: 1px solid #000;}}

#bottomarea, #bottomarea a, #btm_menu a {color: #FFF;} #bottomarea {background-color: #2c2310;} .tb, .tb a {color: #FFFF00 !important;}
