

.display-block { display: block; }
.remove-margin { margin: 0; }
.remove-margin-t { margin-top: 0; }
.remove-margin-b { margin-bottom: 0; }

.hidden {
	display: none;
	visibility: hidden;
}

/* Fluid images and objects */
.size-auto {
	max-width: 100%;
	height: auto;
}

/* Block Alignment (Needed for System Markup, without hyphen needed for WP) */
.align-left,
.alignleft {
	display: block;
	margin-right: 15px;
	float: left;
}

.align-right,
.alignright {
	display: block;
	margin-left: 15px;
	float: right;
}

.align-center,
.aligncenter {
	display: block;
	margin: auto;
	margin-bottom: 10px;
}

/* Text Alignment */
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }


/* Buttons (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

/* Note: .button-more is deprecated since Warp 6.2 */
.button-more,
.button-default,
.button-primary { display: inline-block; }

.button-more + [class*=button-],
.button-default + [class*=button-],
.button-primary + [class*=button-] { margin-left: 10px; }


/* Lists (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

ul.blank,
ul.space,
ul.line,
ul.check,
ul.zebra {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Space */
ul.space li { margin-top: 15px; }
ul.space li:first-child { margin-top: 0; }

/* Line */
ul.line > li {
	margin-top: 5px;
	padding-top: 5px;
}

ul.line > li:first-child {
	margin-top: 0;
	padding-top: 0;
}

/* Check */
ul.check > li { margin-top: 5px; }
ul.check > li:first-child { margin-top: 0; }

/* Zebra */
ul.zebra > li { padding: 5px; }

ul.line > li > a:first-child,
ul.check > li > a:first-child { display: block; }


/* Tables (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

table.zebra { width: 100%; }

table.zebra th {
	font-size: 16px;
	font-weight: normal;
	text-align: left;
}

table.zebra th,
table.zebra td { padding: 5px; }

table.zebra tbody,
table.zebra tfoot { font-size: 12px; }

table.zebra .bold { font-weight: bold; }
table.zebra .center { text-align: center; }

table.zebra td * { vertical-align: middle; }

table.zebra tfoot { font-style: italic; }

table.zebra caption {
	font-size: 11px;
	text-align: left;
	font-style: italic;
}


/* Definition Lists
----------------------------------------------------------------------------------------------------*/

dl.separator {
	padding: 0;
	overflow: hidden;
}

dl.separator dt {	
	width: 160px;
	padding-right: 10px;
	float: left;
	clear: both;
}

dl.separator dd {
	margin-left: 170px;
	padding-left: 20px;
}


/* Text
----------------------------------------------------------------------------------------------------*/

/* Inline Text Box */
em.box { 
	padding: 0 3px;
	white-space: nowrap;
}

/* Dotted Horizontal Rule */
hr.dotted { border: none; }

/* Drop Caps */



/* Boxes
----------------------------------------------------------------------------------------------------*/

.box-content,
.box-note,
.box-info,
.box-warning,
.box-hint,
.box-download {
	margin: 15px 0;
	padding: 10px;
}

.box-content { padding: 20px; }

.box-info,
.box-warning,
.box-hint,
.box-download { }


/* Forms (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

/* Box */
form.box fieldset {
	margin-bottom: 30px;
	padding: 0 10px 10px 10px;
}
form.box legend { padding: 0 10px; }
form.box fieldset > div { margin: 15px 0; }

form.box button,
form.box input[type='button'],
form.box input[type='reset'] { vertical-align: middle; }

/* Short */
form.short > div { margin: 10px 0; }

