/* HTML5 Boilerplate  */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/* LaPalma style C. Cortese 2013 */

/* background with full screen classes */
body { font-family: 'pragmatica-web', Arial, Sans-Serif; font-size: 13px; font-style: normal; font-weight:300; background-image: url( '../img/ui/null.gif' ); background-repeat: repeat; background-color: #fff}
#bgdiv { left: 0px; top: 0px; position:fixed; overflow:hidden; z-index: -9999 }
#bg { position:absolute; left:0; top:0}      
input {font-family: 'pragmatica-web', Arial, Sans-Serif; font-size: 11px; outline: none;}
textarea {font-family: 'pragmatica-web', Arial, Sans-Serif; font-size: 11px; outline: none;}
* {outline: none;}

/* page fadein */
.hdsc
{
	overflow-x: hidden;
}
#fade
{
    background-color:#fff;
    z-index: 99999;
	height: 100%;
	width: 100%;
	position: fixed;
    top:0;
    left:0;
}

/* links */
a, a:visited, a:hover, a:active, a:focus
{
	text-decoration: none;
	outline: none;
	border: none;
	cursor: pointer;
	color: #000;
}
a:hover
{
	text-decoration: underline;
}


/*links contenitore azzurro */

 #designerbio a,
 #designerbio a:visited,
 #designerbio a:hover,
 #designerbio a:active,
 #designerbio a:focus {
	text-decoration: none;
	font-weight: bold;
	outline: none;
	border: none;
	cursor: pointer;
	color: #fff;
	text-transform: uppercase;
}
#designerbio a:hover {
	text-decoration: underline;
}


/* menu */
#menucontainer
{
	position: fixed;
	left: 0px;
	top: 0px;
	right: 0px;
	width: auto;
	z-index: 10;
	height: 70px;
	background-image: url('../img/ui/op90.png');
	font-size:14px;
	font-style:normal;
	line-height:40px;
}
#logo
{
	position:absolute;
	left: 30px; 
	top: 10px;
	width: 250px;
	height: 50px;
	margin:0;
	padding:0;
	border: none 0;
	z-index:999;
}
#menu li, #menuex li, #menubt li
{
	display: inline;
	list-style-type: none;
	padding: 0 10px 0 10px;
}
.sep
{
	 width:10px;
}
/* standard table */
#poffset
{
	height: 100px
}
#foffset
{
	height: 50px
}
#toffset
{
	height: 100px
}
#tablecnt, #tablecntc
{
    margin-left: auto;
    margin-right: auto;
}

    #tablecnt span, #tablecntc span
    {
        vertical-align: bottom;
        font-size: 16px;
    }

    #tablecnt div, #tablecntc div
    {
        margin: 16px 8px 32px 8px;
		position:relative;
    }

/* designer page*/
#designerbio
{
	width: 250px;
	height: auto;
	position: fixed;
	left: 20px;
	top: 160px;
	padding: 15px;
	padding-top:30px;
	line-height: 18px;
	color: #fff;
	font-size:14px;
	cursor:move;
	z-index:10;
	background-image: url('../img/ui/op50g.png');
}
#proddes
{
	width: 250px;
	height: auto;
	position: fixed;
	right: 20px;
	top: 360px;
	padding: 15px;
	padding-top:30px;
	line-height: 18px;
	color: #fff;
	font-size:14px;
	cursor:move;
	z-index:10;
	background-color: #5d8350;
	opacity:0.8;
}
#designerbio p, #proddes p
{
	margin:0;
	padding:0;
	padding-top:6px;
}
#designername
{
	font-size:23px;
	text-transform:uppercase;
	padding-bottom:12px;
	display:block;
}
#prodname
{
	font-size:23px;
	text-transform:uppercase;
	padding-bottom:12px;
}
.prname
{
    position: absolute;
    bottom: 0px;
    left: 0;
    text-align: center;
    width: 100%;
    font-size: 36px;
    line-height: 40px;
    margin: 0;
	font-weight:200 !important;
	color:rgba(0, 0, 0, 0.80);
	font-family: 'Raleway', 'pragmatica-web' !important;
}
.ilgb
{
	height: 300px;
	width: 200px;
	overflow: hidden;
	position: relative;
}

	.ilgb img
	{
		position: absolute;
		top: 0;
		left: 0;
		height: 300px;
		width: 200px;
	}

