html, body {margin: 0; padding: 0;}

@font-face {font-family: 'Mazin'; font-style: normal; font-weight: 400; font-display: block;
  src: local(''), url('fonts/mazin-400.woff2') format('woff2'), url('fonts/mazin-400.woff') format('woff');
}
@font-face {font-family: 'Mazin'; font-style: normal; font-weight: 500; font-display: block;
  src: local(''), url('fonts/mazin-500.woff2') format('woff2'), url('fonts/mazin-500.woff') format('woff');
}
@font-face {font-family: 'Mazin'; font-style: normal; font-weight: 600; font-display: block;
  src: local(''), url('fonts/mazin-600.woff2') format('woff2'), url('fonts/mazin-600.woff') format('woff');
}

body {font-family: 'Mazin', Arial, Verdana, Geneva; font-variant-ligatures: none;}

#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;}
a, a:visited, a:hover {outline: none; color: #2E3FE1;} a {text-decoration: underline; text-decoration-thickness: 1px; text-decoration-style: dotted; text-underline-offset: .1em; 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;}
a:focus-visible {outline: 2px solid var(--focus, #66AFE9); outline-offset: 2px;}
.ham, .ham * {-webkit-touch-callout: none; -webkit-user-select: none; user-select: none; touch-action: manipulation;}

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

/*HEADER*/

/*header {border: 1px solid blue;} #logo {border: 1px solid red} #logo img {border: 1px solid magenta} #phone {border: 2px solid green} #social, #social img {border: 1px solid orange}*/

@media (min-width: 601px) {#headtop, header {position: fixed;}}

#headtopback, #headtop {height: 40px;} #headtop, header {display: table; width: 100%; margin: auto; z-index: 2;}
#headerback, header {height: 120px;} header {box-shadow: 0 3px 7px -5px #000; text-align: center; box-sizing: border-box;}

#logo {margin-top: 18px;} #logo img {display: block;} #logo, #logo img {width: 110px; height: 80px;}
#phone {font-size: 18px; line-height: 1; right: 0; top: 10px; text-align: right; white-space: nowrap;}
#phone, #phone a {font-weight: 500;}
#phone span {font-size: .9em; font-weight: 400;} #phone span:first-child {margin-right: 5px;} #phone span:nth-of-type(2) {margin: 0 2px 0 9px;}
#social {width: 120px;}

@media (min-width: 2156px) {#headtop, header, .navheader {padding: 0 15%;}}
@media (max-width: 2155px) {#headtop, header, .navheader {padding: 0 12%;}}
@media (max-width: 1980px) {#headtop, header, .navheader {padding: 0 8%;}}
@media (max-width: 1490px) {#headtop, header, .navheader {padding: 0 3%;}}
@media (max-width: 965px) {#headtop, header, .navheader {padding: 0 1%;} #social {padding-left: 1%;} #logo {margin-left: 15px;} #phone {padding-right: 1%;}}
@media (max-width: 810px) {#headtop, header, .navheader {padding: 0;} #social {padding-left: 2%;} #logo {margin-left: 25px;} #phone {padding-right: 2%;}}
@media (max-width: 580px) {#phone span:first-child {display: none;}}

@media (max-width: 450px) {
#phone {text-align: left; padding-left: 20px;} #phone span {display: none;} #phone a {display: block; line-height: 1.5;}
#headtopback, #headtop {height: 75px;} #headerback, header {height: 158px;}
#logo, #logo img {margin: 25px auto 0 auto; text-align: center; width: 148px; height: 107px;}
}

#social img {height: 26px; width: 26px; display: inline-block; margin: 0 1px -5px 1px;}
@keyframes shake {20% {-webkit-transform: rotateZ(-8deg);} 80% {-webkit-transform: rotateZ(8deg);}}
#social img:hover {-webkit-animation: shake .16s 5;}
@media (max-width: 380px) {#social {display: none;}}

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

/*MENU*/

/*.navheader {border: 1px solid orange} nav {border: 1px solid green} nav div {border: 1px solid cyan} nav a {border: 1px solid blue}*/

a, .ham {-webkit-tap-highlight-color: transparent);} #navcheck {display: none;}
nav a.selected {cursor: text; pointer-events: none; -webkit-user-select: none; -webkit-touch-callout: none;}

nav a {display: block; position: relative; text-decoration: none; cursor: pointer; line-height: 1.35; font-weight: 400; vertical-align: middle; -webkit-transition: background .2s, font-size .3s;}
nav a.selected {cursor: text;}
:root {--menuline: #FFF; --menuback: #555 /*#a47b23*/; --menuhover: #1B30BB; --menuselect: #132387;}

@media (max-width: 975px) and (min-width: 811px) {.navheader {top: 26px !important;} nav a {height: 60px; font-size: 19px;} nav span {display: block;}}

@media (min-width: 811px) {
.ham {display: none;} .navheader {top: 44px; position: absolute; right: 0;}
nav {display:inline-block;} nav div {display: inline-block; vertical-align: middle; white-space: nowrap;}
nav a {font-size: 18px; padding: 3px 11px; display: table-cell; text-align: center; color: #000 !important;}
nav .selected, nav a:hover {color: var(--menuhover) !important;} nav .selected {font-weight: 600;}
nav a:hover {text-decoration: underline !important;}
}
@media (max-width: 810px) {
.navheader {left: 0; right: 0;}
nav {position: relative; text-align: center; transition: .2s; height: 0; font-size: 0; box-sizing: border-box; z-index: -1; top: 23px; background-color: var(--menuback);}
nav div {display: inline-block; text-align: center; left: 0; right: 0; margin: 0 -2px; font-size: 0; height: 0; opacity: 0; transition: .2s; border: 1px solid transparent;}
nav a {text-align: center; font-size: 0; opacity: 0; height: 0; white-space: nowrap; padding: 1px 8px; border: 1px solid var(--menuline); pointer-events: none; background-color: var(--menuback); color: #FFF !important;}
nav .selected {background-color: var(--menuselect);} nav a:hover:not(.selected) {background-color: var(--menuhover);}

#navcheck:checked ~ nav {height: 100%; z-index: 2; box-shadow: 0 8px 10px -2px #000; }
#navcheck:checked ~ nav div {opacity: 1; height: 65px;}
#navcheck:checked ~ nav a {display: table-cell; width: 1%; font-size: 20px; opacity: 1; pointer-events: auto; height: 65px; vertical-align: middle;}

.ham {position: absolute; z-index: 600; height: 35px; width: 45px; top: 30px; right: 10px; margin: auto; text-align: center; padding: 0 10px 10px 10px;}
.ham:hover {cursor: pointer;} .ham > div {top: 18px; left: 10px;}
.ham:after {content: "MENU"; position: absolute; line-height: 1; top: 42px; bottom: 0; left: -2px; right: 0; font-size: 17px; text-align: center; font-weight: 500; color: #000}
.ham > div, .ham > div::before, .ham > div::after {display: block; content: ""; position: absolute; height: 4px; width: 44px; opacity: 1; background: #000; -webkit-transition: 0.15s ease-in-out; transition: 0.15s ease-in-out; -webkit-transition: transform 0.2s ease-out; -webkit-transition: -webkit-transform 0.2s ease-out; border-radius: 2px;}
.ham > div::before {top: -11px;} .ham > div::after {top: 11px;}
#navcheck:checked ~ .ham > div {width: 0; background: rgba(18, 18, 18, 0);}
#navcheck:checked ~ .ham > div::before {-webkit-transform: rotateZ(38deg); transform: rotateZ(38deg); top: 0;}
#navcheck:checked ~ .ham > div::after {-webkit-transform: rotateZ(-38deg); transform: rotateZ(-38deg); top: 0;}
}
/*@media (max-width: 965px) and (min-width: 766px) {
nav div {width: 16.7%;}
#navcheck:checked ~ nav div:nth-child(1) a {border-left: none;} #navcheck:checked ~ nav div:nth-child(6) a {border-right: none;}
}*/
@media (max-width: 810px) and (min-width: 711px) {
nav div {width: 33.3%;}
#navcheck:checked ~ nav div:nth-child(1) a, #navcheck:checked ~ nav div:nth-child(4) a {border-left: none;}
#navcheck:checked ~ nav div:nth-child(3) a, #navcheck:checked ~ nav div:nth-child(6) a {border-right: none;}
#navcheck:checked ~ nav div:nth-child(-n+3) a {border-top: none;}
}
@media (max-width: 710px) {
nav div {width: 50%;}
#navcheck:checked ~ nav div:nth-child(odd) a {border-left: none;} #navcheck:checked ~ nav div:nth-child(even) a {border-right: none;}
#navcheck:checked ~ nav div:nth-child(-n+2) a {border-top: none;}
}
@media (max-width: 600px) and (min-width: 451px) {.ham {top: 70px;} nav {top: 21px;}}
@media (max-width: 500px) {nav span {display: block;}}

@media (max-width: 450px) {.ham {top: 7px;} .ham > div, .ham > div::before, .ham > div::after {background: #FFF;} .ham:after {color: #FFF;}}

/*@media (max-width: 200px) {
#navcheck:checked ~ nav {box-shadow: 0 10vw 50px 0 rgba(0, 0, 0, 0.7);}
#navcheck:checked ~ nav div {width: 99%; height: 65px;} nav div {margin: -.5px -2px;}
#navcheck:checked ~ nav a {height: 45px; padding: 20px 0 0 0; border-left: none; border-right: none;}
.ham {top: 63px;}
}
@media (max-width: 100px) {
#navcheck:checked ~ nav div {width: 99%;}
.ham {top: 8px;} .ham > div, .ham > div::before, .ham > div::after {background: #FFF;} .ham:after {color: #FFF;}
}*/

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

/*Big Pic*/

#toppic {position: relative; height: 40vw; max-height: 280px; overflow: hidden;}
#toppic img {width: 500px; height: 300px; width: 100vw; max-width: 1900px; height: auto; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; display: block;}

#toppic.tpac {background-color: #9C7553;}
#toppic.tpdw {background-color: #BCB5A3;}
#toppic.tpfr {background-color: #3C404A;}
#toppic.tpos {background-color: #BDC5D0;}

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

/*BODY AREA*/

#bread {font-size: 14px; line-height: 1.5; margin-bottom: 20px;}

.bodyarea {position: relative; padding: 10px 0 35px 0; margin: auto; width: 85%; max-width: 1500px;}
.bodyarea, h2 {font-size: 19px; line-height: 1.75; font-weight: 400 !important;}

.bodyhead, .bodyhead2 {font-size: 1.7em; line-height: 1.25; font-weight: 600;}
.bodyhead {text-align: center; padding-bottom: 20px;} .bodyhead2 {text-align: left;}
h1, h2, h3, h4 {margin: 0 !important;}

@media (max-width: 700px) {.bodyhead {padding-bottom: 0; font-size: 1.6em;}}
@media (max-width: 360px) {.bodyarea {width: 88%;} .bodyhead {font-size: 1.5em;}}

.heading, .heading2, .heading3 {font-weight: 600; line-height: 1.45;} .heading {font-size: 1.35em;}
.heading2 {font-weight: 500; font-size: 1.2em;} .heading3 {font-weight: 500; font-size: 1.25em; font-style: italic;}

ul {margin-left: -15px;} ul li:not(ul li:last-child) {padding-bottom: 15px;} ul span {font-weight: 500;}*

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

/*div a:not(a.selected, div:last-child a) OR use div:not([.div1]):not([.div2])*/

/*Section shading on services pages*/

.divide:nth-child(odd) {background-color: #EEE;}
.divide .bodyarea {padding: 40px 0 25px 0;}

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

/*Service list on home page - use instead of rightbox to extend page length*/

/*#svcs {display: table; margin: 30px auto; padding: 20px 35px 20px 20px; background-color: #DDD; border-radius: 3px;}
#svcs ul {margin: 0 -15px;} #svcs li {line-height: 1.4;} #svcs li:not(li:last-child) {padding-bottom: 15px;}*/

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

/*Page Pics*/

.pagepic img {border-radius: 3px; width: 500px; height: 300px; width: 100%; height: auto; display: block;}
/*.pagepic h4, .pagepic p {font-size: .9em; line-height: 1.45; margin: 10px auto 0 auto !important; text-align: center; font-weight: 400 !important;}*/
.picwide {max-width: 500px;} .pictall {max-width: 350px;}
.picleft {float: left; margin: 10px 50px 30px 0;} .picright {float: right; margin: 10px 0 30px 50px;}
@media (max-width: 1050px) and (min-width: 871px) {.picwide {max-width: 430px;}}
@media (max-width: 870px) {.picleft, .picright {text-align: center; float: none; margin: 25px auto 35px auto;} .pictall {max-width: 400px;}}

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

/*BOTTOM AREA*/

/*.btmarea section {background-color: green; border: 1px solid red}*/

.btmareaback {background-color: #3A3A3A;} .btmarea, .btmarea a {color: #FFF;}
.btmarea {display: grid; justify-content: center; padding: 50px 0; margin: auto; max-width: 1300px;}
.btmarea .btmlogo {line-height: 1.7;} .btmarea .btmlogo p {font-size: 13px;}
.btmarea .btmhrs div {font-size: 1.1em; line-height: 1.6; font-weight: 600;} /*.btmarea .btmhrs td {white-space: nowrap;}*/
.btmarea .btmlogo img {display: block; width: 149px; height: 108px; margin: 0 auto 25px auto;}
.btmarea .btmlinks ul {margin-left: -20px;} .btmarea .btmlinks a {text-decoration: none;}
.btmarea .btmlinks a:hover {text-decoration: underline;}
.btmarea .btmlinks li:not(.btmlinks li:last-child) {padding-bottom: 15px;} .btmarea .btmlinks ul {margin-bottom: 0;}
.btmarea .btmhead {display: block; font-size: 1.5em; font-weight: 600; color: #FFF /*#d7b95c*/;}
.btmarea .btmcont {font-size: 15px; line-height: 1.6;}
.btmarea .btmcont span {display: block; font-size: 1.2em; line-height: 1.4; font-weight: 600; margin-bottom: 5px;}
.btmarea .btmicons {margin: 20px 0 15px 0;} .btmarea .btmicons img {margin: 2px 8px 15px 0; vertical-align: top;}
.btmarea .btmsoc {margin-top: 20px;} .btmarea .btmsoc img {width: 36px; height: 36px; margin: 0 3px;}
@keyframes shake {20% {-webkit-transform: rotateZ(-8deg);} 80% {-webkit-transform: rotateZ(8deg);}}
.btmarea .btmsoc img:hover {-webkit-animation: shake .16s 5;}

@media (min-width: 1041px) {
.btmarea {grid-template-columns: 32% 31% 28%;}
.btmarea .btmlogo {grid-column: 1 / 1;} .btmarea .btmlinks {grid-column: 2 / 2;} .btmarea .btmcont {grid-column: 3 / 3;}
}
@media (max-width: 1040px) and (min-width: 641px) {
.btmarea section {margin: 0 50px;}
.btmarea .btmlogo {grid-column: 1 / 3; grid-row: 1 / 1; margin-bottom: 30px;}
.btmarea .btmlinks {grid-column: 1 / 1; grid-row: 2 / 2;}
.btmarea .btmcont {grid-column: 2 / 2; grid-row: 2 / 2;}
}
@media (min-width: 641px) {.btmarea {justify-items: center;}}
@media (max-width: 640px) {.btmarea section {grid-column: 2 / 2;} .btmarea .btmlinks, .btmarea .btmcont {margin-top: 40px;}}
@media (max-width: 360px) {.btmarea {padding: 50px 30px;}}


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

/*Bottom*/

#serving {font-size: 12px; line-height: 1.4; color: #BBB; font-family: Arial, Helvetica, sans-serif;}
#serving a, .nolink {color: inherit !important; text-decoration: none !important; pointer-events: none !important;}

footer {font-size: 14px; line-height: 1.6; padding: 25px 25px 22px 25px; text-align: center;}
.web, .web a {font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #BBB !important;}
.web a {font-style: italic; text-decoration: none; white-space: nowrap;} .web a:hover {text-decoration: underline;}

#totop {position: fixed; height: 18px; width: 18px; right: 14px; bottom: 12px; z-index: 100; padding: 8px 9px 8px 10px; border: 2px solid rgba(155, 155, 155, .4); background-color: rgba(80, 80, 80, 0.45); border-radius: 4px;}
#totop div {font-family: Arial, Helvetica, sans-serif; display: inline-block; -webkit-transform: rotate(90deg); transform: rotate(90deg); font-size: 32px; line-height: 18px; color: #FFF;}
#totop:hover {-webkit-transform: scale(1.05);}
@media (min-width: 481px) {#totop {-webkit-transition: .15s;}}

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

/*COLORS*/

body {color: #111; background-color: #FFF;}

#headtop {background-color: #132387;} header {background-color: #FFF; border-bottom: 5px solid #CCC /*#e4ca7a*/;}
#phone, #phone a {color: #FFF;} #phone span {color: #FFF /*#e4ca7a*/;}

.bodyhead {color: #1B30BB;} .heading {color: #000;}

footer {background-color: #000; color: #FFF;}


