/* -- Browser Style Reset (by  Creative Graphic Solutions.BIZ) -- */

* {
position: static; vertical-align: bottom;
box-sizing: border-box; margin: 0px; border: 0px solid black;
padding: 0px; background-clip: border-box;
}
html {
position: absolute; width: 100%; height: 100%;
overflow-x: auto; /* Show a horizontal  browser scroll bar when needed. */
overflow-y: scroll; /* Always show a vertical browser scroll bar to prevent  short page shifting. */
}
body {
position: relative;
width: 975px; margin: 0px auto;  /* Set static page width and center horizontally. */
min-height: 100% ;  /* Fill the screen vertically even if there is little  content. */
max-height: 999999px;  /* Prevent font boosting on small screen devices. */
font-size: 18px; line-height: 1.15; font-family: Arial, Verdana, sans-serif; color: black; /* Set a default font. */
}
img { display: inline-block; vertical-align: baseline; }
p { margin-bottom: 0.8em;  padding-bottom: 0.2em; }
h1, h2, h3, h4, h5, h6 { margin-bottom: 1em; font-weight: bold; font-size: 1.50em;  }
table { table-layout: fixed; border-spacing: 0px; border-collapse: collapse; empty-cells: show; }
td { vertical-align: middle; text-align: center; }
a:link, a:focus, a:visited { color: inherit;  text-decoration: inherit; }
a:hover, a:active { color: inherit; text-decoration: underline; }





/* --- Load Fonts --- */

@font-face {
font-family: 'Kanit'; font-weight: bold;
src: local('Kanit Bold'), local('Kanit-Bold'),  /* Use local font if it exists... */
url('fonts/kanit-bold-webfont.woff') format('woff');  /*...otherwise use server font. */
}
@font-face {
font-family: 'PT Serif';
src: local('PT Serif'), local('PT_Serif-Web-Regular'),  /* Use local font if it exists... */
url('fonts/pt_serif-web-regular-webfont.woff') format('woff');  /*...otherwise use server font. */
}




/* -- Style Page -- */

body {
background: White;   /* Set browser background. */
font-family: PT Serif; line-height: 1.15; font-size: 28px;  color: #222; /* Set default font. */
} 
#page {
width: 100%;
min-height: calc( 100vh - 20px ); margin-top: 10px; /* Fill the screen vertically even if there is little  content. */
background: hsl(200, 75%, 98%);   /* Set page background. */
border-radius: 0px; box-shadow: 2px 2px 4px 8px LightGrey; 
}

/* Quick Settings...*/
.set-nw { white-space: nowrap; }
.set-flush-top { display: inline-block; vertical-align: top;}
.set-flush-bot { display: inline-block; vertical-align: bottom;}

/* Normal Links... */
a.normal { color: hsl(10, 72%, 38%); text-decoration: underline; }
a.normal:hover, a.normal:active { color: hsl(10, 72%, 48%);text-decoration: underline; }

/* Normal Unordered Lists... */
ul.normal {
margin: 0px; padding: 0px;
}
ul.normal   li {
margin-left: 1.35em;  /* Set left-hand margin for lists and sublists. */
margin-bottom: 0.50em;  /*Set list item spacing. */
list-style-type: none; padding-left: 0px;  /* Remove browser style bullet points. */
text-indent: -1.15em; padding-left: 1.15em; /* Prepare for custom bullet points. */
}
ul.normal   li:before {
display: inline; content: "\25CF  \00A0"  /*  Apply custom bullet points (disc = \25CF    space = \00A0  ). */
}
ul.normal   li:last-child {
margin-bottom: 0px;
}

/* Ordered Lists... */
ol {
margin: 0px; padding: 0px;
}
ol   li {
margin-left: 2.35em;  /* Set left-hand margin for lists and sublists. */
margin-bottom: 1.00em;  /*Set list item spacing. */
}
ol   li:last-child {
margin-bottom: 0px;
}




#header  {
width: 975px; height: 298px; 
}
#header   img {
width: 100%; height: 100%;
opacity: 0.95 !important;
}

#menu {
width: 100%; padding-left: 50px; 
background-color: hsl( 49, 7%, 42% ); /* Browser fallback. */
background: linear-gradient( hsl( 50, 8%, 52% ),  hsl( 50, 8%, 32% ) );
font-family: Kanit, sans-serif; font-weight: bold; font-size: 32px;  color: white; 
}

#menu   li {
display: inline-block;
}
#menu   li   a {
position: relative; z-index: 1;
display: inline-block;
padding: 10px 25px;
}
/* Menu Hover */
#menu   li   a:hover {
background: hsl(50, 8%, 68%); color: black;
transition: background 0.5s;
}




#article {
padding: 50px 75px;
background: linear-gradient( 180deg,
hsl( 200, 0%, 92% ),  hsla( 0, 0%, 100%, 0.00 )  /*...Skin sidebar. */
)
600px 0px/100% 100% no-repeat;
}
#article  > p {

}
#article  > p:first-letter {
font-size: 125%;
}

h1 {
font-family: Georgia, serif; font-weight: bold;
}
h1 > span.subhead {
display: block;
font-size: 40%;
}

a.special-link {
display: inline-block;
padding: 8px; 
background: hsl(50, 8%, 82%);
border-radius: 10px; box-shadow: 2px 3px 2px 4px hsl(50, 8%, 52%); 
}
a.special-link:hover {
background: hsl(50, 8%, 88%);
}

ul.standard   li {
margin-left: 1.5em;  margin-bottom: 0.75em;
}




#footer-logo {
width: 450px;
}
ul#footer-contact {
list-style-type: none;
margin-left: 85px;
font-family: "Times New Roman", "Liberation Serif", serif;  font-size: 90%;   color: hsl(0, 0%, 30%);
}
#footer-contact > li.phone {
font-size: 130%; font-weight: bold;
}

div#search-tags {
clear: both;
padding-top: 50px;
font-size: 50%;
}
#search-tags   li {
list-style-type: none; display: inline; 
}



#sidebar-snippet {
clear: both; float: right; width: 250px; margin-left: 50px; 
font-family: "Times New Roman", serif;  font-style: italic; font-size: 80%;
}
#sidebar-snippet > .service-areas {
font-size: 80%;
}


#map {
float: right; width: 375px; margin: 75px -60px 50px 50px;
overflow: hidden;
}
#map > iframe {
display: block; width: 518px; height: 600px; 
transform: scale( 0.90, 0.90 ); transform-origin: 0px 0px;
margin-top: -98px;  margin-left: -90px;
}
#map > .map-links {
 font-size: 50%; text-align: right;
margin-top: -50px;
}









#page-tag {
position: absolute;  width: 100%; 
margin: 12px 0px; padding: 0px 10px; text-align: right; 
}