#backlk
{
	position:fixed;
	top:80px;
	left:30px;
	font-weight:bold;
	z-index:20;
	width:50px;
	height:50px;
	cursor:pointer;
}

#bigimg
{
	display: none;
}

#bgdiv, #bfdiv
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	text-align: center;
	z-index: 90
}

#bfdiv
{
	z-index: 100
}

	#bgdiv img, #bfdiv img
	{
		height: 100%;
	}

#prev
{
	position: fixed;
    top: 43%;
    width: 84px;
    height: 84px !important;
	cursor: pointer;
	left: 20px;
	z-index: 900;
}

#next
{
	position: fixed;
    top: 43%;
    width: 84px;
    height: 84px !important;
	cursor: pointer;
	right: 20px;
	z-index: 900;
}
#gacls
{
	position: fixed;
    top: 20px;
    width: 60px;
    height: 60px !important;
	cursor: pointer;
	left: 20px;
	z-index: 900;
}

#ipad
{
	position:absolute;
	top:0;
	left:0;
	width:1px;
	height:1px;
	display:block
}
.lpclose
{
	position:absolute;
	right:14px;
	top:18px;
	font-size:18px;
	color:#fff !important;
	text-decoration:none;
	cursor:pointer;
}

.lpclose img
{
	width:31px;
	height:31px;
}

