/*
Theme Name: The Developer
Theme URI: http://themeforest.net/user/ototw
Description: Modern, clean and professional apps developer related WordPress template.
Author: On top of the World Studios
Version: 2.0
Author URI: http://themeforest.net/user/OTOTW
Tags: black
License URI:  http://www.gnu.org/licenses/gpl-3.0.html
License:    GNU General Public License
*/

/*	-------------------------------------------------------------
 
	THE DEVELOPER - BY OTOTW
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

	Description:Base cascading style sheet
	Nom:style.css
	Version:2.0
	Date:August 31, 2010
  Modified:November 29, 2012
 
	This file is part of a site template for sale at ThemeForest.net.
	See: http://themeforest.net/user/ototw/portfolio
	Copyright © 2012 OTOTW
 
-------------------------------------------------------------	*/

/* 
  style.css contains a reset, font normalization and some base styles.
  
  credit is left where credit is due.
  additionally, much inspiration was taken from these projects:
    yui.yahooapis.com/2.8.1/build/base/base.css
    camendesign.com/design/
    praegnanz.de/weblog/htmlcssjs-kickstart
*/

/* 
  html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
  v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark
  html5doctor.com/html-5-reset-stylesheet/
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, figure, footer, header, 
hgroup, menu, nav, section, menu,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}                  

html{
  font-size:100%;
  -webkit-text-size-adjust:100%;
  -ms-text-size-adjust:100% }


body{
  margin:0;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust:100% }

article, aside, figure, footer, header, 
hgroup, nav, section { display:block; }

nav ul { list-style:none; }

ul, ol { margin-bottom: 20px; }
ul { list-style: none outside; }
ol { list-style: decimal; }
ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
ul.square { list-style: square outside; }
ul.circle { list-style: circle outside; }
ul.disc { list-style: disc outside; }
ul ul, ul ol,
ol ol, ol ul { margin: 4px 0 5px 30px; font-size: 90%;  }
ul ul li, ul ol li,
ol ol li, ol ul li { margin-bottom: 6px; }
li { line-height: 18px; }
ul.large li { line-height: 21px; }
li p { line-height: 21px; }

blockquote, q { quotes:none; }

blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }

blockquote {
	display: block;
	padding: 10px 30px;
	width: auto; }

blockquote {
  margin-top: 10px;
  margin-bottom: 20px;
  margin-left: 50px;
  padding-left: 15px; }

blockquote p {
	font-size:15px;
  margin:0;
  padding:0;
	font-style:italic;
	color:#999 !important; }

a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }

ins { background-color:#ff9; color:#000; text-decoration:none; }

mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom:1px dotted #000; cursor:help; }

/* tables still need cellspacing="0" in the markup */
table { border-collapse:collapse; border-spacing:0; }

hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }

input, select { vertical-align:middle; }
/* END RESET CSS */

/*
fonts.css from the YUI Library: developer.yahoo.com/yui/
          Please refer to developer.yahoo.com/yui/fonts/ for font sizing percentages

There are three custom edits:
 * remove arial, helvetica from explicit font stack
 * make the line-height relative and unit-less
 * remove the pre, code styles
*/
body { 
	line-height:1.50;
	background:#fff url("images/bg_body.gif") repeat-x 50% 0; }

table { font-size:inherit; font:100%; }

select, input, textarea { font:99% sans-serif; }

/* normalize monospace sizing 
 * en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome
 */
pre, code, kbd, samp { font-family: monospace, sans-serif; }
 
/* 
 * minimal base styles 
 */

/* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */ 
body, select, input, textarea { color:#444; }

/* Headers (h1,h2,etc) have no default font-size or margin,
   you'll want to define those yourself. */ 
 
/* www.aestheticallyloyal.com/public/optimize-legibility/ */ 
h1, h2, h3, h4, h5, h6 {
  text-rendering:optimizelegibility;
  -webkit-font-smoothing: antialiased; }
  
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
h1 { font-size: 38px; line-height: 50px; margin-bottom: 14px;}
h2 { font-size: 28px; line-height: 40px; margin-bottom: 10px; }
h3 { font-size: 24px; line-height: 36px; margin-bottom: 14px; }
h4 { font-size: 21px; line-height: 30px; margin-bottom: 10px; }
h5 { font-size: 16px; line-height: 24px; margin-bottom: 10px; }
h6 { font-size: 14px; line-height: 21px; margin-bottom: 4px; }

p { margin-bottom:1.8em; }

/* maxvoltar.com/archive/-webkit-font-smoothing */
 
/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }
a { text-decoration:none; }

ul { margin-left:30px; }
ol { margin-left:30px; list-style-type: decimal; }

small { font-size:85%; }
strong, th { font-weight: bold; }

td, td img { vertical-align:top; } 

sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }

pre { 
  padding: 15px; 
  
  /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
  white-space: pre; /* CSS2 */
  white-space: pre-wrap; /* CSS 2.1 */
  white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word; /* IE */
}

/* align checkboxes, radios, text inputs with their label
   by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; *vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button { cursor: pointer; }

/* These selection declarations have to be separate.
   No text-shadow: twitter.com/miketaylr/status/12228805301 
   Also: hot pink. */
