
body {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

.wrapper {
	width: 900px; /* site width */ /* original: 800px, then: 980px; */
	margin: 0 auto;
}

.centered {
	text-align: center;
}

.content.padded {
	/*
	width: -24px;
	padding: 12px;
	*/
	width: -24px;
	padding-left: 12px;
	padding-right: 12px;
}




/****************
 * Column layout
 ****************/

.two-one, .seven-three, .one-one, .one-two > * {
	border-width: 0; margin: 0; padding: 0;
}
.two-one > *, .seven-three > *, .one-one > *, .one-two > * {
	display: inline-block;
	vertical-align:top;
	margin:0;
}

/*
 * IE does not support display=inline-block for elements which default to block...
 * if we use spans instead of divs, it works
 * but then when we put block elements inside the spans, we're not XHTML 1.0 valid anymore
 * the following hack fixes the problem (cf hasLayout)
 */
.ie .two-one > *, .ie .seven-three > *, .ie .one-one > *, .ie .one-two > * {
	display: inline;
	zoom: 1;
}

.two-one > *:first-child, .one-two > *:last-child {
	width: 66%;
}
.two-one > *:last-child, .one-two > *:first-child {
	width: 33%;
}

.seven-three > *:first-child {
	width: 70%;
}
.seven-three > *:last-child {
	width: 29%;
}

.one-one > *:first-child {
	width: 49%;
}
.one-one > *:last-child {
	width: 49%;
}


.one-one :first-child .content.padded {
	width: -12px;
	padding-left: 0;
	padding-right: 12px;
}
.one-one :last-child .content.padded {
	width: -12px;
	padding-left: 12px;
	padding-right: 0;
}
.top, .top * {
	vertical-align: top;
}
.middle, .middle * {
	vertical-align: middle;
}
.bottom, .bottom * {
	vertical-align: bottom;
}

.center, .center * {
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}






/*
#logo {
	padding:0;
	margin: 15px auto 0px auto;
	vertical-align:bottom;
}
#logo > span > span {
	display: inline-block;
	clear:none;
}
#logo * {
	margin: 0;
	padding: 0;
}
*/
#logo {
	margin: 8px auto 8px auto;
}
/*
<!-- Safari: size in 'em' make image size increase on zoom -->
<!-- IE: width and height needed due to deformations caused by iepngfix -->
*/
#logo img#smoovee-logo { width:8.66em; height:6.5em; vertical-align:middle;  margin-right:3px;     margin-top:0; padding-top:0; }
#logo #smoovee-logo-texts { vertical-align:middle; display:inline-block; padding-top:2.2em; padding-left: 4px;   margin-top:0; padding-top:0; }
#logo #smoovee-logo-title { font-weight:bold; font-size:1.9em; line-height:1.1em;   margin-top:0; padding-top:0; text-transform:uppercase; }
#logo #smoovee-logo-subtitle { font-size:1.2em;   margin-top:0; padding-top:0; }





#navlist {
	margin: 5px 0;
	padding:0;
	vertical-align:middle;
	clear: both;
}
#navlist ul {
	margin: 0 auto;
	padding: 0;
}
#navlist li {
	display: inline;
	list-style-type: none;
	padding: 0 30px 0 10px;
	margin: 0;
}


hr {
	clear: both;
}






#navsub {
	padding: 20px 0 0 0;
	width:100%;
	margin: 0 2px;
}

#navsub > div, #navsub > span {
	
	display:inline-block;
	padding:0; margin: 0;
	vertical-align:text-bottom;
	width:49%;
}
.ie #navsub > div, .ie #navsub > span {
	display: inline;
	zoom: 1;
}


#navsub ul {
	
	display:inline-block;
	padding:0; margin: 0;
	vertical-align:text-bottom;
	width:100%;
}


#navsub li {
	display: inline;
	list-style-type: none;
	margin: 0;
	vertical-align: bottom;
}

#navsub > :first-child {
	text-align:left;
}
#navsub > :last-child {
	text-align:right;
}

#navsub > :first-child li {
	padding: 0 20px 0 0px;
}
#navsub > :last-child li {
	padding: 0 0px 0 20px;
}