/* products list page */
#isocnt
{
	position: relative;
	top: 50px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

.isonm
{
	position: absolute;
	bottom: 10px;
	left: 0;
	text-align: center;
	width: 100%;
	font-size: 28px;
	line-height: 40px;
	margin: 0;
	background-image: url('../img/ui/op50.png');
	font-weight:200;
}

#filters, #lkmenu, #sfilters, #dfilter, #expand
{
	position: fixed;
	top: 90px;
	left: 260px;
	padding: 15px;
	padding-top:20px;
	line-height:24px;
	width: 250px;
	cursor:move;
	z-index:10;
	background-color:#00393a;
	font-size:14px;
	opacity:0.7;
}
#expand
{
	top: 60px;
	left:80px;
	height:50px;
	width:50px;
	display:none;
	cursor:pointer;
	background-color:transparent;
	opacity:1;
}

	#filters a, #lkmenu a, #sfilters a, #dfilter a
	{
		color: #fff;
		text-decoration: none;
	}

	#filters .msel, #lkmenu .msel, #sfilters .msel, #dfilter.msel
	{
		color: #fff;
		text-decoration: underline !important;
	}

.isotope-item
{
	z-index: 2;
}

.isotope-hidden.isotope-item
{
	pointer-events: none;
	z-index: 1;
}

.isoel
{
	position:relative;
}


/**** Isotope CSS3 transitions ****/

.isotope,
.isotope .isotope-item
{
	-webkit-transition-duration: 0.8s;
	-moz-transition-duration: 0.8s;
	-ms-transition-duration: 0.8s;
	-o-transition-duration: 0.8s;
	transition-duration: 0.8s;
}

.isotope
{
	-webkit-transition-property: height, width;
	-moz-transition-property: height, width;
	-ms-transition-property: height, width;
	-o-transition-property: height, width;
	transition-property: height, width;
}

	.isotope .isotope-item
	{
		-webkit-transition-property: -webkit-transform, opacity;
		-moz-transition-property: -moz-transform, opacity;
		-ms-transition-property: -ms-transform, opacity;
		-o-transition-property: -o-transform, opacity;
		transition-property: transform, opacity;
	}

		/**** disabling Isotope CSS3 transitions ****/

		.isotope.no-transition,
		.isotope.no-transition .isotope-item,
		.isotope .isotope-item.no-transition
		{
			-webkit-transition-duration: 0s;
			-moz-transition-duration: 0s;
			-ms-transition-duration: 0s;
			-o-transition-duration: 0s;
			transition-duration: 0s;
		}

/* products menu panel */
#sm_prod
{	
	position: absolute;
 	top: 77px;
 	left: 0;
 	right:0;
 	margin:0 auto 0 auto;
 	width:955px;
 	display:none;
 	z-index:10000;
 	*left:50%;
 	*margin-left:-488px;
}
#sm_prod h4
{
	font-family: sans-serif;
	font-style: normal;
	font-weight: 500;
	text-transform:uppercase;
	font-size:11px;
}
#sm_prod div
{	
	float:left;
	width:138px;
	height:280px;
	padding:10px;
	background-color: #fff;
 	filter: alpha(opacity=95);
 	opacity: 0.95;
 	margin-right:1px;
}
#sm_prod a
{	
	margin-bottom:8px;
	display:block;
	line-height:12px;
	background-color:Transparent;
}
#sm_prod h4
{
	color: #5b5b5b;
	font-size: 11.5px;
	padding: 8px 0 5px 0;
	margin: 0;
}
.desc hr
{
	border-color: #000000;
	border-width: 1px;
	margin-left: 100px;
	width: 500px;
	padding: 0;
	text-align: left;
}

.mnbox
{
	width:auto;
	height: 39px;
	color: #5b5b5b;
	line-height:40px;
	overflow:hidden;
	white-space:nowrap;
}
.mnbox a
{
	color: #000000;
	padding-left: 14px;
	text-decoration: none;
	outline: none;
	border: none;
	cursor:pointer;
	font-size:11.5px;
}
#footercontainer
{
	position:absolute;
	bottom:30px;
	height: 35px;
	font-size:11px;
	color: #333333;
	width:100%;	
	line-height:35px;
	left:0;
	right:0;
	font-style: normal;
	display:none;
}
#footercontainerfolw
{
	height: 30px;
	font-size:11px;
	color: #222;
	width:100%;	
	line-height:30px;
	left:0;
	right:0;
	font-style: normal;
}
#footercontainer a
{
	color: #333333;
	/*text-transform:uppercase;*/
}
#footercontainerfolw a
{
	color: #222;
	text-transform:uppercase;
}
#menuadmin
{
	position:absolute;
	left: 0px; 
	top: 0px;
	width:960px;
	text-align:left;
	z-index: 2;
	background-color:#b5b5b5;
	height:24px;
	line-height:24px;
}
#menucontainer .sel, #menuadmin .sel
{
	font-weight: bold;
}
#adminbox
{
	position:absolute;
	left: 0px;
	top: 20px;
	width: 960px;
	 background-color: #fff;
	color: #111;	
	line-height: 20px;
	padding: 0px;
	height:660px;
	overflow:visible;
}
#tadmin
{
	position:absolute;
	top:44px;
	left:250px;
	color: #df1f1c;
	text-transform:uppercase;
	z-index:100;
	font-family: sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size:11px;
}
.tadmin
{
	color: #df1f1c;
	text-transform:uppercase;
	z-index:100;
	font-family: sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size:11px;
}
#adminbox h3
{
	padding: 0;
	margin: 0;
	font-size:20px;
	padding-bottom:18px;
	text-transform:uppercase;
}
.circle, .circlex
{
	margin: auto;
	height: 355px;
	width: 355px;
	position: absolute;
	top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.95;
    filter: alpha(opacity=95);
}
.circle img
{
	position: absolute;
    top: 0;
    left: 0;
    height:355px;
    width:355px;
}
#lightbox
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    background-image: url('../img/ui/op90b.png' );
    z-index: 500;
    display: none
}
.ctit
{
	position: absolute;
	top: 50px;
	height:110px;
	left: 24px;
	text-align:center;
	width:300px;
	color:#ffffff;
	font-family: sans-serif;
	font-style: normal;
	font-weight: 800;
	font-size:38px;
	line-height:40px;
}
.bctxt
{
	position:absolute;
	bottom: 0;
	left:0;
	right:0;
}
.cdot
{
	position: absolute;
	top: 180px;
	left: 41px;
}
.cdot img
{
	 width: 272px;
	 height: auto;
}
#scrdwn
{
	font-family: sans-serif;
	font-style: normal;
	font-weight: 500;
    font-size:11px;
}
.button
{
	font-family: sans-serif;
	font-style: normal;
	font-weight: 500;
    font-size:11px;
	display:block;
	background-color: #000;
	height:20px;
	width:auto;
	padding-left:30px;
	padding-right:30px;
	line-height:20px;
	color: #fff !important;
	text-transform:uppercase; 	
	border-radius: 5px 5px 5px 5px;
	-moz-border-radius: 5px 5px 5px 5px;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}