::-moz-selection{ background: #444; color:#fff; text-shadow: none; }
::selection { background:#444; color:#fff; text-shadow: none; } 

/*  j.mp/webkit-tap-highlight-color */
a:link { -webkit-tap-highlight-color: #FF5E99; } 

/* make buttons play nice in IE:    
   www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {  width: auto; overflow: visible; }
 
/* bicubic resizing for non-native sized IMG: 
   code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img { -ms-interpolation-mode: bicubic; }

/* 
 * Non-semantic helper classes 
 */

/* for image replacement */
.ir { display:block; text-indent:-999em; overflow:hidden; background-repeat: no-repeat; }

/* Hide for both screenreaders and browsers
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display:none; visibility:hidden; } 

/* Hide only visually, but have it available for screenreaders 
   www.webaim.org/techniques/css/invisiblecontent/ 
   Solution from: j.mp/visuallyhidden - Thanks Jonathan Neal! */
.visuallyhidden { 
	position:absolute !important;    
  	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  	clip: rect(1px, 1px, 1px, 1px); }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* >> The Magnificent CLEARFIX << */
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix { display: inline-block; }
* html .clearfix { height: 1%; } /* Hides from IE-mac \*/
.clearfix { display: block; }
.scale-with-grid {
    max-width: 100%;
    height: auto; }

/* ==========================================================================
   GENERAL STYLES
   ========================================================================== */

/* Buttons */
a.btn_appstore_big {
  margin:55px 0 0 0;
  width: 320px;
  height: 101px;
  display: block;
  text-indent: -9999px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.3);
  -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.3);
  box-shadow: 0 1px 2px rgba(0,0,0,0.3);
  background:transparent url("images/bg_btn_appstore.png") no-repeat 0 0; } 

a.btn_appstore_big:hover {
  -moz-box-shadow: 0 0 45px rgba(255,255,255,0.3);
  -webkit-box-shadow: 0 0 45px rgba(255,255,255,0.3);
  box-shadow: 0 0 45px rgba(255,255,255,0.3); }

.alignleft { 
  float:left; 
  margin:10px 52px 0 0; }

.alignright { 
  float:right; 
  margin:10px 0 0 20px;}

.center {
  text-align:center; }

.nmr {
  margin-right:0 !important; }

.mb20 {
  margin-bottom:20px !important; }

.mb30 {
  margin-bottom:30px !important; }

.mb40 {
  margin-bottom:40px !important; }

.mt40 {
  margin-top:60px !important; }

.nmargin {margin:-20px 0 0 0;}
.pmargin {margin:20px 0 0 0;}

.icon-large {
  color:#fff;
  padding:3px;
  margin:0 0 4px 0;
  width: 30px;
  height: 30px;
  line-height: 34px;
  text-align: center;
  -moz-border-radius: 35px;
  -webkit-border-radius: 35px;
  -o-border-radius: 35px;
  border-radius: 35px;
  text-align: center;
  display: inline-block;
  font-weight: 100;
  font-size: 16px;
}

h4 .icon-large {
  margin-right:10px;
  font-size:  16px;
}

a:hover  { 
  -webkit-transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
  -moz-transition: background linear 0.15s, color linear 0.15s, box-shadow linear 0.2s;
  -o-transition: background linear 0.15s, color linear 0.15s, box-shadow linear 0.2s;
  -ms-transition: background linear 0.15s, color linear 0.15s, box-shadow linear 0.2s;
  transition: background linear 0.15s, color linear 0.15s, box-shadow linear 0.2s; }  

.last { margin-right:0 !important; }
.sticky, .gallery-caption, .bypostauthor{}

/* ==========================================================================
   GRID
   ========================================================================== */

div#container {
  position:absolute;
  width: 100%;
  margin: 0 auto; }

div.wrapper {
  position: relative;
  height: 100%;
  margin: 0 auto; }

/* ==========================================================================
   PAGE INTRODUCTION
   ========================================================================== */
   
div.panel {
  position:absolute;
  z-index:10000;
  left:0;
  top:0;
  width: 250px;
  height: 100%;
  margin: 0 0 0 -252px;
  text-align:left;
  -moz-box-shadow: 1px 0 1px rgba(0,0,0,0.5);
  -webkit-box-shadow: 0 0px 1px rgba(0,0,0,0.3);
  box-shadow: 0 0px 1px rgba(0,0,0,0.3); }

div.panel .wrap{
    margin: 30px 20px; }

div.panel h4 {
  color:#fff;
  font-size: 1.4em;
  margin:0 0 17px 0;
  text-shadow:0 -1px 0px rgba(0,0,0,0.22); }

div.panel ul {
  padding:10px 0 20px 0;
  margin:0; }

div.panel ul li {
  border-bottom:1px solid rgba(255,255,255,0.22);
  display:block;
  line-height:1em;
  padding:0; }

div.panel ul li:last-child {
  border-bottom:none; }

div.panel ul li a {
  display:block;
  color:#fff;
  padding:10px;
  text-indent:5px;
  text-decoration:none; }

div.panel ul li a:hover, div.panel ul li a:focus {
  font-weight:bold;
  text-decoration:none; }

