body {
	font: 15px/20px Helvetica, Arial, sans-serif;
	background-color: #fefff5;
	color: #454840;
}

a {
	text-decoration: none;
	color: #454840;
}

h2 {
	font: 18px/22px Georgia, Times, serif;
	margin-bottom: 12px;
	color: #5c6a3d;
}

em {
	font-style: italic;
}

strong {
	font-weight: bold;
}

div.clear {
	clear: both;
	height: 0;
	overflow: hidden;
}

/* Layout */

div.header {
	background-color: white;
}

div.main {
	background: url("/images/bg_main.png") repeat-x top;
}

div.gradient {
	background: url("/images/bg_gradient.png") no-repeat top left;
	min-height: 529px;
}

/* Make it elastic */

div.wrapper {
	min-width: 976px;
	max-width: 1072px;
	margin: 0 auto;
	position: relative;
}

div.main div.wrapper {
	padding-top: 42px;
}

/* div.sidebar is the left-hand block within div.wrapper */

div.sidebar {
	width: 48%;
	float: left;
}

div.main div.sidebar img {
	float: right;
}

div.main div.sidebar img.lift {
	position: relative;
	top: -42px;
}

div.main div.sidebar img.lift.over {
	top: -100px;
}

/* div.content is the right-hand block within div.wrapper */

div.content {
	margin-left: 51%;
}

div.content.wide {
	margin: 0;
}

div.header div.content {
	padding-top: 140px;
}

div.main div.content p {
	margin: 0 0 13px 0;
}

div.main div.content a {
	color: #282A26;
	border-bottom: 1px solid #ddd;
}

div.main div.content a:hover {
	color: #d65e3a;
	border-bottom: 1px solid #dda797;
}

div.main div.content a:visited {
	color: #777C6E;
}

div.main div.content ul {
	margin: 13px 0;
	list-style: square;
}

div.main div.content ol {
	margin: 13px 0;
	list-style: decimal;
}

div.main div.content h3,
div.main div.content h4,
div.main div.content h5,
div.main div.content h6 {
	margin: 24px 0 13px;
	font-weight: bold;
}

div.main div.content h3 {
	margin-top: 30px;
	font-size: 20px;
	font-family: Georgia, serif;
	color: #A7B0A0;
	font-weight: normal;
}

div.main div.content h4 {
	font-size: 13px;
	margin-bottom: 8px;
	text-transform: uppercase;
	color: #A7B0A0;
}

div.main div.content blockquote {
	font-size: 13px;
	color: #777C6E;
	margin: 13px 20px;
}

img#logo {
	float: left;
	margin: 126px 0 0 6%;
}

div.main div.content p.copyright {
	clear: both;
	margin: 60px 0 20px;
	font-size: 11px;
	color: #BFC6BC;
}

/* Switch to french or english locale */
/* Menu */
ul#menu {
	width: 29%;
	padding-top: 129px;
	margin: 0 0 24px 71%;
	border-top: 9px solid #d65e3a;
	font-size: 16px;
}

ul#menu a {
	display: block;
	border-top: 1px solid #efe2de;
	line-height: 37px;
	padding-left: 14px;
	font-weight: bold;
	color: #d65e3a;
}

span#switch_locale a {
	position: absolute;
	top: 16px;
	right: 0;
	font-size: 10px;
	line-height: 14px;
	text-transform: uppercase;
	color: #BFC6BC;
	border-bottom: 1px solid #f0f0f0;
}

span#switch_locale a:hover {
	color: #71756E;
	border-bottom: 1px solid #BFC6BC;
}

ul#menu li.current a {
	color: white;
	background: #7ca344 url("/images/menu_bg.png") repeat-x top;
}

ul#menu a:hover {
	color: white;
	background: #d45838 url("/images/menu_bg.png") repeat-x 0 -70px;
}

ul#menu a:active {
	background: #9c160e url("/images/menu_bg.png") repeat-x 0 -140px;
}

/* Submenu */

ul#submenu {
	float: left;
	position: relative;
	top: 19px;
	font-size: 16px;
	background: url("/images/submenu_border_short.png") repeat-x bottom;
	margin-top: 16px;
	padding-right: 1px;
}

ul#submenu.icons {
	background: url("/images/submenu_border_tall.png") repeat-x bottom;
}

ul#submenu.icons li {
	width: 159px;
	overflow: hidden;
}

ul#submenu li {
	float: left;
	padding-bottom: 19px;
}

ul#submenu li.current {
	background: url("/images/submenu_triangle.png") no-repeat bottom center;
}

ul#submenu li.current a, ul#submenu.icons li.current a {
	color: inherit;
	background: white;
}