#pager
{
	position: absolute;
	top: 28px;
	right: 0px;
	font-size: 44px;
	font-family: Arial, sans-serif;
}
#pager a
{
	color: #aaa;
	background-color:Transparent;
}
#pager a:hover
{
	color: #b5b5b5;
}
.pagerp, .pagern
{
	border-style: none;
	border-width: 0px;
	position: absolute;
	top: 0;
	left: 0;
	text-decoration: none;
}
.pagern
{
	left: 30px !important;
}
.ortit
{
	color:#55443b;
	text-transform:uppercase;
	font-weight:bold;
}
.smsel
{
	color:#000 !important;
	font-weight:bold;
}
.msel, .msel a:hover, .smsel a:hover
{
	font-weight:bold;
	text-decoration: underline !important;
}
.smsel, .smsel a:hover
{
	color:#000 !important;
	font-weight:bold;
}
#pdisclaimer
{
	display: none;
	position: absolute;
	right: 0;
	top: 500px;
	background-image: url('../img/ui/op90d.png' );
	width: 390px;
	height: auto;
	padding: 20px 60px 20px 30px;
	font-size: 12px;
	border-radius: 14px 0px 0px 14px;
	-moz-border-radius: 14px 0px 0px 14px;
	-webkit-border-top-left-radius: 14px;
	-webkit-border-bottom-left-radius: 14px;
	z-index: 3;
	line-height: 14px;
}
.imgpan
{
	position: absolute; 
	right: 20px; 
	top: 30px; 
	width: 160px;
}
.imgpan img
{
	 height:60px;
	 padding-bottom:10px;
}

/* infobox */
#infobox
{
	position: absolute;
	right:30px;
	top:75px;
	bottom:35px;
	width:345px;
	background-color:#ffffff;
	filter: alpha(opacity=80);
	opacity: 0.8;
	padding: 30px 0 30px 0;
	overflow:hidden;
}
.title
{
	font-family: sans-serif;
	font-style: normal;
	font-weight: 800;
	font-size:18px;
	text-align:center;
	margin: 5px 0 3px 0;
}
.nwsdate
{
	font-family: "Droid Serif",serif;
	font-style:italic;
	font-weight: 500;
	font-size:11px;
	text-align:left;
	margin: 0px 0 3px 0;
}


/* image slider */
#slidecont
{
	position:relative;
	top:0;
	left:0;
	background-color: #5b5b5b;
}
#caption, #caption_ex
{
	font-family: "Droid Serif",serif;
	font-style:italic;
	font-weight: 500;
	font-size:12px;
	position: absolute;
	left: 50px;
	bottom: 50px;
	line-height: 14px;
	height: auto;
	width: auto;
	display: none;
}
#splash
{
	position: absolute;
	bottom: 0;
    right: 40px;
 	filter: alpha(opacity=70);
 	opacity: 0.7;
}
#galnav
{
	 display:none;
}
#prevslide
{
	top: 50%;
	position: absolute;
	left: 52px;
}
#nextslide
{
	top: 50%;
	position: absolute;
	right: 52px;
	z-index:100;
}