div.panel .textwidget p {
  color:#fff; }

div.panel .toggle {
  position: absolute;
  right: -42px;
  top: 0px;
  width: 42px;
  height: 42px;
  margin:0;
  padding:0;
  text-align: center;
  outline: none;
  color:#fff;
  font-size: 24px;
  -webkit-border-bottom-right-radius: 3px;
  -moz-border-radius-bottomright: 3px;
  border-bottom-right-radius: 3px; }   

div.panel span {
  margin:0;
  padding:0;
  line-height: 42px;
  display:block;
  opacity: 0.5;
  -webkit-transition: all 0.2s linear 0.2s;
  -moz-transition: all 0.2s linear 0.2s;
  -o-transition: all 0.2s linear 0.2s;
  -ms-transition: all 0.2s linear 0.2s;
  transition: all 0.2s linear 0.2s;
  -webkit-transform: rotate(0deg); 
  -moz-transform: rotate(0deg); }

div.panel span:hover {
  opacity: 1; }

div.panel .toggle_selected span {
  margin:-3px 0 0 0;
  opacity: 1;
  -webkit-transform: rotate(180deg); 
  -moz-transform: rotate(180deg); }

/* ==========================================================================
   HEADER
   ========================================================================== */

div#header { 
  position:relative; 
  padding:0;
  margin:0;
  height:83px;
  background:#ececec url("images/bg_header.gif") repeat-x 50% 0; }

.home div#header {
  height:535px; }

div#header.largeHeader {
  height:322px; }

/* Logo */
#header div.logo {
  width: 40%;
  float:left;
  min-height:125px}

div#header h1 {
  float:left;
  margin:-4px 0 0 0;
  padding:0;
  font-size:1.7em;
  line-height: 83px;
  color:#fff;
  text-shadow:0 1px 0px #000; }

div#header h1 a {
  color:#fff;
  text-decoration:none; }

div#header h2 {
  font-size:4.2em;
  color:#006bb7;
  line-height:110%;
  margin:0;
  text-shadow:0 1px 0px #FFF;
  z-index:1; }

div#header p {
  margin:15px 0 0 0;
  color:#333;
  font-size:16px;
  line-height: 26px;
  letter-spacing:-1px;
  font-style:normal;
  text-shadow:0 1px 0px #FFF; }

/* Nav */
#header div.nav {
  width: 60%;
  float:left; }

#header div.nav ul {
  padding:0;
  margin:0;
  line-height: 85px;
  float:right;
  width: 100%;
  text-align: right; }

#header div.nav ul li {
  position:relative;
  display:inline-block;
  padding:0;
  margin:0 10px 0 0; }

#header div.nav ul li a {
  color:#000;
  text-transform: uppercase;
  text-decoration:none;
  text-shadow:0 1px 0 rgba(255,255,255,0.4);
  padding:5px 8px;
  margin:0; }

#header div.nav ul li a:hover {
  color:#FFF;}

#header div.nav ul li.parent a.active, #header div.nav ul li.parent a.active:hover {
  color:#FFF;
  padding-bottom:13px;
  -webkit-border-top-left-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;  
  -webkit-box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  -moz-box-shadow:  0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
    box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box; 
}

#header div.nav ul li.current-menu-parent a, #header div.nav ul li.current_page_item a  { color:#006eb9; }

/* Dropdown Navigation **************************************************/
#header div.nav ul li ul {
  position:absolute;
  left:0px;
  top:32px;
  z-index: 4900;
  display:none;
  list-style:none;
  margin:0;
  padding:8px 4px;
  line-height: 25px;
  width:145px;
  -webkit-border-radius: 5px;
  -webkit-border-top-left-radius: 0;
  -moz-border-radius: 5px;
  -moz-border-radius-topleft: 0;
  border-radius: 5px;
  border-top-left-radius: 0;
  -webkit-box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  -moz-box-shadow:  0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 10px 20px rgba(0,0,0, 0.12), inset 0 -10px 30px rgba(255,255,255, 0.12); 
 -webkit-transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
  -moz-transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
  -o-transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
  -ms-transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
  transition: background linear 0.2s, color linear 0.2s, box-shadow linear 0.2s;
    box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box; } 

#header div.nav ul li ul li {
  clear:both;
  margin:0;
  padding:0 8px;
  line-height: 100%;
  width:100%; } 

#header div.nav ul li ul a {
  border-left:none;
  border-right:none;
  display:block;
  margin:0;
  padding:0 !important;
  text-align: left; 
  color:#fff;
  width: 95%;
  text-transform: none;
  background: none;
  -webkit-box-shadow:none;
  box-shadow:none !important;
  background: transparent !important; } 

#header div.nav ul li ul li a:hover { 
  font-weight: bold; }


/* Mobile Navigation **************************************************/
.mobileNav {
  position: absolute;
  top:0;
  right:0;
  width: 100%;
  display: none;
  height: 83px;
  width: 50%;}

.mobileNav select {
  position: absolute;
  left:0;
  width: 100%;
  opacity: 0;
  z-index: 50;
  display: none;
  position: relative;
  top:20px;
  height:40px;
  cursor: pointer !important;
  padding: 5px 0 5px 15px;
  background: #000;
  border:1px solid #fff; }

.select-container {
  position: absolute;
  bottom:25px;
  right: 0;  
  width: 100%;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  -moz-box-shadow:  0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  box-shadow: 0 2px 3px rgba(0,0,0, 0.35), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);
  display: none;
  padding: 4px 0 4px 15px;
  text-align: left;
  color: #fff;
  background: #656565;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 24px; }

.select-container:after {
  top: 8px;
  right: 20px;
  position: absolute; }

/* Slider */
#slider .text {
  padding-top:5%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

#slider .text p {
  margin-top:20px;
}


