html, body {margin: 0; padding: 0;} html {font-size: 100%; -webkit-text-size-adjust: 100%; text-size-adjust: 100%;}

@font-face {font-family: 'OpenSans'; font-style: normal; font-weight: 400; font-display: block;
  src: local(''), url('fonts/open-sans-400.woff2') format('woff2'), url('fonts/open-sans-400.woff') format('woff');
}
@font-face {font-family: 'OpenSans'; font-style: normal; font-weight: 600; font-display: block;
  src: local(''), url('fonts/open-sans-600.woff2') format('woff2'), url('fonts/open-sans-600.woff') format('woff');
}
@font-face {font-family: 'Archivo Narrow'; font-style: normal; font-weight: 700; font-display: block;
  src: local(''), url('fonts/archivo-narrow-700.woff2') format('woff2'), url('fonts/archivo-narrow-700.woff') format('woff');
}

body {font-family: 'OpenSans', Arial, Verdana, Geneva; font-variant-ligatures: none; font-size: 100%;}

#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 {color: #2E3FE1;} a {text-decoration: underline; text-decoration-thickness: 1px; text-decoration-style: dotted; text-underline-offset: .13em; cursor: pointer;}
a:focus-visible {outline: 2px solid var(--focus, #66AFE9); outline-offset: 2px;}
a {-webkit-tap-highlight-color: transparent;} img {border: 0;}
.phlink {color: inherit !important; text-decoration: none !important; white-space: nowrap;} .phlink:hover {cursor: text;}

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

/*HEADER*/

/*header {border: 1px solid green} #headtext {border: 1px solid orange} #headtext h1 {border: 1px solid #666;} #phosoc {border: 1px solid #999;} #phosoc {border: 2px solid magenta} #phone {border: 2px solid green;} #social {border: 1px solid red} #social a {border: 1px solid #444} #logo {border: 1px solid blue} #logo img {border: 1px solid orange} #logo a {border: 1px solid cyan}*/

header {width: 100%; margin: 0 auto; z-index: 1;}
header section:first-child {display: table; height: 100%; position: relative; margin: auto; text-align: center; width: 95%; max-width: 1650px;}
header div {display: table-cell; vertical-align: middle;}

#headtext h1 {text-align: center; margin: 0 auto; font-style: italic; font-weight: 400; line-height: 1.4; padding: 0 30px 0 20px;}
#logo img {display: block;} #phone {font-size: 22px; font-weight: 600;} #phone, #social {white-space: nowrap;}

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

@media (min-width: 1111px) {#logo, #logo img, #phosoc {width: 280px;} #logo img {height: 95px;}}
@media (max-width: 1110px) {#logo, #logo img, #phosoc {width: 240px;} #logo img {height: 81px;}}
@media (min-width: 871px) {#headtext h1 {font-size: 20px;}}
@media (max-width: 870px) {#headtext {width: 40%;} #headtext h1 {font-size: 18px;}}
@media (min-width: 1026px) {#headtext h1 span {display: block;}}
@media (max-width: 830px) {#headtext h1 {font-size: 2.2vw;}}
@media (max-width: 700px) {header section:first-child {width: 93%;}}
@media (max-width: 680px) {#headtext, #headtext h1 {visibility: hidden; width: 0; padding: 0; font-size: 0;}}
@media (min-width: 531px) {
header section:first-child {padding: 0; overflow: hidden;} #logo {padding: 20px 0;} #logo a {display: table-cell;}
#phosoc > div {display: table; height: 100%; width: 100%; margin-left: 0; box-sizing: border-box;}
#phone {position: absolute; right: 0; padding-top: 13px;}
#social {display: table-cell; text-align: right; height: 50%; padding-bottom: 8px; vertical-align: bottom;}
}
@media (max-width: 530px) {
/*header {-webkit-display: flex; display: flex; -webkit-flex-direction: column; flex-direction: column; border-bottom: 6px solid var(--menuback);}
header section:first-child {-webkit-order: 2; order: 2;} header section:last-child {-webkit-order: 1; order: 1;}*/
header div {display: block;} #logo img {margin: 20px auto 0 auto; padding: 0 15px; width: 280px; height: 95px;}
#logo, #phosoc {width: auto; text-align: center;} #logo a {display: inline-block;} #phone {margin: 15px auto; font-size: 26px;}
#social {position: absolute; right: 0; bottom: 19px;} /*#social {margin: 20px auto 10px auto;}*/
}
@media (max-width: 410px) {#phone {text-align: left}}
@media (max-width: 340px) {#logo img {width: 240px; height: 81px;}}

/*if multiple socials:
@media (min-width: 371px) {#social img {display: inline-block; margin: 0 1px -5px 1px;}}
@media (max-width: 370px) {#social {width: 26px;} #social img {display: block; margin-top: 12px;}}
*/

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

/*MENU*/

/*nav {border: 1px solid magenta;} nav div {border: 1px solid blue;} nav a {border: 1px solid cyan !important;}*/

nav {display: table; width: 100%; margin: auto; text-align: center;}
nav div {vertical-align: middle;}
nav a {display: table-cell; vertical-align: middle; width: 1%; font-size: 20px; line-height: 1.4; font-weight: 500; text-decoration: none; transition: .15s;}
nav, nav a {-webkit-user-select: none; user-select: none;} nav .selected {cursor: text;}

@media (min-width: 801px) {nav a {padding: 0 25px 2px 25px;}}
@media (max-width: 800px) {nav a {padding: 0 20px 2px 20px;}}
/*@media (max-width: 750px) and (min-width: 616px) {
nav {margin-bottom: 2px; overflow: hidden;} nav div {width: 24.7%; margin: 0 1px;} nav a {padding: 0; font-size: 18px;}
}*/
@media (min-width: 751px) {
nav {white-space: nowrap;} nav div {display: inline-block;} nav a {height: 73px;} nav span {display: block;}
}

@media (max-width: 750px) and (min-width: 516px) {nav {display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; gap: 1px; grid-gap: 1px} nav a {height: 75px; font-size: 21px;} nav div:nth-child(2) span {display: block;}}

@media (max-width: 515px) {nav div {display: block;} nav a {height: 55px;}}
@media (max-width: 410px) {nav a {height: 60px; font-size: 22px;} nav div:nth-child(2) a {height: 75px;} nav div:nth-child(2) span {display: block;}}
@media (max-width: 385px) {nav div:nth-child(3) a {height: 75px;} nav div:nth-child(3) span {display: block;}}
@media (max-width: 330px) {nav span {display: block;} nav div:nth-last-of-type(-n+3) a {height: 75px;}}

@media (min-width: 751px) {nav {background-color: var(--menuback);}}
@media (max-width: 515px) {nav div:not(div:first-child) {border-top: 1px solid var(--menuline);}}
:root {--menuback: #54288F; --menuline: #FFF; --menuhover: #9818BB; --menuselect: #000}  /*#E904F1*/
nav div {background-color: var(--menuback);} nav a {color: #FFF !important;}
nav .selected {background-color: var(--menuselect);} nav a:hover:not(.selected) {background-color: var(--menuhover);}

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

/*Big Pic*/

#homepic {position: relative; overflow: hidden; z-index: 0; background-color: #416A95;}
#homepic img {width: 500px; height: 300px; width: 100%; height: 100%; object-fit: cover; object-position: 45% 55%; display: block;}

.homecap {position: absolute; left: 5%; right: 5%; text-align: center; top: 46%; -webkit-transform: translateY(-46%); -ms-transform: translateY(-46%); transform: translateY(-46%); z-index: 1; font-size: 55px; color: #FFF;}

.homecap1 {font-family: 'Archivo Narrow', Arial, Helvetica, sans-serif; font-size: 1.2em; line-height: 1.2; font-weight: 700 !important; text-shadow: 1px 1px 2px #000;}
.homecap2 {font-size: .6em; line-height: 1.2; padding-top: 20px; font-weight: 600 !important;}
@media (max-width: 1950px) and (min-width: 641px) {.homecap1 span {display: block;}}
@media (max-width: 1070px) {.homecap1 {font-size: calc(9px + 5.1vw);} .homecap2 {font-size: 3.8vw;}}
@media (min-width: 641px) {#homepic img {height: 45vw; max-height: 420px;}}
@media (max-width: 640px) {#homepic {height: 63vw;} .homecap1 {font-size: 8vw; padding: 0 30px;} .homecap2 {font-size: 5.5vw;} .homecap2 span {display: block;}}
@media (max-width: 460px) {#homepic {height: calc(80px + 70vw);} .homecap1 {font-size: 10vw; padding: 0;} .homecap2 {font-size: 6.3vw;}}
@media (min-width: 501px) {#homepic img {filter: brightness(65%);}}

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

/*BODY AREA*/

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

.bodyarea {padding: 10px 0 35px 0; margin: auto; width: 85%; max-width: 1500px;}
.bodyarea, h2 {font-size: 20px; line-height: 1.7; font-weight: 400 !important;}
.bodyhead {padding-bottom: 10px; font-weight: 600 !important; font-size: 1.75em; line-height: 1.25; text-align: center;}
h1, h2, h3 {margin: 0 !important;}

@media (max-width: 800px) {.bodyhead {font-size: 1.65em;}}
@media (max-width: 600px) {.bahome {padding-top: 0;}}
@media (max-width: 360px) {.bodyarea {width: 88%;} .bodyhead {font-size: 1.6em;}}

.heading, .heading2 {font-weight: 600; line-height: 1.35; display: table;} .heading {font-size: 1.45em;} .heading2 {font-size: 1.35em;}

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

/*Right Box*/

#rbbackback {position: relative;} #rbback, #rightbox {padding: 18px 20px 20px 15px;} .rbhead {text-align: center; font-weight: 600;}
#rightbox {background-color: #DDD;} #rightbox ul {margin: 15px 0 0 0; text-align: left; font-size: .95em;}
#rightbox li {padding-bottom: 16px; line-height: 1.45; margin-left: -20px;} #rightbox li:last-child {padding: 0;}
#rightbox a:hover {text-decoration: underline;}

@media (min-width: 701px) {
#rbback {margin: 10px 0 15px 30px; height: 720px; /*border: 1px solid red*/} /*rbback is the only number to adjust*/
#rbback, #rightbox {top: 10px; width: 260px; float: right;} #rightbox {position: absolute; right: 0;}
}
@media (max-width: 700px) {#rbback {display: none;} #rightbox {display: table; margin: 30px auto;}}

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

/*Page Pics*/

.pagepic img {width: 500px; height: 300px; width: 100%; height: auto; display: block; margin: auto;}
.picwide {max-width: 500px;} .pictall {max-width: 350px;}
.picleft {float: left; margin: 10px 40px 30px 0;} .picright {float: right; margin: 10px 0 30px 40px;}
@media (max-width: 1050px) and (min-width: 871px) {.picwide {max-width: 430px;}}
@media (max-width: 870px) {.picleft, .picright {text-align: center; float: none; margin: 35px auto;} .pictall {max-width: 400px;}}

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

/*BOTTOM AREA*/

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

footer {font-size: 15px; line-height: 1.6; padding: 25px; text-align: center;}
footer a {white-space: nowrap;} footer p {margin: 13px auto;} .btmph {margin-top: 5px; font-size: 20px;}
.web {margin-top: 20px; font-size: 13px; font-family: Arial, Helvetica, sans-serif; color: #DDD !important;}
.web a {font-style: italic; text-decoration: none;} .web a:hover {text-decoration: underline;}

#totop {position: fixed; right: 14px; bottom: 12px; z-index: 100; border: 2px solid rgba(155, 155, 155, 0.4); background-color: rgba(80, 80, 80, 0.4); padding: 0; width: 26px; height: 27px;}
#totop a {display: grid; align-items: center; justify-content: center; justify-items: center; width: 26px; height: 100%; text-decoration: none; font-family: Arial, sans-serif; font-size: 24px; line-height: 1; color: #F5F5F5;}
#totop span {display: inline-block; -webkit-transform: rotate(270deg); transform: rotate(270deg); line-height: 1;}

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

/*COLORS*/
header {border-top: 6px solid var(--menuhover);}
body, #phone, #phone a {color: #333;} body {background-color: #FFF;} #headtext {color: inherit;}
.bodyhead {color: #B510CE;} .heading {color: #000;} .heading2 {color: #555;}
footer {background-color: #222;} footer, footer a {color: #FFF !important;}