#navsub img {
/* 	margin-bottom: 1px; */
	padding-right:0;
	margin-right:0;
}





#partners {
	/*padding: 220px inherit 220px inherit;*/
	/*padding-top:20px; padding-bottom: 20px;*/
	text-align:right;
}
#partners img {
	vertical-align:middle;
}
#partners img#idiap {
	height: 40px;
}
#partners img#cinetis {
	height: 80px;
}


#footer {
	padding:0;
	margin-bottom: 40px;
}





.ie #features_presentation > div > div > div {
	display: inline;
	zoom: 1;
}


#features_presentation {
/* 	margin-top: 40px; */
}

#features_presentation > div {
/* 	vertical-align:top; */
/* 	vertical-align:bottom; */
	display: table;
	margin-top: 32px;
}

#features_presentation > div > div {
	display: table-row;
}
#features_presentation > div > div > div {
	display: table-cell;
}
#features_presentation > div > div > div > div {
	padding: 0 10px;
}

#features_presentation > div > div:last-child, #features_presentation > div > div:last-child > div {
	vertical-align: middle;
}


#features_presentation div.one, #features_presentation div.two {
	display: table-cell;
}
#features_presentation div.one {
	width: 33%;
}
#features_presentation div.two {
	width: 66%;
}
#features_presentation img {
/* 	vertical-align: bottom; */
}



.news > .header {
	display:table;
	width:100%;
}
.news > .header > h2 {
	display:table-cell;
	width:75%;
}
.news > .header > div {
	display:table-cell;
	width:24%;
	text-align:right;
}

.news > .body {
	clear:both;
}
.news > .body > hr:last-child {
	clear:both;
	margin-bottom:12pt;
	margin-top:4pt;
}

/*
.debug {
	border: solid red 1px;
}
*/
.rss.list  h2, .files  h2 { /* special case: because .news>h2 is also table-cell (due to date), which removes top margin */
	display: table-cell;
}
.ie .rss.list h2, .ie .files h2 {
	display: inline;
	zoom:1;
}
.list > ul {
	list-style-type: none;
	list-style-position:outside;
	margin-left: 0;
	padding-left: 4px;
	marker-offset: 0;
}
.list > ul > li {
	display:block;
	vertical-align:middle;
}
.list > ul > li img {
	display:inline-block;
	vertical-align:text-bottom;
}
.list > ul > li p {
	margin-top:2pt;
	margin-bottom:8pt;
}
.list.rss > ul > li ul {
	list-style-type:none;
	padding-left: 15px;
	marker-offset: 0;
}
.list.toc > ul > li ol, .list.toc > ul > li ul {
	padding-left: 15px;
	margin-left: 0;
	marker-offset: 0;
}






#testimonials_list > div > div { /* first-of-type */
	width: 79%;
}
#testimonials_list > div > div:last-child {
	width: 20%;
	text-align:center;
	vertical-align:top;
}
#testimonials_list > div > div {
	display: inline-block;
}
.ie #testimonials_list > div > div {
	display: inline;
	zoom: 1;
}
#testimonials_list img {
	width: 144px;
}






/* IE */
.ie .news > .header > h2, .ie .news > .header > div {
	display: inline;
	zoom: 1;
}


#windows_notification_inputs {
	 display:table;
	 margin-top:0px;
}
#windows_notification_inputs > div {
	display:table-row;
}
#windows_notification_inputs > div > div {
	display:table-cell;
/* 	display: inline-block; */
}
#windows_notification_inputs > div > div:first-child {
/* 	width: 60px; */
}
#windows_notification_inputs > div > div:last-child {
/* 	width: 60px; */
	text-align:right;
}
.ie #windows_notification_inputs, .ie #windows_notification_inputs div {
	display: block;
}
.ie #windows_notification_inputs > div > div {
	display: inline;
	zoom: 1;
/* 	border: 2px dashed red; */
}
#windows_notification_inputs input {
	height: 100%;
	font-size: 0.75em;
}

.ie #windows_notification_text {
	line-height:1.15em;
}


a[rel="lightbox"] {
	display:block;
}

a.social {
/* 	float:right; */
	margin: 3px;
}