/* Large Header */
.largeHeader div.visual {
  float:left;
  margin:0px 0 0 0;
  width: 100%; }

.largeHeader div.text {
  margin:40px 0px 0;
  max-width: 100%;  }

.largeHeader div.text h3 {
  font-size:28px;
  margin:0;
  color:#999;
  text-shadow:0 1px 0px #000; }

.largeHeader h3 span.title {
  color:#fff; }

.largeHeader div.text a {
  text-decoration:none; }

/* ==========================================================================
   PAGE INTRODUCTION
   ========================================================================== */

.page-intro {
  margin:-5px 0 0 0;
  padding:35px 0 60px 0; }

.page-intro h2 {
  margin:0 0 25px 0;
  padding:0;
  color:#fff;
  font-size:14px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 100; }

.page-intro h3 {
  margin:0;
  padding:0;
  color:#fff;
  font-size:2em;
  font-weight: 100; }

.page-intro h3 p {
  margin:0;
  padding:0;
  color:#fff;
  font-size:1em;
  font-weight: 100; }

/* ==========================================================================
   CONTENT
   ========================================================================== */

div#main {
  margin:0 auto; }

div.heading {
  height:108px;
  line-height:108px; }

div.heading h2 {
  font-size:2.2em; 
  margin:0;
  line-height: 108px;
  padding:0;
  text-shadow:0 1px 0 #fff; }

div.content {
  padding:20px 0 20px 0;
  background:#fff;
  box-shadow:0 1px 1px 0 rgba(0,0,0,.4);
  border-top:1px solid rgba(0,0,0,0.07);
  border-radius:2px; }

div.inner {
  padding:0 30px }

/* ==========================================================================
   SIDEBAR
   ========================================================================== */

div.sidebar {
  padding:0 20px;
  border-left:1px solid #ddd; }

div.sidebar ul {
  padding:0 0 20px 0;
  margin:0; }

div.sidebar ul li {
  border-bottom:1px solid #DDDDDD;
  display:block;
  line-height:1em;
  padding:0; }

div.sidebar ul li:last-child {
  border-bottom:none; }

div.sidebar ul li a {
  display:block;
  padding:10px;
  text-indent:5px;
  text-decoration:none; }

div.sidebar ul li a:hover, div.sidebar ul li a:focus {
  text-decoration:none; }

/*  tag cloud */
div.widget_tag_cloud {
  margin:0 0 20px 0;}

.widget_tag_cloud a {
  color:#999; }

.widget_tag_cloud a:hover {
  color:#555; }

/* text widget */
.textwidget {
  margin:8px 0 20px 0;
  line-height:1.8em; }

/* Calendar */
div.widget_calendar h4 {
  display:none; }

#calendar_wrap {
  margin:0;
  padding:0; }

#wp-calendar {
  empty-cells: show;
  margin: 0 auto;
  width: 100%; }

#wp-calendar td a {
  background:#999;
  color:#fff;
  font-weight:bold;
  display: block;
  text-decoration: none; }

#wp-calendar caption {
  font-size:20px;
  color:#999;
  text-align:left;
  padding:0 0 5px 0;
  margin:0 0 10px 0;      
  line-height: 1.5em; 
  letter-spacing:-0.5px;
  background:transparent url("images/bg_hor_dotted.png") repeat-x bottom left; }

#wp-calendar th {
  text-align:center;
  padding:3px 0;
  font-style: normal;
  text-transform: capitalize; }

#wp-calendar #next a {
  padding-right: 10px;
  text-align: right; }

#wp-calendar #prev a {
  padding-left: 10px;
  text-align: left; }

#wp-calendar td {
  padding: 3px 0;
  text-align: center; }

/* Text box */
.textbox {    
   background:#F3F3F3;
   border:1px solid #E9E9E9;
   padding:20px;
}
.textbox p {
  margin-bottom: 12px;
  color:#666;
  font-size: 11px;
}
.textbox h5 {
   margin:0 0 12px;
}
.textbox .button {
   margin-bottom:0;
}

/* Listing */
ul.list {
  margin:0;
  padding:0;
  list-style:none; }

ul.list li {
  padding:0 0 20px 0;
  margin:0 0 20px 0;
  background:transparent url("images/bg_hor_dotted.png") repeat-x bottom left; }

ul.list li:last-child {
  margin:0;
  padding:0;
  background:none; }

ul.list li.phone {
  margin:0 0 10px 0;
  padding:0 0 0 24px;
  background:transparent url("images/icon-phone.png") no-repeat 0 2px; }

ul.list li.mail {
  margin:0 0 10px 0;
  padding:0 0 0 24px;
  background:transparent url("images/icon-email.png") no-repeat 0 2px; }

/* Products Listing */
ul.products {
    margin: 20px 0 0 0;
    padding:0;
    list-style-type:none; }

ul.products li {
    float:left;
    width:200px;
    position: relative; }

.fourcols ul.products li {
    margin:0 25px 14px 0; }

.threecols ul.products li {
    margin:0 20px 14px 0; }

ul.products h3,
ul.products .item_action {
  font-size: 18px;
  line-height: 18px; 
  margin-bottom: 10px;
}