/* about */
#citcont
{
	padding: 0;
	width: auto;
	height: auto;
	background-color: #5b5b5b;
	left:0;
	right:0;
	overflow:hidden;
}
.cit
{
	padding: 25px 100px 20px 100px;
	width: auto;
	height: 120px;
	line-height: 28px;
	color: #fff;
	font-size: 20px;
	font-family: 'Glegoo' , Tahoma, serif;
	left:0;
	right:0;
	overflow:hidden;
}
.cit a
{
	color: #fff;
}
.text 
{
	 height:auto;
	 font-size:16px;
	 line-height:18px;
	 padding-top:10px;
	 padding-bottom:35px;
	 left:0;
	 right:0;
	 width:1000px;
	 margin:auto;
	overflow:hidden;
}
.text p
{
	padding: 0 0 0 300px;
	margin: 0;
	width:524px;
}
.text img
{
	padding: 35px 0 35px 0;
}
.text h3
{
	padding: 20px 100px 10px 100px;
	margin: 0;
	width: 800px;
	line-height: 28px;
	font-size: 20px;
	font-family: 'Glegoo' , Tahoma, serif;
	font-weight:normal;
	color: #5b5b5b;
	font-weight:bold;
}
.text h4
{
	padding: 20px 0 10px 300px;
	margin: 0;
}

/* product */
#titcont
{
	padding: 0;
	width: auto;
	height: auto;
	background-color: #5b5b5b;
	left:0;
	right:0;
	overflow:hidden;
}
.tit
{
	padding: 35px 100px 35px 100px;
	width: auto;
	height: 72px;
	line-height: 36px;
	color: #fff;
	font-size: 32px;
	font-weight:bold;
	left:0;
	right:0;
	overflow:hidden;
}
.desc 
{
	 height:auto;
	 font-size:16px;
	 line-height:18px;
	 padding-top:40px;
	 padding-bottom:50px;
	 left:0;
	 right:0;
	 width:1000px;
	 margin:auto;
	 position:relative;
}
.desc p
{
	padding: 0 0 0 100px;
	margin: 0;
	width:500px;
}
.desc h3
{
	padding: 20px 100px 10px 100px;
	margin: 0;
	width: 800px;
	line-height: 28px;
	font-size: 20px;
	font-family: 'Glegoo' , Tahoma, serif;
	font-weight:normal;
	color: #5b5b5b;
	font-weight:bold;
}
.desc h4
{
	padding: 20px 0 10px 100px;
	margin: 0;
}
.desc h5
{
	padding: 0px 0 10px 100px;
	margin: 0;
	font-size: 16px;
}

#prpanel
{
	padding: 10px;
	border-width: 7px 0px 7px 0px;
	border-style: solid;
	border-color: #5b5b5b;
	position: absolute;
	right: 100px;
	top: 40px;
	font-size: 13px;
	line-height: 32px;
	width: 200px;
}
#prpanel a
{
	white-space:nowrap;
	background-color:Transparent;
}
#prpanel img
{
	 padding-right:14px;
}
#top img
{
	 padding-left:12px;
}

/* map */
#map_canvas
{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	overflow: hidden;
}
#map_canvas_box
{
	width: 755px;
	height: 488px;
	position: absolute;
	left: 35px;
	bottom: 80px;
	overflow: hidden;
	background-color: #000;
	visibility:hidden;
}
#map
{
	width: 100%;
	height: 100%;
}
#map_box
{
	width: 735px;
	height: 438px;
	position: absolute;
	left: 10px;
	top: 25px;
}
#cmap
{
	color: #fff;
	position: absolute;
	right: 15px;
	top: 5px;
	font-size: 10px;
}

.loginerr
{
	color: Yellow !important;
	font-size: 11px;
	font-weight: bold;
}

#companydata 
{
    position: absolute;
    width: 300px;
    height:280px;
    background-color: #00393a;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.7;
    color: #fff;
    padding: 20px;
    display: none;
}

.sub-menu {
    width: 40px;
    padding: 2px;
    position: absolute;
    top: 30px;
    right: 6px;
    line-height:24px;
    z-index: 100;
    opacity: 0;
    transition: opacity linear 0.15s;
    box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
    background-color:#fff;
}

li:hover .sub-menu {
    z-index: 1;
    opacity: 1;
}

.sub-menu li {
    /*display: block;*/
}

  .sub-menu li a {
    /*display: block;*/
}

      .sub-menu li a:hover, .sub-menu .current-item a {
        background: #3e3436;
    }

.arrow {
    font-size: 8px;
    line-height: 0%;
}

/* end LaPalma style */

@media only screen and (min-width: 35em) {
  

}

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } 
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