form.short input { color: #333; }
form.short input:-moz-placeholder { color: #999; }
form.short input::-webkit-input-placeholder { color: #999; }
form.short input.placeholder { color: #999; }


/* Mobile Switcher (Needed for Mobile)
----------------------------------------------------------------------------------------------------*/

/* Note: .mobile-switcher is deprecated since Warp 6.2 */
.mobile-switcher {
	display: block;
	width: 80%;
	margin: 20px auto 40px auto;
	padding: 40px 0;
	font-size: 50px;
	text-align: center;
}

/* Useful Classes for Content Creation
----------------------------------------------------------------------------------------------------*/

.margin-t-5 { margin-top: 5px; }
.margin-t-10 { margin-top: 10px; }
.margin-b-5 { margin-bottom: 5px; }
.margin-b-10 { margin-bottom: 10px; }

.color1,
.color2 { text-shadow: 0 1px #fff; }


/* Buttons (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

.button-default,
.button-primary,
.button-black {
	display: inline-block;
	padding: 3px 9px;
	border-radius: 2px;
	font-size: 13px;
}

form.style button,
form.style input[type="button"],
form.style input[type="submit"] {
	display: inline-block;
	padding: 6px 9px;
	border-radius: 2px;
	font-size: 12px;
}

form.style button,
form.style input[type="button"],
form.style input[type="submit"], 
.button-default,
.mod-box .button-default {
	border: 1px solid #E0E0E0;
	border-bottom-color: #CDCDCD;
	background: #f9f9f9;
	background: -webkit-linear-gradient(top, #f9f9f9, #f7f7f7);
	background: -moz-linear-gradient(top, #f9f9f9, #f7f7f7);
	background: -o-linear-gradient(top, #f9f9f9, #f7f7f7);
	background: linear-gradient(to bottom, #f9f9f9, #f7f7f7);
	box-shadow: inset 0px 1px 0 rgba(255,255,255,1);
	color: #444;
}

form.style button:hover,
form.style input[type="button"]:hover,
form.style input[type="submit"]:hover,
.mod-box-color form.style button,
.mod-box-color form.style input[type="button"],
.mod-box-color form.style input[type="submit"], 
.button-default:hover,
.button-primary,
.mod-box .button-primary {
	border-width: 1px;
	border-style: solid;
	box-shadow: inset 0px 1px 0 rgba(255,255,255,0.2);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #fff;
}
 
form.style button:active,
form.style input[type="button"]:active,
form.style input[type="submit"]:active,  
.button-default:active {
	box-shadow: 0 1px 0 0 rgba(255,255,255,1),
				inset 0px 1px 2px rgba(0,0,0,0.1);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #fff;
}

.mod-box-color form.style button:hover,
.mod-box-color form.style input[type="button"]:hover,
.mod-box-color form.style input[type="submit"]:hover, 
.button-primary:hover {
	box-shadow: inset 0px 1px 0 rgba(255,255,255,0.2);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #fff;
}

.mod-box-color form.style button:active,
.mod-box-color form.style input[type="button"]:active,
.mod-box-color form.style input[type="submit"]:active, 
.button-primary:active {
	box-shadow: 0 1px 0 0 rgba(255,255,255,0.2),
				inset 0px 1px 2px rgba(0,0,0,0.1);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #fff;
}

.mod-box-black form.style button,
.mod-box-black form.style input[type="button"],
.mod-box-black form.style input[type="submit"], 
.button-black,
.mod-box .button-black {
	border: 1px solid #4B4D51;
	border-bottom-color: #3E4144;
	background: #5B5D63;
	background: -webkit-linear-gradient(top, #5B5D63, #52555A);
	background: -moz-linear-gradient(top, #5B5D63, #52555A);
	background: -o-linear-gradient(top, #5B5D63, #52555A);
	background: linear-gradient(to bottom, #5B5D63, #52555A);
	box-shadow: inset 0px 1px 0 rgba(255, 255, 255, 0.2);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #d1d1d1;
}

.mod-box-black form.style button:hover,
.mod-box-black form.style input[type="button"]:hover,
.mod-box-black form.style input[type="submit"]:hover, 
.button-black:hover {
	border-color: #47494D;
	border-bottom-color: #3E4144;
	background: #4D5055;
	background: -webkit-linear-gradient(top, #4D5055, #45494E);
	background: -moz-linear-gradient(top, #4D5055, #45494E);
	background: -o-linear-gradient(top, #4D5055, #45494E);
	background: linear-gradient(to bottom, #4D5055, #45494E);
	box-shadow: inset 0px 1px 0 rgba(255,255,255,0.2);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #d1d1d1;
}

.mod-box-black form.style button:active,
.mod-box-black form.style input[type="button"]:active,
.mod-box-black form.style input[type="submit"]:active, 
.button-black:active {
	border-color: #3E4144;
	background: #45494E;
	background: -webkit-linear-gradient(top, #45494E, #4D5055);
	background: -moz-linear-gradient(top, #45494E, #4D5055);
	background: -o-linear-gradient(top, #45494E, #4D5055);
	background: linear-gradient(to bottom, #45494E, #4D5055);
	box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.2),
				inset 0px 1px 2px rgba(0,0,0,0.1);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #d1d1d1;
}

/* Images and Objects (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

img.border-box { border: 1px solid #ddd; }


/* Lists and Tables (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

/* Line */

ul.line > li {
	border-top: 1px solid #d1d1d1;
	padding-left: 20px;
	background: url(../images/tools/list_line_icon.png) 0 0 no-repeat;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.5);
}

ul.line > li:first-child { 
	border-top: none;
	box-shadow: none;
}

.mod-box-black ul.line > li,
.mod-box-color ul.line > li { 
	border-top-color: rgba(0,0,0,0.15); 
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.15);
}

ul.line > li:first-child { 
	border-top: none;
	padding-top: 5px;
	box-shadow: none;
}


/* Check */
ul.check > li {
	padding: 5px 0 0 25px;
	background: url(../images/tools/list_check.png) 0 0 no-repeat;
}

/* Zebra List and Table */

table { border-collapse: separate; }

table.zebra {
	border-right: 1px solid;
	border-color: rgba(0,0,0,0.15); 
}

ul.zebra > li,
table.zebra tbody td { 
	border-bottom: 1px solid #d1d1d1; 
	box-shadow: 0 1px 0 rgba(255,255,255,1);
}

.mod-box-black ul.zebra > li,
.mod-box-black table.zebra tbody td,
.mod-box-color ul.zebra > li,
.mod-box-color table.zebra tbody td { 
	border-bottom: 1px solid;
	border-color: rgba(0,0,0,0.15); 
	box-shadow: 0 1px 0 rgba(255,255,255,0.1);
}

ul.zebra > li:first-child,
table.zebra tbody tr:first-child td { 
	border-top: 1px solid #d1d1d1; 
	box-shadow: inset 0 1px 0 rgba(255,255,255,1), 
				0 1px 0 rgba(255,255,255,1);
}

.mod-box-black ul.zebra > li:first-child,
.mod-box-black table.zebra tbody tr:first-child td,
.mod-box-color ul.zebra > li:first-child,
.mod-box-color table.zebra tbody tr:first-child td { 
	border-top: 1px solid;
	border-color: rgba(0,0,0,0.15); 
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.1), 
				0 1px 0 rgba(255,255,255,0.15);
}

ul.zebra > li.odd,
table.zebra tbody tr.odd { background: url(../images/bg_black_2.png); }
ul.zebra > li:nth-of-type(odd),
table.zebra tbody tr:nth-of-type(odd) { background: rgba(0,0,0,0.02); }

table.zebra thead,
table.zebra tbody tr:hover,
table.zebra tbody tr.odd:hover,
.mod-box-black ul.zebra > li.odd,
.mod-box-black table.zebra tbody tr.odd,
.mod-box-color ul.zebra > li.odd,
.mod-box-color table.zebra tbody tr.odd,
table.zebra tfoot td,
.mod-box-black table.zebra tfoot td { background: url(../images/bg_black_5.png); }

.mod-box-black ul.zebra > li:nth-of-type(odd),
.mod-box-black table.zebra tbody tr:nth-of-type(odd),
.mod-box-color ul.zebra > li:nth-of-type(odd),
.mod-box-color table.zebra tbody tr:nth-of-type(odd)  { background: rgba(0,0,0,0.05); }

table.zebra caption { color: #999; }
.mod-box-black  table.zebra caption { color: #d1d1d1; }
.mod-box-color  table.zebra caption { color: #fff; }

.mod-box-black table.zebra thead,
.mod-box-color table.zebra thead,
.mod-box-black table.zebra tbody tr:hover,
.mod-box-black table.zebra tbody tr.odd:hover,
.mod-box-color table.zebra tbody tr:hover,
.mod-box-color table.zebra tbody tr.odd:hover { background: url(../images/bg_black_10.png); }

table.zebra tbody tr:nth-of-type(odd):hover { background: rgba(0,0,0,0.05); }

.mod-box-black table.zebra tbody tr:nth-of-type(odd):hover,
.mod-box-color table.zebra tbody tr:nth-of-type(odd):hover { background: rgba(0,0,0,0.1); }

table.zebra thead th { 
	border-top: 1px solid;
	border-color: rgba(0,0,0,0.15);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.5); 
}

.mod-box-black table.zebra thead th,
.mod-box-color table.zebra thead th {
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
}

table.zebra tr td,
table.zebra tr th {	
	border-left: 1px solid;
	border-color: rgba(0,0,0,0.15);
	padding: 5px 10px;
}

table.zebra tfoot td { 
	border-bottom: 1px solid;
	border-color: rgba(0,0,0,0.15);
}

.mod-box-black table.zebra tfoot td,
.mod-box-color table.zebra tfoot td { background: url(../images/bg_black_15.png); }

/* ZOO List */
ul.zoo-list > li,
.zoo-comments-list > article {
    border-top: 1px solid #d1d1d1;
	box-shadow: inset 0 1px 0 #fff;
}



.mod-box-black ul.zoo-list > li,
.mod-box-black .zoo-comments-list > article,
.mod-box-color ul.zoo-list > li,
.mod-box-color .zoo-comments-list > article  {
    border-top-color: rgba(0, 0, 0, 0.15);
    box-shadow: 0 1px 0 rgba(255,255,255,0.15) inset;
}

.mod-box-black ul.zoo-list > li:first-child,
.mod-box-black .zoo-comments-list > article:first-child,
.mod-box-color ul.zoo-list > li:first-child,
.mod-box-color .zoo-comments-list > article:first-child  { box-shadow: none; }

.mod-box-color .zoo-comments-list .meta { color: #e1e1e1; }
.mod-box-color .zoo-item-list p.meta { color: #e1e1e1; }

/* Definition Lists
----------------------------------------------------------------------------------------------------*/

dl.separator dt {	
	position: relative;
	padding-top: 5px;
	padding-bottom: 5px;
	text-transform: uppercase;
}

/* border code because of RTL */
dl.separator dd {
	padding-top: 5px;
	padding-bottom: 5px;
	border-width: 0 0 0 1px;
	border-style: solid;
	border-color: #DDD;
}

dl.separator dt:before {
	content: "";
	position: absolute;
	top: 0;
	right: -15px;
	width: 30px;
	border-top: 1px solid #DDD;
}

dl.separator dt:after {
	content: "";
	position:absolute;
	top: -3px;
	right: -3px;
	width: 5px;
	height: 5px;
	background: #f6f6f6;
	border: 1px solid #DDD;
	border-radius:3px;
}

dl.separator dt:first-child:before,
dl.separator dt:first-child:after { display: none; }


/* Text
----------------------------------------------------------------------------------------------------*/

/* Inline Text Box */
em.box { 
	border-radius: 2px;
	border: 1px solid #E0E0E0;
	background: #f1f1f1;
	padding: 1px 3px;
}

/* Dotted Horizontal Rule */
hr.dotted { background: url(../images/tools/line_dotted.png) 0 0 repeat-x; }


/* Boxes
----------------------------------------------------------------------------------------------------*/

.box-content, 
.box-note,
.box-info,
.box-warning,
.box-hint,
.box-download {
	border-radius: 2px; 
	background: #f5f5f5;
	border: 1px solid #ddd;
	box-shadow: 0 1px 0 rgba(255,255,255,1);
}

.box-info { background: #f5f5f5 url(../images/tools/box_info.png) 0 0 no-repeat; }
.box-warning { background: #f1f1f1 url(../images/tools/box_warning.png) 0 0 no-repeat; }
.box-hint { background: #f1f1f1 url(../images/tools/box_hint.png) 0 0 no-repeat; }
.box-download { background: #f1f1f1 url(../images/tools/box_download.png) 0 0 no-repeat; }


/* Forms (Needed for System Markup)
----------------------------------------------------------------------------------------------------*/

form.box fieldset{
	background: #f1f1f1;
	margin-bottom: 10px;
	padding: 10px 15px;
	border: 1px solid #ccc;
	border-radius: 2px;
	box-shadow: 0 1px 0 rgba(255,255,255,1);
}

.mod-box-black form.box fieldset, 
.mod-box-color form.box fieldset { box-shadow: 0 1px 0 rgba(255,255,255,0.2); }

form.box fieldset legend {
	color: #999;
	font-size: 12px;
}

form.style input[type="text"],
form.style input[type="password"],
form.style select,
form.style textarea {
	padding: 6px;
	border: 1px solid #ccc;
	background-color: #f9f9f9;
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 #fff;
	color: #999;
	text-shadow: 0 1px 0 #ffffff;
}

.mod-box-color form.style input[type="text"],
.mod-box-color form.style input[type="password"],
.mod-box-color form.style select,
.mod-box-color form.style textarea {
	background: url(../images/bg_black_10.png);
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 rgba(255,255,255,0.1);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
	color: #fff;
}

.mod-box-black form.style input[type="text"],
.mod-box-black form.style input[type="password"],
.mod-box-black form.style select,
.mod-box-black form.style textarea {
	border-color: #3E4144;
	background: url(../images/bg_black_20.png);
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 rgba(255,255,255,0.1);
	text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
	color: #999;
}

form.style input[type="text"]:focus,
form.style input[type="password"]:focus,
form.style select:focus,
form.style textarea:focus {
	border: 1px solid #ccc;
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 #fff;
	outline: none;
	color: #444;
	background: #f6f6f6;
	text-shadow: none;
}

.mod-box-color form.style input[type="text"]:focus,
.mod-box-color form.style input[type="password"]:focus,
.mod-box-color form.style select:focus,
.mod-box-color form.style textarea:focus {
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 rgba(255,255,255,0.1);
}

.mod-box-black form.style input[type="text"]:focus,
.mod-box-black form.style input[type="password"]:focus,
.mod-box-black form.style select:focus,
.mod-box-black form.style textarea:focus {
	border-color: rgba(0,0,0,0.7); 
	box-shadow: inset 0 1px 0 rgba(0,0,0,0.05),
				0 1px 0 rgba(255,255,255,0.1);
}

form.style button:hover,
form.style input[type="button"]:hover,
form.style input.button:hover,
form.style #submit:hover { color: #fff; }


/* Social Icons
----------------------------------------------------------------------------------------------------*/

.social-icons {
	margin: 0;
	padding: 0;
	list-style: none;
	overflow: hidden;
	float:right; margin-top:-10px; margin-right:-10px;
}

.social-icons li {
	margin-left: 10px;
	line-height: 39px;
	float: left;
}

.social-icons li:first-child { margin-left: 0; }

.social-icons li a {
	display: block;
	overflow: hidden;
	width: 30px;
	height: 31px;
	background-repeat: no-repeat;
	background-position: 0 0;
}

.social-icons .facebook a { background-position: 0 0; }
.social-icons .facebook a:hover { background-position: 0 -50px; }
.social-icons .facebook a:active { background-position: 0 -100px; }

.social-icons .linkedin a { background-position: 0 -150px; }
.social-icons .linkedin a:hover { background-position: 0 -200px; }
.social-icons .linkedin a:active { background-position: 0 -250px; }

.social-icons .twitter a { background-position: 0 -300px; }
.social-icons .twitter a:hover { background-position: 0 -350px; }
.social-icons .twitter a:active { background-position: 0 -400px; }

.social-icons .print a { background-position: 0 -450px; }
.social-icons .print a:hover { background-position: 0 -500px; }
.social-icons .print a:active { background-position: 0 -550px; }

.social-icons .mail a { background-position: 0 -600px; }
.social-icons .mail a:hover { background-position: 0 -650px; }
.social-icons .mail a:active { background-position: 0 -700px; }

.social-icons .youtube a { background-position: 0 -751px; }
.social-icons .youtube a:hover { background-position: 0 -803px; }
.social-icons .youtube a:active { background-position: 0 -854px; }



/* Pricing Table 
----------------------------------------------------------------------------------------------------*/

.pricing {
	border: 1px solid;
	border-color: rgba(0,0,0,0.1);
	border-bottom-color: rgba(0,0,0,0.2);
	border-radius: 2px;
	background: #f7f7f7;
	background: -webkit-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: -moz-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: -o-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: linear-gradient(to bottom, #f7f7f7, #f4f4f4);
	background-clip: padding-box;
	box-shadow: inset 0px 1px 0 rgba(255,255,255,1);

	text-shadow: 0 1px 0 #fff;
	text-align: center;
	overflow: hidden;
}

.pricing .grid-box > div { 
	padding: 15px; 
	border: 0 solid #d1d1d1; 
	border-left-width: 1px;
	box-shadow: inset 1px 0 0 #fff;
}

.pricing .grid-box div > * { 
	margin: 15px 0 0 0;
}

.pricing .grid-box:first-child > div { 
	border: none;
	box-shadow: none;
}

.pricing .highlighted ul.zebra > li.odd { background: url(../images/bg_white_30.png); }
.pricing .highlighted ul.zebra > li:nth-of-type(odd) { background: rgba(255,255,255,0.3); }

.pricing .highlighted { background-color: #eaeaea; }

.pricing .highlighted > div { 
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7),
				inset 1px 0 0 rgba(255,255,255,0.7); 
}

.pricing .price {
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	background: #f1f1f1;
	background: -webkit-linear-gradient(top, #f1f1f1, #e7e7e7);
	background: -moz-linear-gradient(top, #f1f1f1, #e7e7e7);
	background: -o-linear-gradient(top, #f1f1f1, #e7e7e7);
	background: linear-gradient(to bottom, #f1f1f1, #e7e7e7);
 	font: bold 30px/54px Arial, Helvetica, sans-serif;
}

.pricing .highlighted .price {
	background: #f7f7f7;
	background: -webkit-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: -moz-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: -o-linear-gradient(top, #f7f7f7, #f4f4f4);
	background: linear-gradient(to bottom, #f7f7f7, #f4f4f4);
}