ul.products .item_action {
  margin-bottom: -5px;
}


ul.products .item_action a:hover { text-decoration: none; }
ul.products .item_action, ul.products li:hover h3 { display: none; }
ul.products li:hover .item_action{ display: block; }

ul.products p.description {
    color: #888;
    font-size: 13px;
    line-height: 19px;
    margin-top: 10px; }

.fourcols ul.products li:nth-child(4n) {
    margin-right:0; }

.threecols ul.products li:nth-child(3n) {
    margin-right:0; }

ul.products li img.thumb {
    opacity: 1;
    margin-bottom: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box; }

ul.products li:hover .item_action img {
    opacity: 1;
    -moz-opacity: 1;
    filter:alpha(opacity=1);
    margin-bottom:-2px;
    vertical-align:top;
    padding:0 4px;
  }

ul.products div.zoom {
    opacity: 0;
    background: transparent url("images/zoom.png") no-repeat center;
    top:43px;
    left:86px;
    width:51px;
    height:51px;
    position: absolute;
}    

ul.products li:hover span.or_dot {
  border-radius: 50%;
  color:#fff;
  padding:5px;
  width: 10px;
  height: 10px;
  line-height: 10px;
  margin:0;
  display: inline-block;
  text-align: center;
  font-size:10px;
}

/* Entry */
div.entry {
  width: 100%;
  padding:0;
  margin:0; }

div.entry div.post {
  width: 100%;
  padding:0 0 30px 0;
  margin:0 0 30px 0;
  background:transparent url("images/bg_hor_dotted.png") repeat-x bottom left; }

div.entry h3 a { 
  text-decoration:none; }

div.entry ul.meta {
  padding:0;
  margin:5px 0 0 0;
  list-style:none;
  float:left;
  width: 140px;
  font-size:12px; }

div.entry ul.meta li.date, div.entry ul.meta li.comments {
  color:#999;
  font-weight:bold; }

div.entry ul.meta li.comments {
  font-weight:normal; }
  
div.entry ul.post-categories {
  list-style:none;
  padding:0;
  margin:0; } 

div.entry div.post-content {
  margin-top:20px;
  padding-left:160px; }

div.entry div.post-content img, div.entry div.post-content pre {
  padding-left:0;
  margin-left:-160px; }

div.entry.index .format-video iframe, div.post-content iframe  {
    width: 100%;
    height: auto;
    min-height: 400px;
}

div.entry.index .format-image .post-content {
    padding-left:0;
}

div.entry.index .format-image .post-content img {
    margin-left:0px;
}

div.entry div.post-content blockquote {
  margin-left:-160px;
  margin-bottom:20px; }

div.entry div.post-content ul {
  margin-bottom:20px; }

div.entry div.post-content pre {
  background: url("images/notepaper.png") top left repeat;
  padding:0 12px;
  margin-bottom:20px; }

div.entry div.metadata {
  text-align:center;
  font-size:11px; }

div.entry div.center {
  text-align:center; }

div.entry div.center h6 {
  margin-bottom:12px; }

div.post-content.no-padding {
  padding-left:0px !important;}

/* Widgets */
.widget-container {
  clear:both;
  margin:0 0 12px 0; }

.widget-container ul, .widget-container ul.menu  {
  clear:both;
  margin:0 0 12px 0;
  padding:0; }

/* Twitter widget */
.twitter {
  padding:0;
  margin:0 0 12px 0;
  clear: both; }

.twitter span, .twitter p {
  display:block; }

.widget-frontpage span, .widget-frontpage p {
  text-align: center; }

.twitter span.icon-twitter {
  display:none; }

.widget-frontpage span.icon-twitter {
  display: block;
  font-size: 4em; }

.twitter .twitterList {
  margin:0; }

.widget-frontpage .twitterList {
  margin:0;
  font-size: 2em; }

.twitter .twitterFooter {
  display:none; }

.widget-frontpage .twitterFooter {
  display:block;
  font-size:16px;
  text-align:center; }

.twitFooter, .hidden {
  display:none !important; }

/* Social Navigation **************************************************/
.widget-container ul.social  {
  margin-top:5px;}

.widget-container ul.social li {
  float:left;
  padding:0;
  margin:0;
  line-height: 32px;
  border: none; }

.widget-container ul.social li a {
  margin:0;
  padding:0; 
  font-size:24px;
  display:block;
  -webkit-transition:all 0.2s linear;
  -moz-transition:all 0.2s linear;
  -o-transition:all 0.2s linear;
  -ms-transition:all 0.2s linear;
  transition:all 0.2s linear; }