ul#submenu a {
	float: left;
	text-align: center;
	font-weight: bold;
	padding: 18px 22px;
	background: url("/images/submenu_bg_short.png") repeat-x;
	margin-left: 1px;
}

ul#submenu a:hover {
	color: #d65e3a;
	background: url("/images/submenu_bg_short.png") repeat-x 0 -80px;
}

ul#submenu a:active {
	color: #d65e3a;
	background: url("/images/submenu_bg_short.png") repeat-x 0 -160px;
}

ul#submenu.icons a:hover {
	background: url("/images/submenu_bg_tall.png") repeat-x 0 -160px;
}

ul#submenu.icons a:active {
	background: url("/images/submenu_bg_tall.png") repeat-x 0 -320px;
}

ul#submenu a img {
	margin: 0 0 8px;
}

ul#submenu.icons a {
	width: 159px;
	padding: 0 0 14px;
	background: url("/images/submenu_bg_tall.png") repeat-x;
}

ul#submenu a span {
	font-size: 11px;
	line-height: 16px;
	font-weight: normal;
	color: #a3a69d;
}

/* Content styles */

p.intro, h1 {
	font: 24px/30px Georgia, Times, serif;
	color: #759e3f;
	margin-bottom: 16px;
}

.date {
	font-size: 12px;
	font-weight: normal;
	color: #9ea396;
}

a.showall {
	font-size: 12px;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
}

a.showall:hover {
	color: #d65e3a;
	border-bottom: 1px solid #dda797;
}

a.minor {
	font-size: 11px;
	color: #A9B0A1;
	border-bottom: 1px solid #D1DECF;
}

a.minor:hover {
	color: #d65e3a;
	border-bottom: 1px solid #f4cbbe;
}

dl.pictures > dt, dl.pictures > dd {
	margin-bottom: 32px;
}

dl.pictures > dt {
	float: left;
	clear: both;
	width: 96px;
}

dl.pictures > dd {
	float: left;
}

div.main div.content dl.pictures > dd p {
	margin-top: 0;
}

dl.pictures > dt img {
	margin-right: 24px;
}

/* Home page */

body.home p.intro {
	font-size: 32px;
	line-height: 40px;
	margin-bottom: 48px;
}

body.home p.intro a {
	font: 12px/17px Helvetica, Arial, sans-serif;
}

div.main a.teaser {
	position: relative;
	top: -77px;
}

div.main a.teaser.generic {
	display: block;
	width: 470px;
	height: 438px;
	background-image: url("../images/home_generic_teaser_bg.png");
}

div.main a.teaser.generic span.text {
	display: block;
	position: absolute;
	top: 67px;
	left: 20px;
	width: 185px;
}

div.main a.teaser.generic span.text span {
	display: block;
}

div.main a.teaser.generic span.text span.title {
	color: white;
	font-weight: bold;
	font-size: 28px;
	line-height: 38px;
	margin-bottom: 2px;
	text-shadow: #161714 0 0 8px;
}

div.main a.teaser.generic span.text span.description {
	font-weight: bold;
	font-size: 13px;
	color: white;
}

div.main a.teaser.generic img {
	position: absolute;
	top: 73px;
	left: 242px;
}

body.home div.content a, body.home div.content a:hover {
	border: 0;
}

/* Blog page */

body.blog div.header div.content {
	padding-top: 250px;
}

body.blog div.main div.sidebar {
	width: 31%;
	margin-left: 17%;
}

ul.posts {
	margin: 0 0 10px -14px;
	font-size: 14px;
	line-height: 19px;
	clear: both;
}

ul.posts a {
	display: block;
	font-weight: bold;
	padding: 8px 14px;
}

ul.posts a:hover {
	background: #d45838 url("/images/posts_bg.png") repeat-x top;
	color: white;
}

ul.posts a:active {
	background: #9c160e url("/images/posts_bg.png") repeat-x 0 -200px;
	color: white;
}

ul.posts a:hover .date, ul.posts a:active .date {
	color: #f0b9a8;
}

body.blog div.sidebar h2 {
	float: left;
}

a.rss {
	float: left;
	padding-left: 17px;
	margin:  4px 0 0 10px;
	color: #d65e3a;
	background: url("../images/rss.png") no-repeat 0 3px;
	text-indent: -9999px;
}

div.header div.content div.title {
	clear: right;
}

div.content img {
	max-width: 100%;
}

body.blog div.main div.content img {
	margin-bottom: 12px;
}

/* Products page */

body.products div.header div.content {
	padding-top: 160px;
}

