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

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

body {font-family: 'RNS Sisma', Arial, Verdana, Geneva; font-variant-ligatures: none; font-size: 100%; font-kerning: normal; letter-spacing: -.3px;}

#width {position: fixed; top: 0; z-index: 9999; padding: 0 3px; font-size: 11px; line-height: 14px; font-family: Arial; 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: .15em; cursor: pointer;}
a:focus-visible {outline: 2px solid #66AFE9; outline-offset: 2px;}
* {-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;}
#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;} header div:not(.navback div) {vertical-align: middle;}

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

@media (min-width: 871px) {#headtext h1 {font-size: 20px;} #phosoc {width: 240px;}}
@media (max-width: 870px) and (min-width: 501px) {#headtext {width: 40%;} #headtext h1 {font-size: 18px;}}
@media (max-width: 1135px) {#headtext h1 span {display: block;}}
@media (max-width: 700px) and (min-width: 501px) {#headtext h1 {font-size: 2.5vw;} header section:first-child {width: 93%;}}
@media (max-width: 690px) and (min-width: 501px) {#headtext, #headtext h1 {visibility: hidden; width: 0; padding: 0; font-size: 0;}}
@media (min-width: 501px) {
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 {text-align: right; padding-bottom: 3px;}
}
@media (max-width: 500px) {
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;}
#logo, #phosoc {width: auto; text-align: center;} #logo a {display: inline-block;} #phone {margin: 15px auto; font-size: 26px;}
#headtext h1 {font-size: 19px; margin-top: 20px;}
}


/*Call or Text*/

header section:first-child {z-index: 1001; overflow: visible;}
#phosoc {white-space: nowrap;}
#phosoc > .phone-wrapper {display: inline-block; width: auto; height: auto;}
#phosoc span {display: block; font-size: 16px; margin-bottom: 3px;}
.phone-wrapper {text-align: center; position: relative;}
.phone-wrapper img {width: 22px; height: 22px; margin: 0 12px 3px 0; vertical-align: middle;}
.phone-link {-webkit-user-select: none; user-select: none; cursor: pointer; font-size: 23px; font-weight: 500; -webkit-tap-highlight-color: transparent;}
#phone, .phone-wrapper, #contact-toggle, .phone-link {color: #333 !important;}

#contact-toggle, .popup {display: none;} #contact-toggle:checked ~ .popup {display: block;}

.popup {margin: 60px auto 0 auto; padding: 12px 12px 4px 12px; width: 125px; text-align: center; box-sizing: border-box; background-color: #FFF; border: 1px solid #DDD; border-radius: 12px; box-shadow: 0 4px 16px rgba(0,0,0,0.12); position: absolute; top: 0; left: 0; right: 0; z-index: 9999;}

.popup a {white-space: nowrap; display: block; padding: 9px 4px 8px 4px; font-size: 19px; font-weight: 500; text-decoration: none; box-sizing: border-box; border-radius: 8px; color: #FFF !important;}
.popup a:first-of-type {background-color: #1A3156; margin-bottom: 8px;}
.popup a:last-of-type {background-color: #1A3156;}
.popup a:hover {filter: brightness(160%) saturate(160%);}

.dismiss-btn {display: inline-block; margin-top: 4px; padding: 4px 12px; font-size: 24px; font-weight: bold; color: #666; cursor: pointer; -webkit-touch-callout: none; -webkit-user-select: none; user-select: none;} /*keep -webkit*/
.dismiss-btn:hover {color: #000;}

@media (min-width: 501px) {#phosoc {text-align: right;}}
@media (max-width: 500px) {#phosoc {margin: 20px auto 10px auto;}}

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

/*MENU*/

/*.navback {border: 1px solid #DDD;} nav {border: 1px solid magenta;} nav div {border: 1px solid blue;}
nav a {border: 1px solid cyan !important;} .ham {border: 1px solid black;}*/

.navback {z-index: 1;} #navcheck {display: none;} nav, nav a {-webkit-user-select: none; user-select: none;}
nav .selected {cursor: text; pointer-events: none;} nav a {text-decoration: none; font-size: 20px; line-height: 1.3;}

@media (min-width: 1176px) {nav a {height: 50px;}}
@media (max-width: 1175px) and (min-width: 791px) {nav a {height: 60px; font-size: 19px;} nav span {display: block;}}

@media (min-width: 881px) {nav a {padding: 2px 22px 4px 22px;}}
@media (max-width: 880px) and (min-width: 791px) {nav a {padding: 2px 17px 4px 17px; font-size: 18px;}}

@media (min-width: 791px) {
.ham {display: none;} nav {display: table; text-align: center; margin: auto;} nav a {transition: .2s;}
nav div, nav a {display: table-cell; vertical-align: middle; white-space: nowrap;}
}
@media (max-width: 790px) {
nav {text-align: center; visibility: hidden; margin: 0 0 0 -1px; border-bottom: 1px solid var(--menuline); font-size: 0; line-height: 0;}
nav div {max-height: 0; display: inline-block; width: 50%; transition: .2s ease-in-out; font-size: 0; line-height: 0; padding: 0;}
nav a {width: 1%; height: 0;display: table-cell; vertical-align: middle; opacity: 0; font-size: 0; padding: 0; -webkit-transition: .15s background, .3s font-size ease-out, .2s opacity ease-out, .3s padding ease-out, .25s height; border-top: 1px solid var(--menuline); border-left: 1px solid var(--menuline);}

#navcheck:checked ~ nav {visibility: visible;}
#navcheck:checked ~ nav div {max-height: 100px;}
#navcheck:checked ~ nav a {height: 60px; font-size: 22px; opacity: 1; padding: 0 0 1px 0;}

#navcheck:checked ~ .ham span {width: 0; transform: rotateX(180deg); transition-timing-function: ease;}
#navcheck:checked ~ .ham span:before {-webkit-transform: rotateZ(37deg); top: 0;}
#navcheck:checked ~ .ham span:after {-webkit-transform: rotateZ(-37deg); top: 0;}

.ham, .ham * {-webkit-touch-callout: none; -webkit-user-select: none; user-select: none; touch-action: manipulation;}
.ham {position: relative; display: table; height: 30px; width: 39px; margin: auto; padding: 10px;}
.ham:hover {cursor: pointer;}
.ham span {top: 24px; left: 10px; -webkit-transition: -webkit-transform 0.35s ease-out;}
.ham span, .ham span:before, .ham span:after {position: absolute; display: block; content: ""; height: 3px; width: 38px; opacity: 1; background: #FFF; border-radius: 1px;}
.ham span:before {top: -10px;} .ham span:after {top: 10px;}
}

@media (max-width: 790px) and (min-width: 381px) {nav div:nth-child(3) span {display: block;} #navcheck:checked ~ nav a {height: 75px;}}

@media (max-width: 460px) {#navcheck:checked ~ nav a {font-size: 19px;} #navcheck:checked ~ nav a {height: 65px;}}
@media (max-width: 380px) {nav div {width: 100%;} #navcheck:checked ~ nav a {height: 55px;}}
@media (max-width: 340px) {nav div:nth-child(3) span {display: block;} #navcheck:checked ~ nav div:nth-child(3) a {height: 65px;}}
@media (max-width: 500px) {.navback {margin-top: 2px;}} /*always stays 500px*/

:root {--menuline: #6B86B1; --menuback: #2B5290; --menuhover: #8CACDD; --menuselect: #1A3156;}
.navback, nav {background-color: var(--menuback);} nav a {color: #FFF !important;}
nav .selected {background-color: var(--menuselect);} nav a:hover:not(.selected) {background-color: var(--menuhover); color: #111 !important;}

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

/*Big Pic*/

#homepic {position: relative; display: grid; overflow: hidden; z-index: 0; background-color: #022345;}
#homepic img {width: 500px; height: 300px; width: 100%; height: 100%; max-height: 420px; object-fit: cover; object-position: 50% 35%; display: block;}

.homecap {position: absolute; z-index: 1; display: grid; -webkit-align-self: center; justify-self: center; align-self: center; text-align: center; padding-bottom: 10px;}
.homecap div {margin: 0 auto; font-family: 'Archivo Narrow', Arial, Helvetica, sans-serif; font-weight: 700; font-size: 80px; line-height: 1.15; color: #FFF; text-shadow: 1px 1px 2px #000;}

@media (min-width: 1156px) {.homecap div {font-size: 80px;}}
@media (max-width: 1155px) and (min-width: 716px) {.homecap {margin: 0 3%} .homecap div {font-size: 7vw;}}
@media (min-width: 716px) {.homecap span {display: block;}}
@media (max-width: 715px) {.homecap div {font-size: 9.6vw;} #homepic img {height: 47vw;}}
@media (min-width: 501px) {#homepic img {filter: brightness(70%);}}
@media (max-width: 500px) {.homecap div {font-size: 10.1vw;} #homepic img {height: 52vw;}}

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

/*BODY AREA*/

.bodyarea {padding: 45px 0 35px 0; margin: auto; width: 85%; max-width: 1500px;}
.bodyarea, h2 {font-size: 19.5px; line-height: 1.65; font-weight: 400 !important;}
.bodyhead {padding-bottom: 10px; font-weight: 600 !important; font-size: 1.75em; line-height: 1.25; text-align: center; letter-spacing: -.5px;}

h1 {margin: 0 auto 20px auto;} h2 {margin: 0 0 20px 0;} h3 {margin: 20px 0;}

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

.heading, .heading2 {font-weight: 500 !important; line-height: 1.35; display: table; letter-spacing: -.55px; word-spacing: .5px;}
.heading {font-size: 1.45em;} .heading2 {font-size: 1.25em;}

.blurb {text-align: center; margin: 30px auto 40px auto; padding: 15px 15px 18px 15px; font-size: 1.3em; line-height: 1.4; font-weight: 600; background-color: #CCC; border-radius: 5px;}
.blurb div {margin-top: 10px; font-size: .85em; font-weight: 500;}

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

/*Sources on Audit Readiness Page*/
#sources {margin-top: 40px; padding-top: 30px; border-top: 1px solid #BBB; font-size: .85em; line-height: 1.6;}
#sources div {font-size: 1.15em; font-weight: 600; color: #555;}

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

/*Page Pics*/

.pagepic img {border-radius: 5px; width: 500px; height: 300px; width: 100%; height: auto; display: block;}
.picwide {max-width: 500px;} .pictall {max-width: 350px;}
.picleft {float: left; margin: 12px 40px 30px 0;} .picright {float: right; margin: 30px 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: 16px; 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: 14px; font-family: Arial, Helvetica, sans-serif; color: #DDD;}
.web a {text-decoration: none; color: inherit; white-space: nowrap;} .web a:hover span {color: #F65246;}
.web img {vertical-align: top; margin: 1px 0 0 0; width: 23px; height: 15px;}

#totop {position: fixed; bottom: 25px; right: 25px; display: inline-block; z-index: 9999; opacity: .7; transition: 0.15s;}
#totop img {width: 32px; height: 32px; display: block; -webkit-filter: drop-shadow(0 0 4px rgba(0,0,0,0.55)); filter: drop-shadow(0 0 4px rgba(0,0,0,0.55)); cursor: pointer;} /*keep -webkit for old Safari*/
#totop:hover {opacity: 1;}

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

/*COLORS*/

body, #phone, #phone a {color: #333;} #headtext {color: inherit;}
body {background-color: #E8E8E8;} header {background-color: #D4D4D4;}
.bodyhead, #headtext h1 {color: #2B5290;} .heading {color: #000;} .heading2 {color: #555; font-style: italic;}
footer {background-color: #222;} footer, footer a {color: #FFF !important;}