/* Comments */
div.comments {
  margin:0;
  padding:20px 0 0 0;
  background:#fff url("images/bg_hor_dotted.png") repeat-x top left; }

div.comments .commentarea h3 {
  font-size:24px;
  padding:0 0 0px 0; }

div.comments .commentarea ul {
  margin: 20px 0 20px 0;
  padding:0; }

div.comments .commentarea ul li {
  overflow: hidden;
  margin:0 0 20px 0;
  padding:0;
  border:1px solid #e0e0e0;
  background:transparent url("images/bg_comments.gif") repeat-y 0 0; }

div.comments .commentarea .meta {
  width: 140px;
  padding:20px;
  float: left;
  overflow:visible;
  height:100%;
  text-align: left;
  background:transparent url("images/bg_comments_top.gif") no-repeat 0 0; }

div.comments .commentarea .meta cite, div.comments .commentarea .meta cite a  {
  font-style: normal;
  font-size:12px;
  font-weight: bold;}

div.comments .commentarea div.meta span {
  display: block;
  font-size: 11px;
  padding: 0;}

div.comments .commentarea div.meta span {
  display: block;
  font-size: 11px;
  padding: 0;}

div.comments .commentarea div.meta span.time {
  font-size: 10px;}

div.comments .commentarea .comment {
  width: 400px;
  padding: 0;
  float: right;
  margin: 20px 20px 5px 0;
  position: relative; }

div.comments .commentarea ul li ul {
  display:none; }

/* Comment form */
form#commentform { margin:20px 0 0 0; }

.comment-notes, .form-allowed-tags, .logged-in-as  {
  display: none; }

div.comments .commentarea form span.required {
  display:none;}

div.comments .commentarea form p {
  margin-bottom:10px; }

div.comments .commentarea form label {
  margin: 7px 0 0 0;
  color:#999;
  width:160px;
  font-weight:bold;
  display:block;
  float:left; }

div.comments .commentarea form input[type=text] {
  padding: 10px 15px;
  border:1px solid #e0e0e0;
  color: #323232;
  margin: 0 0 14px 0; }

div.comments .commentarea form textarea {
  width: 75%;}

/* pagination **************************************************/
#pagination {
  overflow: hidden; 
  padding: 0;
  margin: 0 0 10px 0 ; }

#pagination li {
  float: left;
  background: none;
  padding: 0;
  font-size: 12px;
  margin-right: 10px;
  list-style-type: none;
}
#pagination a {
  text-decoration: none;
  background: #F9F9F9;
  color: #aaa;
  display: block;
  text-align: center;
  width: 30px;
  height: 27px;
  line-height: 27px;
  border: #ddd 1px solid;
}
#pagination li.act a, #pagination li a:hover { color: #000; }

/* ==========================================================================
   TABLE & TABS
   ========================================================================== */

table { 
  border-collapse: collapse; 
  cursor: default; 
  width: 100%; 
  margin:30px 0 0 0 }

