/* Apple styles */
/* mobile first responsive layout */

/* SECTIONS:
1. Font face references
2. Reset styes
3. Default styles 
4. Section styles
5. Layout rules
*/

/* 1. FONT FACE REFERENCES */

/*  2. RESET STYLES  */
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, font, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend, caption, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, label, input, select, textarea, button { margin: 0; padding: 0; border: 0; font-size: 100%;  font: inherit; vertical-align: baseline;  }
table, tbody, tfoot, thead, tr, th, td { font-size: 100%;  font: inherit; }
body { background: #fff;  line-height: 1;  -webkit-text-size-adjust: 100%; -ms-text-size-adjust: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after {  content: '';  content: none; }
ins { text-decoration: none; background: #fff75c; }
del { text-decoration: line-through; }
em { font-style:italic; }
strong { font-weight:bold; }
abbr { border-bottom:1px dotted; }
input[type=submit], input[type=button], button { cursor:pointer;-webkit-appearance:none; } 
ul { -webkit-padding-start: 0; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {  display: block; } 

/* make sure the page doesn't shift horizontally */
html { overflow-y:scroll; }

/*  3. DEFAULT STYLES  */
body {  padding: 20px 0 0 0; font-family: 'Lucida Grande', Helvetica, Arial, Verdana, sans-serif; color: #666666; font-size: 100%; line-height: 1.4; }
.wrapper { width: 90%; margin: 0 auto 0 auto; clear:both; }

a, a:link, a:visited, a:hover, a:active { color: #08c; text-decoration: none; }
a:hover { text-decoration: underline; }
a.dotted { cursor: help; text-decoration: none; border-bottom: 1px dashed #00348a; }

.msg { color: #08c; font-weight: bold; display: none; }
.backordered { color: #ADADAD; }

h1, h2, h3, h4, h5, h6 {  font-weight: normal; color: #000000; display: block; clear: both; }
h1 {  font-size: 1.8em; margin: 0 0 .5em 0; padding: 0;  }
h2 { font-size: 1.4em; margin: 1.2em 0 0 0;}
h3 { font-size: 1.3em; margin: 0 0 .5em 0; padding-top: 1em; }
h4 { font-size: 1.2em; margin: 1em 0 0 0; }
h5 { font-size: 1.1em; margin: .9em 0 0 0;}
h6 {  font-size: 1.1em; margin: 0; padding: 0; }
h1 a {  font-size: 15px; font-weight: normal;  }


/* LEGACY VC STYLES */
.viennatitle { font-weight: normal; color: #000000; font-size: 1.8em; margin: -1em 0 .5em 0; padding: 0; }
td.maintext div:nth-of-type(2) { display: none; }
.viennabar { font-weight: normal; color: #000000; font-size: 1.1em; margin: 1.5em 0 .5em 0; padding-top: 1.5em; }
.viennabtn { border: 3px #E8E8E8; margin: 5px 5px 0 5px;
	background: #08c; color: white; height: auto; font-family: Arial, Helvetica, sans-serif; 
	font-weight: bold; font-size: 13px; cursor: pointer; text-decoration: none; padding: .5em 3em; } 
.viennabtn:hover { background: #000000;  } 

p { margin: 1em 0; }
ul.list-std, ol.list-std { margin-left: 2em; }
ul.list-nbni li { list-style-type: none; }

::selection,::-moz-selection { background: #fdfaa1; }
blockquote { border-left: 2px solid; padding-left: 1.2em; }
img { border: 0; margin: 0; width: auto; max-width: 100%; height: auto; }

figure { background: #f0f0f0; border: 1px solid #dee0e0; margin-bottom: 1em; padding: .8em; }
figure img { margin: 0 auto; display: block; }
figure figcaption { padding-top: .8em; text-align: center; }
figure figcaption h4 { margin-top: 0; }
figure figcaption p { margin-bottom: 0; }

form { margin-top: 1em; overflow-x: auto; }
fieldset { border: 1px solid #e2e2e2; margin: 2em 0; padding: 1em; }
legend { font-weight: bold; margin-left: -1em; padding: 0 1em; }
label { clear: both; display: block; margin-top: 1em; }

table { overflow-x: auto; }

/* 4. SECTION STYLES */
#header {  width:100%; overflow: visible; text-align: left; background: #FFFFFF; height: 90px; border-bottom: 1px solid #E8E8E8; }
#header-bar { position: absolute; top: 0; left: 0; background-color: #000000; height: 2em; width: 100%; }
#program-identifier { color: white; font-size: 1em; float: right; margin-right: 2em; margin-top: .3em;  }
#header-content { position: relative; width: 90%; margin: 0 auto; padding: 0; }
#header-content #logo { position: absolute;  left: 0; top: 0; margin-top: 20px; }
#header-content #logo a { display: block;  width: 29px; height: 35px; background: transparent url('/images/programs/apple/Apple_Logo_Black_29x35.png') no-repeat 0 0; text-indent: -9999px; }
#header-content-bar {  height: 35px; margin: 10px auto 0 auto; padding: 0;  background: transparent; z-index: 1; }

#wrapper {  }
#contentwrapper { margin: 0 auto 1.5em 0; width: 90%; padding: 1em 1em 1em 0; overflow: hidden; }
#maincol { position: relative; margin: 0 auto; width: 90%;  }

/* NAV */
#nav { display: none; list-style:none; float: right; padding: 5px 0; margin: -5px 0 0 230px; position:relative; z-index:10; font-size: 1.2em; text-transform:uppercase; }
#nav ul, #nav li { margin:0; padding:0; }
#nav a { text-decoration:none;  }
#nav li { float:left; margin-right: 5px; font-weight:bold; position:relative; }
#nav li a { color:#000000; display:block; padding: 8px .5em 8px .5em; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;
	-webkit-transition:0.2s linear background;  }
#nav li a:hover{ color:#08c;  }
#nav li a:active, #nav li a:focus { color:#08c; }
#nav li a.selected, #nav li.selected a  { color:#08c; }

ul.css-menu-icon { margin-top: 18px; padding: .5em; float: right; list-style-type: none; border-radius: 5px; width: .9em; min-height: .9em; background: #000000; }
ul.css-menu-icon li a { line-height:1.6; font-weight:bold; color: #fff; text-decoration:none; position: relative; padding-left:1.2em; }
ul.css-menu-icon li a:before { content:''; position:absolute; top: 27%; left:0px;
      width:.75em; /* 12px/16px */ height:.125em; /* 2px/16px */
      border-top: .375em double #fff; /* 6px/16px */ border-bottom: .125em solid #fff; /* 2px / 16px */ }

/* MOBILE-NAV */
#menu2 { display: block; }
#menu2 li { list-style-type: none; }
#menu2 li a { display: block; padding: .8em 1.6em; 
	border-left: 1px solid #E8E8E8; border-right: 1px solid #E8E8E8; border-bottom: 1px solid #E8E8E8;
	color: #FFFFFF; text-decoration: none;
	text-shadow:0 -1px 0 rgba(0,0,0,.6);
	background: #7d7e7d; /* Old browsers */
	background: -moz-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7d7e7d), color-stop(100%,#0e0e0e)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #7d7e7d 0%,#0e0e0e 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #7d7e7d 0%,#0e0e0e 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, #7d7e7d 0%,#0e0e0e 100%); /* IE10+ */
	background: linear-gradient(to bottom, #7d7e7d 0%,#0e0e0e 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7d7e7d', endColorstr='#0e0e0e',GradientType=0 ); /* IE6-9 */
 }
#menu2 li:first-child a { border-top: 1px solid #E8E8E8; }
#menu2 li a:hover, 
#menu2 ul li.selected a,
#menu2 ul li.current a   { background: -moz-linear-gradient(#37AAEA, #117ED2) repeat scroll 0 0 transparent; 
	background-color: #49A5D5; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#37AAEA', endColorstr='#117ED2');  		background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#37AAEA), to(#117ED2)) repeat scroll 0 0 #408EDB;  }

 /* FOOTER */
#footer { width: 100%; margin: 0 auto; border-top: 1px solid #E8E8E8; border-bottom: 1px solid #E8E8E8; background: #E8E8E8; 
	text-align: center; color: #808080; font-size: .7em; padding: .5em 0 .5em 0; }

/* PROD SPECS */
ul.thumbnails { list-style:none; }
ul.thumbnails:before, ul.thumbnails:after {display:table; content:""; line-height:0;}
ul.thumbnails:after { clear:both; }
ul.thumbnails>li { float:left; width: 178px; margin-bottom:20px; margin-right:15px; text-align: left; }
ul.thumbnails>li.rowends { margin-right: 0; }
ul.thumbnails>li { font-size: 1em; }

ul.l-grid1 {  list-style:none; margin-top: 1em; display: grid; grid-template-columns: 1fr; grid-gap: 1em; }
ul.l-grid1 li { float: left; width: 23%; margin-left: 2%; margin-top: 1em; text-align: center; }
@supports (display: grid) {
ul.l-grid1 > li { width: auto; margin: 0; }
}
@media (min-width: 425px) { 
ul.l-grid1 {  grid-template-columns: 1fr 1fr; } 
}
@media (min-width: 600px) { 
ul.l-grid1 {  grid-template-columns: 1fr 1fr 1fr; } 
}
@media (min-width: 900px) { 
ul.l-grid1 {  grid-template-columns: 1fr 1fr 1fr 1fr; } 
}

.prodimg { display:block; padding:4px; line-height:20px; }
.prodimg > img { display:block; max-width:100%; margin-left:auto; margin-right:auto;}
.prodname { margin-left: 15px; text-align: center; width: 150px; min-height: 4.5em;}
form .prodname  { min-height: 0;  padding-bottom: .5em }
.prodqty  { margin-left: 15px; text-align: center; width: 150px; }
form ul.thumbnails>li { min-height: 14em; }

/* PRODUCT PAGES */
#pp-product-image { margin-bottom: 2em; border-radius: 5px; } 
#pp-product-name h1 { line-height: 1.2; margin-bottom: .5em; padding-bottom: 0; }
#pp-product-description { padding: .5em 0; border-top: 1px solid #999; border-bottom: 1px solid #999; }
#pp-product-image-block img { margin-top: 1em;  }

/* PROGRAM DETAILS */
ol.prog-details-list { margin-bottom: 1.5em; }
ol.prog-details-list, ol.prog-details-list ol {  list-style-type: decimal; list-style-position: inside; }
ol.prog-details-list ul {  list-style-type: disc; list-style-position: inside; }
ol.prog-details-list ul ul, ol.prog-details-list ol ul { list-style-type: circle; list-style-position: inside; margin-left: 2em; }
ol.prog-details-list ol ol, ol.prog-details-list ul ol { list-style-type: lower-latin; list-style-position: inside; margin-left: 2em; } 
ol.prog-details-list li  { margin-top: .8em; }
ol.prog-details-list ul li, ol.prog-details-list ol li  { margin-left: 2em; margin-top: .2em; }


/* FORMS AND TABLES  */
.label { font-weight: bold; font-size: .9em; }
.message { font-weight: bold; color: #08c; }
.formtable { font-size: 15px; border-collapse: collapse; width: 100%; }
.formtable th { text-align: left; }

.formline { clear: both; padding: 3px 3px 3px 0; text-align: left; }
.formline span.label { float: left; width: 150px; padding: 3px 3px 3px 0; text-align: left; font-size: .9em;
	font-weight: bold; white-space: nowrap; }
.formline span.fieldbox { float: left; width: 430px; margin-left: 10px; text-align: left; }
.formline span.fieldtext { float: left; width: 430px; margin: 3px 0 0 10px; text-align: left; font-size: .9em; }
.formline span.fullwidth { float: left; width: 580px; margin: 3px 0 0 0; text-align: left; }
.formline span.button { float: left; width: 430px; margin: 20px 0 0 10px; text-align: left; }

 
.reportbutton { margin: 5px 5px 0 5px;
	color: white; height: auto;  font-weight: normal; font-size: 16px; cursor: pointer; text-decoration: none; padding: .5em 3em; 
	background: -moz-linear-gradient(#37AAEA, #117ED2) repeat scroll 0 0 transparent; background-color: #49A5D5; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#37AAEA', endColorstr='#117ED2');  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#37AAEA), to(#117ED2)) repeat scroll 0 0 #408EDB; 
	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; 
	padding: .5em 3em; display: inline-block; 
	border: 1px solid #4C88BC; text-shadow:0 -1px 0 rgba(0,0,0,.6); box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	_width:0px;_white-space:nowrap; *display:inline;*overflow: visible;*zoom:1;
} 
.reportbutton:hover { background: -moz-linear-gradient(#2F90D5 0%, #0351B7 100%) repeat scroll 0 0 transparent;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#2F90D5), to(#0351B7)) repeat scroll 0 0 transparent; } 

.reportbutton2 { border: 3px #E8E8E8; border-left-color: #FFFFFF; border-top-color: #FFFFFF;  margin: 5px 5px 0 5px;
	background: #9B9B9B; color: white; height: auto; font-family: Arial, Helvetica, sans-serif; 
	font-weight: bold; font-size: 13px; cursor: pointer; text-decoration: none; padding: .5em 3em; 
	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; } 
.reportbutton2:hover { background: #6A6A6A;  } 


.reportbutton3 { border: 3px #000000; margin: 5px 5px 0 5px;
	background: #9B9B9B; color: white; height: auto; font-family: Arial, Helvetica, sans-serif;
	font-weight: bold; font-size: 13px; cursor: pointer; text-decoration: none; padding: .5em 3em;
	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
.reportbutton3:hover { background: #6A6A6A;   } 

.reportbutton4 { border: 3px #000000; margin: 5px 5px 0 5px;
	background: #000000; color: white; height: auto; font-family: Arial, Helvetica, sans-serif;
	font-weight: bold; font-size: 13px; cursor: pointer; text-decoration: none; padding: .5em 3em;
	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
.reportbutton4:hover { background: #08c; }

.dwnldexcelbtn { width: 15em; }
.processing { width: 15em; background: #3d3d3d;}

input, select, textarea { border: 1px solid #dee0e0; font-family: Arial,Helvetica,sans-serif; padding: .2em;}
input.errorhighlight { font-weight: bold; background-color: #ffffdc; }
input.xxs { width: 1.5em; margin-bottom: .5em; }
input.sm { width: 5em; }
input.md { width: 10em; }
input.lg { width: 90%; }
input.xl { width: 90%; }
textarea { width: 90%; min-height: 4em; }
textarea.xl { width: 90%; min-height: 30em; }

input[type=radio],input[type=checkbox] { border: none; }
select.listbox { background-color: #fffffe; border-top: 2px solid #e4e4e4; border-left: 2px solid #e4e4e4; 
	border-right: 2px solid #999;  border-bottom: 2px solid #999; }

select.wide {  width: 100%; }
select.searchselect { display: block; margin-bottom: 15px; }

.form-series-item { margin-left: 2.5em;}
.fsi-ni { margin-left: 0; margin-bottom: 1em;}
.fsi-indent { margin-top: .7em; }
.last-item { margin-bottom: 1em;  }

.form-item-line, .form-button-line { clear: both; display: block; margin-top: 1em; }
.form-txt-display { padding: .2em; } 
.form-item-line textarea { min-height: 5em; min-width: 90%; }
.form-help { font-size: .9em; font-weight: bold; font-style: italic; display: inline-block; padding: .2em;  }
.msginline  { margin-top: .2em; margin-bottom: .3em; color: #08c; font-weight: bold; font-size: .9em; }
.formlinemessage { margin-top: .2em; margin-bottom: .3em; color: #08c; font-weight: bold; font-size: .9em; }
#successmsg, .successmsg  { color: #009900; font-weight: bold; border: 2px solid #009900; padding: .5em 1em; margin: 1em 0; width: 90%; }
#failuremsg, .failuremsg { color: #08c; font-weight: bold; border: 2px solid #ae0000; padding: .5em 1em; margin: 1em 0; width: 90%; }
#actionmsg, .actionmsg { color: #000099; font-weight: bold; border: 2px solid #000099; padding: .5em 1em; margin: 1em 0; width: 90%; }

.form-item-line .message { clear: both; padding-top: .5em;}
.req  { color: #FF0000; font-weight: bold; }
.req-mk:before { content: "*"; color: #FF0000; } 
.form-text-review { overflow: auto; padding: 20px; border: 1px solid #EEEEEE; height: 200px; }
.edit-form {  background: #ffffcc; }

form .prodqtyallocavaildisplay { display: inline-block; margin-left: 2em; padding: .25em .5em; background: #efefef; }
form .inputcomment { display: inline-block; margin-left: 2em; padding: .25em .5em; background: #efefef; }

.pwshow {clear: both; float: left; margin: .25em 0 1em 0; font-size: .8em; }
#output1 { clear: both; margin-top: 2em; }

/* LEGACY VC STYLES */
.viennatable1 { border-collapse: collapse; empty-cells: show; }
table.viennatable1 tr.odd { background: #ffffff; }
table.viennatable1 tr.even { background: #E8E8E8; }
table.viennatable1 th,table.viennatable1 td { padding: 3px 5px; }
table.viennatable1 th { font-weight: bold; background-color: #E8E8E8; }
table.viennatable1 td.label { font-weight: bold; }

table.reporttable1 {  border-collapse: collapse; empty-cells: show; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;}
table.reporttable1 th, table.reporttable1 td { font-size: 13px; padding: 3px 5px; vertical-align: top;}
table.reporttable1 th { font-weight: bold; background-color: #E8E8E8; text-align: left; }
table.reporttable1 th.l, table.reporttable1 td.l { text-align: left; }
table.reporttable1 th.c, table.reporttable1 td.c { text-align: center; }
table.reporttable1 th.r, table.reporttable1 td.r { text-align: right; }
table.reporttable1 td.label { font-weight: bold; }

table.headertable { width: 100%; border: 0; }
table.headertable td { border: 0; font-weight: bold; }

tr.hvhighlight td { background: #ffffcc; }
tr.hvhighlight table.formtable td {  background-color: #ffffff; }
tr.omdhighlight td { background: #ffff66; }
tr.ckhighlight td { background: #b9dcff; }
tr.savehighlight td { background: #fce69b; }

.faqsection { line-height: normal; }
.display-box { padding: 1em; background: #DEDEDE; color: #000000; }
.display-box-infotext {font-weight: bold; font-style: italic; color: #000000; margin-bottom: .3em;}


/* 5. LAYOUT RULES */
/* mobile first responsive design */

/*Screen width above 320px. Mobile phones. */
@media only screen and (min-width: 320px) {


}

@media only screen and (min-width: 460px), print { 
	label { margin-top: 1em; } 
 	.form-series-item { float: left; margin-left: 1em;}
 	.fsi-indent { margin-top: 0; }
 	.fsi-ni { margin-left: 0; margin-right: 1em; }
 	.last-item { margin-bottom: 1em;  }
	form ul.thumbnails>li { min-height: 16em; }
}

@media only screen and (min-width: 600px), print { 
	select.wide {  width: 450px; }
	input.lg { width: 20em; }
	textarea { width: 30em; }
	input.xl { width: 25em; }

}

@media only screen and (min-width: 650px), print {
    	#nav { display: block; margin-top: -3px;}
    	ul.css-menu-icon { display: none; }
    	ul.css-menu-icon li a { display: none; }
    	#menu2 { display: none; }
}

@media only screen and (min-width: 700px), print {
/* LARGE SCREENS */
	.pwshow { margin-left: 10em;}
	.formline span.label { text-align: right; }
	.formline span.fullwidth { width: 580px; }
	.form-item-line label { float: left; width: 8em; padding-bottom: .3em; margin-top: 1.2em; text-align: right; }
	.form-item-line label+input { float: left; margin-left: .5em; margin-top: .7em; }
	.form-item-line label+select { float: left; margin-left: .5em; margin-top: .7em; }
	.form-item-line label+textarea { float: left; margin-left: .5em; margin-top: .7em; min-width: 20em; }
	.form-item-line select+select { float: left; margin-left: .5em; margin-top: .7em; }
	.form-item-line label + .form-txt-display { float: left; margin-left: .5em; margin-top: .7em; }
	.form-item-line label.txtdisplaytight { margin-top: .4em;  }
	.form-item-line label + .form-txt-display-tight { float: left; margin-left: .5em; margin-top: .25em; }
	.form-item-line select+.msginline { clear: both; margin-top: .3em; }
	.form-item-line input + .msginline, 
		.form-item-line select + .msginline, 
		.form-item-line textarea + .msginline, 	
		.form-item-line span + .msginline,
		.form-item-line input + .ui-datepicker-trigger + div + .msginline,
		.form-item-line input + .ui-datepicker-trigger + div + div + .msginline { clear: both; margin-left: 8.7em; margin-top: .3em; }
	.form-item-line span+.msginline { clear: both; margin-left: 8.7em; margin-top: .3em; }
	.form-item-line  select.nolabel + .msginline, 
		.form-item-line  input.nolabel + .msginline,
		.form-item-line  textarea.nolabel + .msginline,
		.form-item-line + textarea + .msginline,  
 		.form-item-line + select + .msginline,
 		.form-item-line + span + input[type=checkbox] + span + .msginline  { margin-left: 0; }
	.form-item-line div.fieldtext { clear: both; margin-left: 8em; padding-top: 1em; }
	.form-item-line label + select + .message { clear: both; margin-left: 8em; padding-top: .3em;}
	.form-help { margin-top: 1em; }
	.form-button-line {  }
	.form-button-line input { margin-top: 1em; margin-left: 8.25em;}
	.form-button-line input.noinset { margin-top: 1em; margin-left: 0;}
	.form-button-line input.reportbutton2 { margin-left: 5em;  }
	.form-text-review { width: 600px; height: 300px; }
	.form-item-line label+textarea { float: left; margin-left: .5em; margin-top: .7em; }
	.form-item-line input.subsequent { float: left; margin-left: .2em; margin-top: .7em; }
	.form-item-line .formlink  {  margin-left: 7.8em; margin-top: 1.5em;}
	.formlinemessage { clear: both; margin-left: 8.7em; margin-top: .4em; }
	.ui-datepicker-trigger { margin-top: 20px; }
}

@media only screen and (min-width: 960px), print {
    	#pp-product-info-block { float: right; width: 38%; padding-left: 1em; }
    	#pp-product-image-block { float: left; width: 60%;  }
	#pp-product-image-block img { margin: 0 auto;  }
}


@media only screen and (min-width: 1000px), print {
    	.wrapper { display: block; margin-right: auto; margin-left: auto; width: 1000px; }
    	#header-content, #contentwrapper, #maincol { width: 1000px; }
	html { overflow-y: visible; }
	form { overflow-x: visible; }
}