div.left {
	float: left;
	width: 29%;
}

div.right {
	margin-left: 35%;
}

div.main div.content div.left ul.menu {
	margin: 0;
	font-size: 13px;
	border-top: 1px solid #d5dfda;
	list-style: none;
}

div.left ul.menu a {
	display: block;
	border-bottom: 1px solid #d5dfda;
	line-height: 31px;
	padding-left: 14px;
	font-weight: bold;
	color: #464840;
}

div.left ul.menu li.current a {
	color: white;
	background: #272924 url("/images/products_menu_bg.png") repeat-x top;
}

div.left ul.menu a:hover {
	color: white;
	background: #d45838 url("/images/products_menu_bg.png") repeat-x 0 -80px;
	border-bottom: 1px solid #d5dfda;
}

div.left ul.menu a:active {
	background: #9c160e url("/images/products_menu_bg.png") repeat-x 0 -160px;
}

div.main div.content ul.screenshots,
div.main div.content div.right ul.screenshots {
	list-style: none;
	margin: 0 0 0 -18px;
}

div.main div.content ul.screenshots a,
div.main div.content div.right ul.screenshots a {
	border: 6px solid white;
	display: block;
	float: left;
	margin: 0 0 10px 10px;
}

div.main div.content div.right ul.screenshots a {
	margin: 0 0 12px 18px;
}

div.main div.content ul.screenshots a:hover,
div.main div.content div.right ul.screenshots a:hover {
	border-color: #c4cbc2
}

div.main div.content ul.screenshots a.current,
div.main div.content div.right ul.screenshots a.current {
	border-color: #d45838;
}

ul.screenshots a img {
	display: block;
	border: 0;
}

div.main div.content div.right ul {
	margin: 6px 0 13px 17px;
}

div.main div.content div.right#features ul {
	font-size: 90%;
}

div.main div.content div.right h4 {
	margin: 8px 0 0;
}

div.right#reviews ul {
	list-style: none;
	margin: 0;
}

div.right#reviews blockquote {
	color: inherit;
	font-size: inherit;
	margin: 0;
}

div.right#reviews blockquote:before {
	content: '“';
}

div.right#reviews blockquote:after {
	content: '”';
}

div.right#reviews cite {
	display: block;
	font-size: 85%;
	margin: 4px 0 20px;
}

div.right#reviews cite a {
	color: #777C6E;
}

div.right#reviews cite a:hover {
	color: #d65e3a;
}

div.right#reviews cite span.rating {
	float: left;
	font-weight: bold;
	margin-right: 8px;
}

div.right#reviews cite span.rating span {
	display: block;
	background-image: url("../images/star.png");
	height: 11px;
	text-indent: -9999px;
	width: 70px;
	margin-top: 3px;
}

/* Default width is 5 stars */
div.right#reviews cite span.rating span.fourHalf { width: 62px; }
div.right#reviews cite span.rating span.four {	width: 56px; }
div.right#reviews cite span.rating span.threeHalf { width: 48px; }
div.right#reviews cite span.rating span.three { width: 42px; }

div.iphone {
	position: relative;
	top: -70px;
	float: right;
	width: 282px;
	height: 479px;
	padding: 96px 0 0 28px;
	background: url("/images/iphone.png") no-repeat;
}

div.main div.sidebar div.iphone img {
	float: none;
}

div.main div.content a.appStoreLink {
	font-weight: bold;
	margin-top: 32px;
	line-height: 18px;
	padding: 8px 8px 8px 0;
	color: #464840;
	display: block;
	background: #c0c5b5 url("/images/products_appstore_bg.png") repeat-x top;
}

div.main div.content a.appStoreLink:hover {
	color: white;
	background: #1a1717 url("/images/products_appstore_bg.png") repeat-x 0 -120px;
}

a.appStoreLink img {
	float: left;
	position: relative;
	top: -20px;
	margin: 0 8px 0 10px;
}

/* About */

div.people {
	width: 48%;
	float: right;
}

div.people a {
	color: #626C5F;
	border-bottom: 1px solid #ddd;
	font-size: 85%;
}

div.people a:hover {
	color: #d65e3a;
	border-bottom: 1px solid #dda797;
}

dl.details {
	float: left;
}

dl.details dt {
	float: left;
	clear: both;
	width: 6em;
	font-size: 10px;
	text-transform: uppercase;
	margin-top: 1px;
	color: #9ea396;
}

dl.details dd {
	padding-left: 5em;
	font-size: 13px;
}

div.main div.content dl.details dd a {
	color: #626C5F;
}

div.main div.content dl.details dd a:hover {
	color: #d65e3a;
}