table th {
  background: #EFEFEF;
  font-weight: 400;
  color:#000;
  text-align: left;
  padding: 8px 10px 8px 14px;
  border: #DDE0E4 1px solid; }

table td {
  padding: 8px 10px 8px 14px;
  border: #DDE0E4 1px solid; }

table td.column-1 {
  color:#000; }

table td a {
  border-bottom: #dfdfdf 1px dotted;
  color: #000 !important; }

table td a:hover {
  border-bottom: #656565 1px dotted;
  color: #444 !important;
  text-decoration:none; }

table tr:hover td { 
  background: #FFc; }

.cell-hidden { 
  border: none; background: none; }

/* ==========================================================================
   SHORTCODES
   ========================================================================== */

.col-1-3, .col-2-3, .col-1-2, .col-1-4, .col-3-4, .col-1-5, .col-2-5, .col-3-5, .col-4-5 { float: left; margin-right: 3%; }

/* column widths **************************************************/
  .col-1-1  { float: none; }  /* full width (not required) */
  .col-1-2  { width: 48.5%;}  /* 1/2 width */
  .col-1-3  { width: 31.3%; } /* 1/3 width */
  .col-2-3  { width: 65.6%; } /* 2/3 width */
  .col-1-4  { width: 22.7%; } /* 1/4 width */
  .col-3-4  { width: 74.2%; } /* 3/4 width */
  .col-1-5  { width: 17.6%; } /* 1/5 width */
  .col-2-5  { width: 38.2%; } /* 2/5 width */
  .col-3-5  { width: 58.8%; } /* 3/5 width */
  .col-4-5  { width: 79.4%; } /* 4/5 width */

  /* last column */ 
    .last { margin-right: 0 !important; }
    .col-1-2:last-child, .col-1-3:last-child, .col-2-3:last-child, .col-1-4:last-child, .col-3-4:last-child, 
    .col-1-5:last-child, .col-2-5:last-child, .col-3-5:last-child, .col-4-5:last-child  { margin-right: 0; }

/* Divider **************************************************/
hr { border-top-color: #ccc; }

/* Boxes and Containers **************************************************/

/* Pull quote */
  .pull-quote         { display: block; float: left; width: 35%; margin: 17px 25px 17px 0; padding: 10px 0 10px 20px; border: 4px solid #ccc; border-width: 0 0 0 4px; }
  .pull-quote.pullRight   { float: right; margin: 17px 0 17px 25px; padding: 10px 20px 10px 0; border-width: 0 4px 0 0; }

/* Default Message boxes */
  div.insetBox, div.messageBox, #content .padder #message { display: block; line-height: 1.5; }
  .messageBox, #content .padder #message { padding: 12px 24px; }
  .messageBox .closeBox     { float: right; font-size: 11px; text-decoration: underline; margin: 0 0 0 10px; cursor: pointer; color: #525252; color: rgba(0,0,0,.65); }
  .messageBox.icon        { background-position: 12px 46%;; background-repeat: no-repeat; padding-left: 63px; }
    #content .padder #message p { padding: 0; margin: 0; } /* BP specific adjustment */
    /* Quote */
      .messageBox.quote                 { padding: 0; }
      .messageBox.quote .quote_text         { line-height: 1.5em; }
      div.messageBox.quote cite.quote_author      { display: block; margin: 1.7em 0; font-size: 11px; line-height: 1.5; }
      .messageBox.quote .quote_arrow          { clear: both; margin-top: -42px;; width: 19px; height: 20px; background: url(assets/images/quote-arrow-left.png) no-repeat 0 0; }
      .messageBox.quote.item-imageLeft .quote_arrow { float: right; }
      .messageBox.quote.item-imageRight .quote_arrow  { float: left; background-image: url(assets/images/quote-arrow-right.png); }
    /* note */
      .messageBox.note, #content .padder #message { color: #85816A; background-color: #FFF7CA; border-color: #F1E9C0 #F1E9C0 #D5CEA9 #F1E9C0; }
      .messageBox.note.icon   { background-image: url(assets/images/messageBox-note.png); }
      .messageBox.note .closeBox  { color: #585546; }
    /* Info box */
      .messageBox.info      { color: #fff; background-color: #57BBE5; border-color: #54B1D9 #54B1D9 #4A9DC0 #54B1D9; }
      .messageBox.info.icon   { background-image: url(assets/images/messageBox-info.png); }
      .messageBox.info .closeBox  { color: #1E414F; }
    /* Alert box */
      .messageBox.alert     { color: #fff; background-color: #F98726; border-color: #EB8025 #EB8025 #D07222 #EB8025; }
      .messageBox.alert.icon    { background-image: url(assets/images/messageBox-alert.png); }
      .messageBox.alert .closeBox { color: #562E0D; }
    /* Error box */
      .messageBox.error     { color: #fff; background-color: #C90014; border-color: #BF0013 #BF0013 #A80012 #BF0013; }
      .messageBox.error.icon    { background-image: url(assets/images/messageBox-error.png); }
      .messageBox.error .closeBox { color: #F0BDC1; }
    /* Success box */
      .messageBox.success     { color: #fff; background-color: #2BCB97; border-color: #29C18F #29C18F #25AA7F #29C18F; }
      .messageBox.success.icon  { background-image: url(assets/images/messageBox-success.png); }
      .messageBox.success .closeBox { color: #0E4634; }

/* Inset box */
  .insetBox { font-size: 12px; padding: 4px 6px; background-color: #e2e2e2; border: 1px solid #c8c8c8; border-color: #bcbcbc #c8c8c8 #fff;
        -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; /* border radius */ }
    .rgba .insetBox { background-color: rgba(0,0,0,.09); border-color: rgba(0,0,0,.17) rgba(0,0,0,.12) rgba(255,255,255,1); }

/* tabs **************************************************/
.tabs li a {
  margin-top: 10px;
  background: #EFEFEF;
  border: 1px solid #e3e3e3;
  height: 32px;
  line-height: 31px;
  color: #888;
  font-size: 13px;
  padding: 0 14px 0 44px;
  margin:0;
  cursor: pointer;
}
.tabs_table { clear: both; margin:30px 0; }
.tabs { padding: 0 0 0 1px !important; margin-bottom:-1px !important; margin-left:0; height: 34px; }
.tabs li {
  float: left;
  list-style-type: none !important;
  list-style-position: outside !important;
  cursor: pointer;
  white-space: nowrap;
  margin-left: -1px;
  padding: 0 !important;
}
.tabs li a {
  display: block;
  float: left;
  padding-left: 14px;
  background: #EFEFEF;
  margin: 0;
}
.tabs li a:hover { text-decoration: none; background: #ffc; color:#444; }
.tabs li a.selected { background: #fff; border-bottom: #fff 1px solid; position: relative; color:#444; }
.panes { border: 1px solid #e3e3e3; padding: 17px; line-height: 1.7em; }

/* ==========================================================================
   BUTTONS & FORMS
   ========================================================================== */

.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  margin-bottom: 20px;
  margin-right: 5px;
  line-height: normal;
  padding: 10px 10px 8px;
  border:none;
  width: auto !important;
  text-rendering:optimizelegibility;
  -webkit-font-smoothing: antialiased;
  -moz-box-shadow: 0 1px 1px rgba(0,0,0,.34); /* drop shadow */
  -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.34); /* drop shadow */
  box-shadow: 0 1px 1px rgba(0,0,0,.34); /* drop shadow */ }

  p .button {
    line-height: normal !important;
    margin-bottom:0;
  }

  .button.hero {
    border-radius: 10px;
    padding: 15px 25px;
    font-size:15px;
    text-shadow:none; }

button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
  color: #fff;
  text-shadow:0 0 1px rgba(0,0,0,1);}

button:active,
input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active {
  border: 1px solid #666;
  background: #ccc; /* Old browsers */
  background: #ccc -moz-linear-gradient(top, rgba(255,255,255,.35) 0%, rgba(10,10,10,.4) 100%); /* FF3.6+ */
  background: #ccc -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.35)), color-stop(100%,rgba(10,10,10,.4))); /* Chrome,Safari4+ */
  background: #ccc -webkit-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Chrome10+,Safari5.1+ */
  background: #ccc -o-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Opera11.10+ */
  background: #ccc -ms-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* IE10+ */
  background: #ccc linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* W3C */ }

.button.full-width,
button.full-width,
input[type="submit"].full-width,
input[type="reset"].full-width,
input[type="button"].full-width {
  width: 100%;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center; }

/* Fix for odd Mozilla border & padding issues */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}


/* #Forms
================================================== */

form {
  margin-bottom: 20px; }
fieldset {
  margin-bottom: 20px; }
input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
  border: 1px solid #ccc;
  padding: 8px 4px;
  outline: none;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  margin: 0;
  color: #888;
  width: 100%;
  max-width: 100%;
  display: block;
  margin-bottom: 20px;
  background: #fff;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box; }

select {
  padding: 0; }
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
  border: 1px solid #aaa;
  color: #888;
  -moz-box-shadow: 0 0 3px rgba(0,0,0,.2);
  -webkit-box-shadow: 0 0 3px rgba(0,0,0,.2);
  box-shadow:  0 0 3px rgba(0,0,0,.2); }
textarea {
  min-height: 80px; }
label,
legend {
  display: block;  }
label.alert {
  color:red;  }   
select {
  width: 220px; }
input[type="checkbox"] {
  display: inline; }
label span,
legend span {
  font-weight: normal;
  font-size: 13px;
  color: #444; }

#contactform input.alert {
  border:1px solid #cc0000 !important; }

/* contact form */
#contactform .errorbox { 
  display:none; 
  margin:0 0 12px 0; 
  padding:10px;
  font-weight:normal; 
  color:#bb252c;
  background:#fdebed;
  border:1px solid #fec5cb; }

#contactform .errorbox ul { 
  padding:0;
  list-style:none;
  margin:0; }
  
#contactform .errorbox ul li {
  padding:0;
  margin:0;
  font-size:11px;
  line-height:2.1em; }

/* ==========================================================================
   FOOTER
   ========================================================================== */

div.footer {
  padding:30px 0; }

div.footer p {
  font-size:11px;
  color:#999; }

div.footer div.credits {
  text-align:right; }

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 960px) {

    ul.meta { width: 100% !important; margin-bottom:20px !important; display: block !important;  }
    ul.meta li { width: 100% !important; display: block !important;  }
    div.post-content { width: 100%; display: block; padding-left:0 !important;  }

    body.home #slider .text {
      padding:5% 20px 20px;
    }

    body.home #slider .text h2 {
      font-size:42px;
    }

    body.page .text {
      padding:0% 20px 20px 40px;
    }

    .fourcols ul.products li {
        margin:0 40px 14px 0; 
    }

      .fourcols ul.products li:nth-child(3n) {
          margin-right:0; 
      }

    .threecols ul.products li {
        margin:0 50px 14px 0; 
    }

      .threecols ul.products li:nth-child(2n) {
          margin-right:0; }

      .threecols ul.products li:nth-child(3n) {
          margin-right:50px; }

}

@media only screen and (max-width: 767px) {

    /* header **************************************************/
    div.nav, div.panel { display: none; }
    .mobileNav { display: block;  }
    .mobileNav select { display: block !important;  }
    .select-container { display: block; }

    .one_half, .one_third, .two_thirds, .three_fourth, .one_fourth {
        width: 100% !important;
        margin:0;
        margin-right:0; 
    }

    body.home #slider .text {
      padding-top:13%;
      text-align: center;
    }

    body.home #slider .text h2 {
      font-size:42px;
    }

    body.page .text {
      padding:4% 20px 20px 40px;
      margin:0;
    }

     body.home #slider img, body.page .visual img {
      display:none;
    }

    a.btn_appstore_big {
      margin:30px auto;
      width: 320px;
      height: 101px;
      display: block;
      text-indent: -9999px;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
      -khtml-border-radius: 5px;
      border-radius: 5px;
      -moz-box-shadow: 0 1px 2px rgba(0,0,0,0.3);
      -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.3);
      box-shadow: 0 1px 2px rgba(0,0,0,0.3);
      text-align: center;
      background:transparent url("images/bg_btn_appstore.png") no-repeat 0 0; } 

    ul.products li {
        width:100%; 
    }

    ul.products div.zoom {
        left:160px;
    } 

    .fourcols ul.products li {
        margin:0 0 14px 0; 
    }

    .threecols ul.products li {
        margin:0 0 14px 0; 
    }

    ul.products li {
        width:100%;
        text-align: center; 
    }

}

@media only screen and (max-width: 480px) {

    a.btn_appstore_big {
      display:none; } 

    body.home #slider .text {
      padding-top:20%;
    }

   body.home #slider .text h2 {
      font-size:36px;
    }

   body.page .text h3 {
      font-size:24px;
    }

   body.page .text p {
      font-size:12px !important;
    }

    ul.products li {
        width:100%;
        text-align: center; 
    }

    ul.products div.zoom {
        left:95px;
    } 

}

/* 
 * print styles
 * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/ 
 */
@media print {
  * { background: transparent !important; color: #444 !important; text-shadow: none; }

  a, a:visited { color: #444 !important; text-decoration: underline; }

  a:after { content: " (" attr(href) ")"; } 

  abbr:after { content: " (" attr(title) ")"; }
  
  .ir a:after { content: ""; }  /* Don't show links for images */
  
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  
  img { page-break-inside: avoid; }

  @page { margin: 0.5cm; }

  p, h2, h3 { orphans: 3; widows: 3; }

  h2, h3{ page-break-after: avoid; }
}