/*-------| CSS Reset |---------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var, u, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article,
aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav,
output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
 }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 1.44em; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
/* custom settings */
html { overflow-y:scroll; font-size: .85em; font-family: verdana,geneva,sans-serif; }
img  { max-width:100%; height:auto; }
/*-----------------------------------------------------------------*/


/*-------| PAGE |--------------------------------------------------*/
body           { margin:0 auto; min-height:100%; }
.PAGE_CONTENT  { max-width:1200px; margin:0 auto; }
/*-----------------------------------------------------------------*/


/*-------| HEADER |------------------------------------------------*/
.HEADER   { background-color:#31659C; min-height:150px; }
.IMG_EARM { float:right; }
.GLOGO    { margin-top:25px; margin-left:10px; }
/*-----------------------------------------------------------------*/


/*-------| TOP_NAV |-----------------------------------------------*/
div.TOP_NAV                   { background-color:#003366; padding:10px 0px 10px 0px; margin-bottom:20px; font-size: 1.3em; }
div.TOP_NAV ul                { margin-left: 15px; }
div.TOP_NAV li:first-child    { margin-left: 0px; }
div.TOP_NAV li                { display:inline; margin-left:16px; }
div.TOP_NAV a:link, div.TOP_NAV a:visited { font-weight: bold; color: #ffffff; white-space: nowrap; text-decoration: none; }
div.TOP_NAV a:hover                       { white-space: nowrap; text-decoration: underline; }
/*-----------------------------------------------------------------*/


/*-------| BLURB |-------------------------------------------------*/
.BLURB {  max-width: 800px; display: block; margin-left: auto; margin-right: auto; margin-bottom:40px; }
.BLURB p { font-family: "Verdana" ; font-size: 1.5em; color: #1a3d61; line-height:130%; }
/*-----------------------------------------------------------------*/


/*-------| PROD_NAV |-----------------------------------------------*/
.PROD_NAV    { float:left; width:100%; background-color:#006699; padding:20px 0px 20px 0px; margin-bottom:10px; font-size: 1em; }
.PROD_NAV li { display:inline; margin-left:20px; }
.PROD_NAV a:link, .PROD_NAV a:visited { color: #FFFFFF; text-decoration: none; }
.PROD_NAV a:hover                     { color: #ffff80; text-decoration: underline; }
#PROD_SEL  { color: #ffff80; font-weight: bold; }
/*-----------------------------------------------------------------*/


/*-------| BODY_CONTENT |------------------------------------------*/
/* payment.js needs a BODY_CONTENT reference */
.BODY_CONTENT         { float:left; width:96%; margin-left:15px; margin-right:15px; padding-bottom:20px; }
.BODY_CONTENT h1      { color:#006699; padding:2px 0px 2px 5px; margin-bottom:20px; font-weight: bold; font-size: 2em; line-height:110%; }
.BODY_CONTENT h1 ~ h1 { margin-top:40px; }
.BODY_CONTENT p       { color: #000000; margin-bottom:15px; }
.BODY_CONTENT a:link, .BODY_CONTENT a:visited     { color: #000000; white-space: nowrap; text-decoration: underline; }
.BODY_CONTENT a:hover                             { color: #000000; font-weight: bold; white-space: nowrap; text-decoration: underline; }
.BODY_CONTENT p a:link, .BODY_CONTENT p a:visited { color: #000000; white-space: nowrap; text-decoration: underline; }
.BODY_CONTENT p a:hover                           { color: #000000; font-weight: bold; white-space: nowrap; text-decoration: underline; }
/* .BODY_CONTENT  { margin: 0px 140px 0px 160px; padding-bottom:20px; } */
/*-----------------------------------------------------------------*/


/*-------| Video entries |-----------------------------------------*/
div.VIDEO       { margin-bottom:20px; }
div.VIDEO p     { max-width:300px; float:left; margin-top:5px; }
div.VIDEO a     { float:right; }
div.VIDEO:after { content:''; display:block; clear: both; }
/*-----------------------------------------------------------------*/


/*-------| Downloadable items |------------------------------------*/
div.DOWNL       { margin-bottom:20px; }
div.DOWNL p     { margin-bottom:5px; }
/*-----------------------------------------------------------------*/


/*-------| CLIENTS |----------------------------------------------*/
div.CLIENTS       { margin-top:20px; margin-bottom:45px; margin-left: auto; margin-right: auto; display: block; max-width: 900px; border-top: 2px #D0D0D0 dashed; border-bottom: 2px #D0D0D0 dashed; }
div.CLIENTS p     { margin-top:5px; margin-bottom:8px; }
div.CLIENTS img   { height:30px; margin-right:15px; }
div.CLIENTS a     { color: #000000; }
/*-----------------------------------------------------------------*/


/*-------| MEDIA |-------------------------------------------------*/
div.MEDIA   { border: 1px #31659C solid; margin-top:20px; margin-left: auto; margin-right: auto; display: block; max-width: 900px; }
div.MEDIA p { padding: 5px; }
/*-----------------------------------------------------------------*/


/*-------| CLIENTLIST |--------------------------------------------*/
.CLIENTL  { float:left;  }
.CLIENTR  { float:right; }
/*-----------------------------------------------------------------*/


/*-------| Change log entries |------------------------------------*/
div.CLOG  { border-bottom: 1px #000000 dashed; margin-bottom:20px; }
.CLOG ul  { list-style-position:outside; list-style-type:disc; padding:5px 0 20px 0; }
.CLOG li  { margin-left:20px; }
/*-----------------------------------------------------------------*/


/*-------| List Style |--------------------------------------------*/
ul.LIST1     { list-style-position:outside; list-style-type:disc; margin-bottom:20px; }
.LIST1 li    { margin-left:20px; }
p + ul.LIST1 { }
/*-----------------------------------------------------------------*/


/*-------| Product page entries |----------------------------------*/
div.PROD_ENTRY     { margin-bottom:30px;  }
div.PROD_ENTRY img { margin-bottom:10px; display:block; }
div.PROD_ENTRY a   { color: #000000; font-weight: bold; white-space: nowrap; }
div.PROD_ENTRY a:link, div.PROD_ENTRY a:visited { text-decoration: none; }
div.PROD_ENTRY a:hover                          { text-decoration: underline; }
/*-----------------------------------------------------------------*/


/*-------| Text settings |-----------------------------------------*/
p.COPY_RIGHT { font-size: .75em; padding-top:40px; } /* Copyright text */
.GEN_BODY    { color: #000000; } /* Generic Body text */
.GEN_CAP     { color: #FFFFFF; font-weight: bold; } /* Generic Caption text */
.GEN_PUR     { color: #1e3645; font-weight: bold; } /* Text for Purchase field captions */
.GEN_CAP2    { color: #000000; font-weight: bold; } /* Text for License choices */
/*-----------------------------------------------------------------*/


/*-------| COMBOBOX |----------------------------------------------*/
.COMBOBOX    { width:calc(100% - .5em); border: 1px #31659C solid; padding:2px; }
/*-----------------------------------------------------------------*/


/*-------| EDITBOX |-----------------------------------------------*/
.EDITBOX, .payer_name, .card-number, .card-cvc, .payer_email                               { width:calc(100% - 1em); border: 1px #31659C solid; padding:2px;}
.EDITBOX:hover, .payer_name:hover, .card-number:hover, .card-cvc:hover, .payer_email:hover { border: 1px blue solid; }
.EDITBOX:focus, .payer_name:focus, .card-number:focus, .card-cvc:focus, .payer_email:focus { border: 1px blue solid; }
/*-----------------------------------------------------------------*/


/*-------| BUTTON |------------------------------------------------*/
.BUTTON         { outline: none; min-width:120px; }
.BUTTON:hover   { outline: none; color: blue; }
.BUTTON_DISABLE { outline: none; }
/*-----------------------------------------------------------------*/


/*-------| TEXTBOX |-----------------------------------------------*/
.TEXTBOX { width:calc(100% - 1.1em); height:150px; }
/*-----------------------------------------------------------------*/


/*-------| MISC |--------------------------------------------------*/
div.CLR1        { clear:both; }
.dotline        { border-bottom: 1px dotted #d9d9d9; }
.NOJS           { font-size: 3em; font-weight: bold; line-height:normal; margin-bottom:800px; clear:both; }
.IMG_HEAD       { width:100%; margin-bottom:20px; }
.IMG_CENTER     { display: block; margin:0 auto; }
ul.ABOUT        { list-style:none; }
label           { margin-bottom:5px; display:block; }
#payment_errors { color:red; padding: 20px 0px 10px 0px; display:block; }
.CONTACT_FRM    { margin-top:20px; }
/*-----------------------------------------------------------------*/


/*-------| LINKS |-----------------------------------------------*/
div.LINKS    { margin-top: 30px; text-align: center; color: white; background-color: #31659c; padding:50px 0px 50px 0px; }
div.LINKS h1 { font-size: 1.2em; margin-bottom: 30px; color: white; }
div.LINKS li:last-child { margin-right: 0px; }
div.LINKS li { display: inline-block; margin-right: 30px; }
div.LINKS li span { display: block; text-align:center; }
div.LINKS li a:link, div.LINKS li a:visited { color:white; white-space: nowrap; text-decoration: none; }
div.LINKS li a:hover { text-decoration: underline; }
/*-----------------------------------------------------------------*/


/*-------| FOOTER |------------------------------------------------*/
div.FOOTER                   { text-align: center; background-color:#003366; padding:50px 0px 50px 0px; font-size: 1.3em; clear:both; }
div.FOOTER li                { display:inline; margin-right:20px; }
div.FOOTER li:last-child { margin-right: 0px; }
div.FOOTER a:link, div.FOOTER a:visited { font-weight: bold; color: #ffffff; white-space: nowrap; text-decoration: none; }
div.FOOTER a:hover                      { color: #ffffff; white-space: nowrap; text-decoration: underline; }
/*-----------------------------------------------------------------*/


/*-------| Media Queries Viewport |--------------------------------*/
@media (max-width: 1250px)
{
	div.PROD_ENTRY   { margin-left:30px; margin-right:30px; }
}
@media (max-width: 820px)
{
    div.CLIENTS      { width:auto; margin-left: 15px; }
}
@media (max-width: 680px)
{
	div.CLIENTS      { width:auto; margin-left: 15px; }
	div.CLIENTS img  { height:20px; }
	div.CLIENTS p    { text-align: justify; margin-right:10px; }
    .BLURB p         { margin-left:10px; margin-right:10px; line-height: 1.44em; font-size: 1em; font-family: verdana,geneva,sans-serif; }
	.PROD_NAV li     { float: left; }
}
@media (max-width: 560px)
{
	/* keep iOS from zooming */
	select, input, textarea { font-size: 16px; }

	.IMG_EARM        { display:none; }
	.CLIENTR         { float:left; }
	.TEXTBOX { width:calc(100% - 1.6em); }
}
@media (max-width: 480px)
{
	.GLOGO           { margin-left:auto; margin-right:auto; }
	.PAGE_CONTENT    { min-height:100% }
	.BODY_CONTENT    { margin-left:10px; margin-right:10px; }
	div.FOOTER       { font-size: 1em; }
}
@media (max-width: 350px)
{
	.PROD_NAV        { clear:both; margin-bottom:20px; }
	.BODY_CONTENT    { margin-left:5px; }
	.BODY_CONTENT h1 { margin-left:-5px; }
}
/*-----------------------------------------------------------------*/





