/*
******************************
*****  MOBILE FIRST CSS  *****
******************************
*/
	html {
		height: 100%;
	}
	
	body:after, span#MQ {
		font-family: 'mobile'; 
    	content: 'mobile';
    	display: none;
	}

	body {
		width: 100%;
		position: relative;
		margin: 0px;
		padding: 0px;
		-webkit-text-size-adjust:100%;
		font-family: 'FrutigerLTW01-55Roman';
		font-size: 16px;
		line-height: 21px;
		-webkit-font-smoothing: antialiased;
		text-rendering: optimizeLegibility;
                background: #fff;
		color: #000;
	}

	strong {
		font-family: 'Frutiger LT W01 65 Bold';
	}
	
	span {
		display: inline;
	}

	.mobile-only {
    	display: inherit !important;
	}
	.small-tablet-only {
    	display: none !important;
	}
	.large-tablet-only {
    	display: none !important;
	}
	.full-only {
    	display: none !important;
	}
	
	.hide-mobile {
    	display: none !important;
	}
	
	.wf-loading {
		visibility: hidden;
	}

/*
Wrapper elements
------------------
*/

	#viewportWrapper {
		position: relative;
  		overflow: hidden;
		width: 100%;
	}
	#siteWrapper {
  		position: relative;
		width: 100%;
		left: 0;
		z-index: 2;
		background-color: #fff;
		color: #505150;
	}
	#siteWrapper #mobileNavigationMask {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 100%;
		z-index: 9999;
		cursor: pointer;
	}
	#sideMenuWrapper {
		display: block;
		width: 100%;
		margin: 0;
	}
	body.mobileNav #sideMenuWrapper {
    	min-height: 100% !important;
    	width: 80%;
		position: absolute;
		top: 0px;
    	left: -80%;
	}
	.subBrand body.mobileNav #sideMenuWrapper {
		top: -30px;
	}
	
	body.mobileNav.mobileMenuActive {
		height: 100%;
		overflow: hidden;
	}
	body.mobileNav.mobileMenuActive #viewportWrapper {
		height: 100%;
		overflow: hidden;
	}
	body.mobileNav.mobileMenuActive #siteWrapper {
		left: 80%;
	}
	body.mobileNav.mobileMenuActive #sideMenuWrapper {
		overflow: auto;
		-webkit-overflow-scrolling: touch;
    	background: #333;
		color: #fff;
		background-image: url("/assets/images/common/mobile/menu-side-shadow-tile.png");
		background-position: right top;
		background-repeat: repeat-y;
	}
	
	/* 3D transform support */
	
	body.mobileNav.css3d #sideMenuWrapper  {
		left: 0;
		-webkit-transform: translate3d(-100%, 0, 0);
		-moz-transform: translate3d(-100%, 0, 0);
		-ms-transform: translate3d(-100%, 0, 0);
		-o-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
		backface-visibility: hidden;
  	}
	.body.mobileNav.css3d #sideMenuWrapper #menuArea {
		-webkit-transform: 300ms ease;
		-webkit-transition-delay: ease, 0s;
		-moz-transform: 300ms ease;
		-o-transform: 300ms ease;
		transform: 300ms ease;
		-webkit-transform: translate3d(80%, 0, 0);
		-moz-transform: translate3d(80%, 0, 0);
		-ms-transform: translate3d(80%, 0, 0);
		-o-transform: translate3d(80%, 0, 0);
		transform: translate3d(80%, 0, 0);
		-webkit-transform-origin: 50% 0%;
		-moz-transform-origin: 50% 0%;
		-ms-transform-origin: 50% 0%;
		-o-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
  	}
  	body.mobileNav.css3d.mobileMenuActive #sideMenuWrapper #menuArea {
		filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
  	}
	
	body.mobileNav.css3d #siteWrapper {
    	left: 0 !important;
		-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		-webkit-transition: -webkit-transform 300ms ease;
		-moz-transition: -moz-transform 300ms ease;
		-o-transition: -o-transform 300ms ease;
		transition: transform 300ms ease;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
		backface-visibility: hidden;
	}
	body.mobileNav.css3d.mobileMenuActive #siteWrapper {
		-webkit-transform: translate3d(80%, 0, 0);
		-moz-transform: translate3d(80%, 0, 0);
		-ms-transform: translate3d(80%, 0, 0);
		-o-transform: translate3d(80%, 0, 0);
		transform: translate3d(80%, 0, 0);
	}
	
	
/*
Misc elements
------------------
*/
	
	.clearBoth {
		display: block;
		clear: both;
		height: 0px;
		overflow: hidden;
		visibility: hidden;
	}
	
	.topMargin {
		margin-top: 15px!important;
	}
	.noTopMargin {
		margin-top: 0!important;
	}
	
	.noBottomMargin {
		margin-bottom: 0!important;
	}
	
	.noMargins {
		display: block!important;
		margin: 0!important;
	}
	
	hr {
		display: none;
	}
	
	p {
		margin-bottom: 15px;
	}
	
	.smallText {
		font-size: 11px;
		line-height: 14px;
	}
	
	.largeText {
		font-size: 20px;
		line-height: 24px;
	}
	
	sub, sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
	}

	sup {
		top: -0.5em;
	}

	sub {
		bottom: -0.25em;
	}
	
	img {
		max-width: 100%;
		border: none;
	}
	
	.picBorder {
		vertical-align:bottom;
		border: 2px solid #686868;
		box-sizing: border-box;
	}
	a .picBorder {
		border: 2px solid #686868;
		text-decoration: none;
	}
	a:hover .picBorder {
		border: 2px solid #fff;
		text-decoration: none;
	}
	
	.floatRight {
		float: right;
		margin-left: 10px;
	}
	
	.picCaption {
		margin-top: 4px;
		font-style: italic;
	}
	
	#contentWrapper ul {
		display: block;
		margin: 0px 0px 15px 0px;
		padding: 0px 0px 0px 0px;
		list-style-type: none;
		list-style-position: outside;
		position: relative;
		overflow: hidden;
	}
	#contentWrapper ul li {
		margin: 0px 0px 4px 0px;
		padding: 0px 0px 0px 25px;
		background-image: url("/assets/images/common/list-bullet.png");
		background-position: 5px 7px;
		background-repeat: no-repeat;
		position: relative;		
	}
	body.hires #contentWrapper ul li {
		background-image: url("/assets/images/common/list-bullet-2x.png");
		background-size: 7px 7px;
	}
	
	#contentWrapper dl {
		display: block;
		margin: 0px 0px 15px 0px;
		padding: 0px 0px 0px 0px;
	}
	#contentWrapper dl dt {
		display: block;
		margin: 10px 0px 10px 0px;
		padding: 0px 0px 0px 0px;
		font-family: 'Frutiger LT W01 65 Bold';
		font-weight: normal;
		color: #3C6485;
	}
	#contentWrapper dl dt:first-child {
		margin: 0px 0px 10px 0px;
	}
	#contentWrapper dl dd {
		display: block;
		margin: 0px 0px 2px 0px;
		padding: 0px 0px 0px 25px;
	}
	#contentWrapper ol {
		margin: 0px 0px 15px 0px;
		padding: 0px;
		counter-reset: li;
		list-style: none;
	}
	#contentWrapper ol li {
		position: relative;
		margin: 0px 0px 2px 0px;
		padding: 0px 0px 0px 40px;
	}
	#contentWrapper ol li:before {
		content: counter(li);
		counter-increment: li;
		position: absolute;
		top: 0px;
		left: 0px;
		color: #3C6485;
		font-weight: normal;
	}
	
	.alignLeft {
		text-align: left;
	}
	.alignCenter {
		text-align: center;
	}
	.alignRight {
		text-align: right;
	}
	
	a.actionButton, a.actionButton:visited {
		display: inline-block;
		background-color: #ba0c2f;
		border-right: 5px solid #ba0c2f;
		padding: 5px 20px 4px 8px;
		margin: 5px 0px 0px 0px;
		font-family: 'Frutiger LT W01 65 Bold';
		font-size: 18px;
		line-height: 22px;
		text-transform: uppercase;
		color: #fff !important;
		background-image: url("/assets/images/common/arrow-sprite.png");
		background-position: right 5px;
		background-repeat: no-repeat;
		cursor: pointer;
	}
	a.actionButton:focus, a.actionButton:hover {
		background-color: #141b4d !important;
		border-right: 5px solid #141b4d !important;
		background-position: right -45px;
		color: #fff !important;
		text-decoration: none;
	}
	body.hires a.actionButton {
		background-image: url("/assets/images/common/arrow-sprite-2x.png");
		background-size: 9px 100px;
	}
	
	a.actionButton.redBackground, a.actionButton.redBackground:visited {
		background-color: #ba0c2f;
		border-right: 5px solid #ba0c2f;
	}
	a.actionButton.blueBackground, a.actionButton.blueBackground:visited {
		background-color: #3C6485;
		border-right: 5px solid #3C6485;
	}
	
	a.actionButton.orangeBackground, a.actionButton.orangeBackground:visited {
		background-color: #e87722;
		border-right: 5px solid #e87722;
	}
	
/*
Header layout
------------------
*/

        #topHeaderWrapper {
		width: 100%;
		height: 30px;
	}
	#topMainHeader {
		position: relative;
		padding: 0px 0px 0px 0px;
		margin-bottom: 0px;
		text-align: left;
		-webkit-user-select: none;
  		-moz-user-select: none;
  		-ms-user-select: none;
	}
        #topHeaderContent {
            width: 100%;
            height: 30px;
        }
         #topHeaderLogo {
             top: 4px;
            left: 15px;
            position: absolute;
        }
	#topHeaderWrapper #headerAccountLinks {
		position: absolute;
		top: 4px;
		right: 15px;
		color: #7faed8;
	}

	.gcMagazine #topHeaderWrapper {
		background-color: #141b4d;
	}
	/* Manuel */
	.icsaShop #topHeaderWrapper {
		background-color: #141b4d;
	}
	
/*
Header layout
------------------
*/

	#headerWrapper {
		width: 100%;
		height: 130px;
	}
        /*
#logoText {
    color: #FFFFFF;
    font-size: 22px;
    margin-left: 10px;
    position: absolute;
    line-height: 22px;
    width:200px;
}
        */
	header {
		position: relative;
		padding: 0px 0px 0px 0px;
		margin-bottom: 0px;
		text-align: left;
		-webkit-user-select: none;
  		-moz-user-select: none;
  		-ms-user-select: none;
	}
	
	#headerContent {
		width: 100%;
		background-color: #3C6485;
		height: 110px;
	}
	.gcMagazine #headerContent {
		background-color: #ebebeb;
	}
	
	#headerLogo {
		position: absolute;
		top: 10px;
		left: 15px;
		width: 80px;
	}
	.gcMagazine #headerLogo {
		top: 15px;
		width: 200px;
       }
	
	.icsaShop #headerLogo {
		top: 13px;
		width: 150px;
	}
	.icsaShop #headerContent h1 {
		color: #fff;
		font-size: 35px;
		line-height: 55px;
		top: 5px;
		left: 16px;
		width: 350px;
	}
	.icsaShop #headerContent h1 a, .icsaShop #headerContent h1 a:active, .icsaShop #headerContent h1 a:visited {
		color: #fff !important;
		text-decoration: none;
	}
	.icsaShop #headerContent h1 a:hover {
		color: #fff  !important;
		text-decoration: none;
	}	
        
        /*
       #logoText {
		position: absolute;
		top: 10px;
		left: 60px;
		width: 180px;
       }
	*/
	/* Account link */
	
	#headerWrapper #headerAccountLinks {
		position: absolute;
		top: 16px;
		right: 15px;
		color: #7faed8;
	}
	#headerAccountLinks a, #headerAccountLinks a:visited {
		font-family: 'Frutiger LT W01 65 Bold';
		color: #fff;
		text-decoration: none;
	}
	body.noTouch #headerAccountLinks a:hover {
		color: #fff !important;
		text-decoration: underline;
	}
	
	/* Social links */
	
	#headerSocialLinks {
		position: absolute !important;
		top: 65px;
		right: 15px;
	}
	#headerSocialLinks dd a, #headerSocialLinks dd a:visited {
		background-color: #3C6485;
		-webkit-transition-property: background-color;
		-webkit-transition-duration: 0.2s;
		-moz-transition-property: background-color;
		-moz-transition-duration: 0.2s;
		-ms-transition-property: background-color;
		-ms-transition-duration: 0.2s;
		-o-transition-property: background-color;
		-o-transition-duration: 0.2s;
		color: #fff !important;
	}
	.gcMagazine #headerSocialLinks dd a, .gcMagazine #headerSocialLinks dd a:visited {
		background-color: #fff;
		color: #a7a9ab !important;
	}
	body.noTouch #headerSocialLinks dd a:hover {
		background-color: #141b4d;
		color: #fff !important;
	}
	
	/* Manuel */
	/* Shop links */
	#headerShopLinks {
		position: absolute !important;
		top: 65px;
		right: 15px;
	}
	#headerShopLinks dd a, #headerShopLinks dd a:visited {
		background-color: #3C6485;
		-webkit-transition-property: background-color;
		-webkit-transition-duration: 0.2s;
		-moz-transition-property: background-color;
		-moz-transition-duration: 0.2s;
		-ms-transition-property: background-color;
		-ms-transition-duration: 0.2s;
		-o-transition-property: background-color;
		-o-transition-duration: 0.2s;
		color: #fff !important;
	}
	body.noTouch #headerShopLinks dd a:hover {
		background-color: #141b4d;
		color: #fff !important;
	}
	
	
	/* Search box */
	
	#headerSearch {
		margin: 0px;
		padding: 15px 10px;
	}
	
	#headerSearchField {
		margin: 0px;
		padding: 5px;
		width: 85%;
		font-size: 16px;
		-webkit-appearance: none;
		background-color: #fff;
		color: #000;
		border: none;
		outline: none;
		border-radius: 15px;
		-webkit-font-smoothing: antialiased;
	}
	#headerSearchButton {
		display: none;
	}
	
	/* Menu launcher */
	
	#menuLauncher {
		display: block;
		position: absolute;
		top: 65px;
		left: 15px;
		width: 40px;
		height: 31px;
		background-color: #3C6485;
		cursor: pointer;
		-webkit-transition-property: background-color;
		-webkit-transition-duration: 0.2s;
		-moz-transition-property: background-color;
		-moz-transition-duration: 0.2s;
		-ms-transition-property: background-color;
		-ms-transition-duration: 0.2s;
		-o-transition-property: background-color;
		-o-transition-duration: 0.2s;
	}
	#menuLauncher .menuLauncherBar {
		display: block;
		position: absolute;
		width: 22px;
		height: 3px;
		background-color: #fff;
	}
	
	.gcMagazine #menuLauncher {
		background-color: #fff;
	}
	.gcMagazine #menuLauncher .menuLauncherBar {
		background-color: #a7a9ab;
	}

	#menuLauncher #barOne {
		top: 8px;
		left: 9px;
	}
	#menuLauncher #barTwo {
		top: 14px;
		left: 9px;
	}
	#menuLauncher #barThree {
		top: 20px;
		left: 9px;
	}
	body.noTouch #menuLauncher:hover {
		background-color: #141b4d;
	}
	.gcMagazine body.noTouch #menuLauncher:hover .menuLauncherBar {
         background-color: #fff;
       }
	#menuLauncher.on {
		background-color: #fff;
	}
	.gcMagazine #menuLauncher.on {
		background-color: #141b4d;
	}
	#menuLauncher.on .menuLauncherBar {
		background-color: #3C6485;
	}
	.gcMagazine #menuLauncher.on .menuLauncherBar {
		background-color: #fff;
	}
	
	/* Menu layout */
	
	#menuArea dl.menuAreas {
		margin: 0px 0px 10px 0px;
		padding: 0px 0px 0px 0px;
		font-size: 18px;
		line-height: 20px;
		border-bottom: 1px solid rgba(255,255,255,0.1);
	}
	
	#menuArea dl.menuAreas a {
		text-decoration: none;
	}
	
	#menuArea dl.menuAreas dt {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	#menuArea dl.menuAreas dt a {
		display: block;
		position: relative;
		margin: 0px 0px 0px 0px;
		padding: 10px 15px 10px 10px;
		background-color: #333;
		border-top: 1px solid rgba(255,255,255,0.1);
		border-bottom: 1px solid rgba(0,0,0,0.5);
		color: #fff;
		cursor: pointer;
	}
	body.noTouch #menuArea dl.menuAreas dt a:hover {
		color: #fff !important;
		text-decoration: underline !important;
	}
	body.js #menuArea dl.menuAreas dt a {
		background-image: url("/assets/images/common/mobile/menu-side-shadow-tile.png");
		background-position: right top;
		background-repeat: repeat-y;
	}
	#menuArea dl.menuAreas dt a.withSubmenu {
		padding: 10px 30px 10px 10px;
	}
	#menuArea dl.menuAreas dt a .expander {
		position: absolute;
		top: 7px;
		right: 15px;
		width: 27px;
		height: 27px;
		background: 0px 0px url("/assets/images/common/mobile/menu-expander-arrows.png") no-repeat;
		background-size: 27px 54px;
		-webkit-tap-highlight-color: rgba(0,0,0,0);
	}
	body.hires #menuArea dl.menuAreas dt a .expander {
		background-image: url("/assets/images/common/mobile/menu-expander-arrows-2x.png");
	}
	#menuArea dl.menuAreas dt a.open {
		background-color: #3d3d3d;
		border-bottom: 1px solid transparent;
	}
	#menuArea dl.menuAreas dt a.open .expander {
		background-position: 0px -27px;
	}
	#menuArea dl.menuAreas dd.submenu {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 15px 0px;
		background-color: #3d3d3d;
		border-bottom: 1px solid rgba(0,0,0,0.5);
		overflow: hidden;
		font-size: 16px;
		line-height: 18px;
	}
	body.js #menuArea dl.menuAreas dd.submenu {
		background-image: url("/assets/images/common/mobile/menu-side-shadow-tile.png");
		background-position: right top;
		background-repeat: repeat-y;
	}
	#menuArea dl.menuAreas dd.submenu dl.overview {
		margin: 0px 0px 0px 0px;
		padding: 10px 0px 5px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.overview dd a {
		display: block;
		margin: 5px 15px 5px 20px;
		padding: 0px 0px 0px 0px;
		color: #fff;
	}
	body.noTouch #menuArea dl.menuAreas dd.submenu dl.overview dd a:hover {
		color: #fff !important;
		text-decoration: underline !important;
	}
	#menuArea dl.menuAreas dd.submenu dl.column {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd, #menuArea dl.menuAreas dd.submenu dl.column dt {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd dl.sections {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd dl.sections dd.section {
		margin: 0px 0px 0px 0px;
		padding: 5px 0px 5px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd dl.sections dd.section dl.sectionLinks {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd dl.sections dd.section dl.sectionLinks dt.sectionTitle {
		display: block;
		margin: 8px 15px 8px 20px;
		padding: 0px 0px 0px 0px;
		color: #b7bade;
	}
	#menuArea dl.menuAreas dd.submenu dl.column dd dl.sections dd.section dl.sectionLinks dd a {
		display: block;
		margin: 8px 15px 8px 20px;
		padding: 0px 0px 0px 0px;
		color: #fff;
	}
	body.noTouch #menuArea dl.menuAreas dd.submenu dl.column dd dl.sections dd.section dl.sectionLinks dd a:hover {
		color: #fff !important;
		text-decoration: underline !important;
	}

	
	
/*
General layout
------------------
*/

	#miscTags {
		display: none;
	}
	
	#contentWrapper {
		margin: 0px;
		padding: 0px 15px 0px 15px;
		text-align: center;
	}
	
	section {
		margin: 0px auto 0px auto;
		text-align: left;
	}
	
	.dividerRule {
		margin: 15px 0px 15px 0px;
		border-top: 1px solid #e5e5e5;
		height: 1px;
		overflow: hidden;
	}
	
	.oneColumnDivider {
		margin: 15px 0px 15px 0px;
		border-top: 1px solid #e5e5e5;
		height: 1px;
		overflow: hidden;
	}
	
	section .row {
		display: block;
		margin: 0px 0px 0px 0px;
	}
	section .row:after {
   		display: table;
    	content: "";
		line-height: 0;
		clear: both;
	}
	section .topSpacing {
		margin-top: 20px;
	}
	
	section .row .column {
		margin: 0px 0px 0px 0px;
	}
	
	a, a:visited {
		color: #ba0c2f;
		text-decoration: none;
	}
	.gcMagazine a, .gcMagazine a:visited {
		color: #e87722;
	}
	a:focus, a:hover {
		color: #141b4d !important;
		text-decoration: underline;
	}
	
	p {
		margin: 0px 0px 15px 0px;
	}
	
	nav.breadcrumb {
		margin: 0px 0px 2px 0px;
		color: #bfd4e4;
	}
	nav.breadcrumb a {
		margin: 0px 5px 0px 5px;
	}
	nav.breadcrumb a:first-child {
		margin: 0px 5px 0px 0px;
	}
	
	h1 {
		position: relative;
		margin: 0px 0px 15px 0px;
		padding: 0px 0px 0px 0px;
		font-size: 30px;
		line-height: 35px;
		color: #3C6485;
	}
	h1.homeH1 {
		display: none;
	}
	
	h2 {
		margin: 30px 0px 15px 0px;
		padding: 0px 0px 0px 0px;
		font-size: 24px;
		line-height: 28px;
		color: #3C6485;
	}
	.panelContent  h2:first-child {
              margin: 0px 0 15px;
       }
	h3 {
		margin: 15px 0px 15px 0px;
		padding: 0px 0px 0px 0px;
		font-size: 20px;
		line-height: 24px;
		color: #3C6485;
	}

	h3.headline a, h3.headline a:visited {
		margin-top: 0px;
		font-family: 'Frutiger LT W01 65 Bold';
		color: #000;
	}
	
	h4 {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
		font-family: 'Frutiger LT W01 65 Bold';
		color: #3C6485;
	}
	
	.topImage {
		margin: 0px 0px 15px 0px;
	}
	
	blockquote.quote {
		display: block;
		margin: 25px 0px 25px 0px;
		padding: 0px 0px 0px 10px;
		border-left: 10px solid #e3eef1;
	}
	blockquote.quote br {
		display: none;
	}
	blockquote.quote em.quoteText {
		display: block;
		font-family: 'Plantin W02 Italic';
		font-weight: normal;
		font-style: normal;
		font-size: 30px;
		line-height: 33px;
		color: #718374;
	}
	blockquote.quote span.quoteAttribution {
		display: block;
		margin-top: 8px;
		font-weight: 400 !important;
		color: #999;
	}

	.googleMap {
		margin: 20px 0px 20px 0px;
		width: 100%;
		height: 200px;
	}
	
	.videoWrapper {
		position: relative;
		padding-bottom: 56.25%; /* 16:9 */
		height: 0;
		overflow: hidden;
	}
	.videoWrapper iframe,
	.videoWrapper object,
	.videoWrapper embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	.videoWrapper.youTube {
		padding-bottom: 56.25%;
	}
	.videoWrapper.vimeo {
		padding-bottom: 56.25%;
	}

	.smallPad {
		padding: 5px 10px;
	}

	/* Manuel */
	/* shop typography */
	h2.smallHeaderWithLine {
		background: url("/assets/images/shop/common/header-bg-line.jpg") repeat-x 0px 0px;
		color: #666c66;
		font-size: 14px;
		line-height: 18px;
		margin: 42px 0px 10px 0px;
	}
	h2.smallHeaderWithLine span {
		background: #ffffff;
		display: block;
		margin: 0px auto;
		padding-top: 1px;
		text-align: center;
		text-transform: uppercase;
		width: 130px;
	}
	

/*
Social links buttons
------------------
*/

	.socialLinksButtons {
		position: relative;
		width: 175px;
		height: 31px;
		overflow: hidden;
	}
	.socialLinksButtons dt {
		display: none;
	}
	.socialLinksButtons dd {
		position: absolute;
		top: 0px;
		width: 40px;
		height: 31px;
	}
	.socialLinksButtons dd a {
		display: block;
		width: 40px;
		height: 31px;
		font-size: 24px;
		line-height: 31px;
		cursor: pointer;
		text-align: center;
		vertical-align: bottom;
	}
	.socialLinksButtons dd a i {
		line-height: 31px !important;
	}
	.socialLinksButtons dd a span {
		display: none;
	}
	.socialLinksButtons dd.linkedInButton {
		left: 0px;
	}
	.socialLinksButtons dd.facebookButton {
		left: 45px;
	}
	.socialLinksButtons dd.twitterButton {
		left: 90px;
	}
	.socialLinksButtons dd.flickrButton {
		left: 135px;
	}
	.socialLinksButtons dd.flickrButton a i.right {
		margin-left: 2px;
		opacity: 0.5;
	}
	
	.gcMagazine .socialLinksButtons dd.linkedInButton {
		left: 45px;
	}
	.gcMagazine .socialLinksButtons dd.googlePlusButton {
		left: 135px;
	}

/*
Shop links buttons
------------------
*/
	.shopLinksButtons {
		position: relative;
		width: 135px;
		height: 31px;
		overflow: hidden;
	}
	.shopLinksButtons dt {
		display: none;
	}
	.shopLinksButtons dd {
		position: absolute;
		top: 0px;
		width: 40px;
		height: 31px;
	}
	.shopLinksButtons dd a {
		display: block;
		width: 40px;
		height: 31px;
		font-size: 24px;
		line-height: 31px;
		cursor: pointer;
		text-align: center;
		vertical-align: bottom;
	}
	.shopLinksButtons dd a i {
		line-height: 31px !important;
	}
	.shopLinksButtons dd a span {
		display: none;
	}
	.shopLinksButtons dd.helpButton {
		left: 0px;
	}
	.shopLinksButtons dd.deliveryButton {
		left: 45px;
	}
	.shopLinksButtons dd.basketButton {
		left: 90px;
	}
	
	
/*
Tables
------------------
*/

	div.wideTableWrapper {
		width: 100%;
		margin: 0px 0px 20px 0px;
		padding: 0px 0px 1px 0px;
		overflow: auto;
	}

	table {
		margin: 15px 0px 15px 0px;
		padding: 0px;
		width: 100%;
		border-collapse: collapse;
		overflow: hidden;
		background-color: #f5f5f5;
	}
	table caption {
		padding: 5px 10px 5px 10px;
		text-align: left;
		color: #fff;
		font-weight: normal;
		background-color: #3C6485;
	}
	table thead th {
		padding: 5px 10px 5px 10px;
		margin: 0px;
		font-size: 14px;
		line-height: 18px;
		font-weight: normal;
		background-color: #e3eef1;
		color: #3C6485;
	}
	table tbody td, table tbody th {
		padding: 5px 10px 5px 10px;
		margin: 0px;
		border-top: 1px solid #fff;
		font-weight: normal;
		vertical-align: middle;
	}
	table tbody th {
		font-family: 'Frutiger LT W01 65 Bold';
		font-weight: normal;
	}

/*
Forms
------------------
*/
	
	.genericForm input[type="checkbox"], .genericForm input[type="radio"] {
   		-webkit-appearance: none;
		margin: 0px 3px 5px 0px;
		vertical-align: middle;
		border: 1px solid #c5c5c5;
		background: none, -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background: none, -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background: none, linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		width: 21px;
		height: 21px;
		cursor: pointer;
	}
	.genericForm input[type="checkbox"]:checked, .genericForm input[type="radio"]:checked {
		background: url("/assets/images/forms/form-checkbox-tick.png") 3px 3px no-repeat, #fff;
	}
	body.hires .genericForm input[type="checkbox"]:checked, body.hires .genericForm input[type="radio"]:checked { 
		background: url("/assets/images/forms/form-checkbox-tick-2x.png") 3px 3px no-repeat, #fff;
		background-size: 13px 13px, cover;
	}
	.genericForm input[type="checkbox"] {
		border-radius: 4px;
	}
	.genericForm input[type="radio"] {
		border-radius: 10px;
	}
	
	.genericForm input[type="text"], .genericForm input[type="password"] {
   		-webkit-appearance: none;
		padding: 4px;
		border: 1px solid #c5c5c5;
		border-radius: 0;
		background-color: #fff;
		font-size: 14px;
		outline: none;
	}
	
	.genericForm input[type="button"], .genericForm input[type="submit"], .genericForm input[type="reset"] {
   		-webkit-appearance: none;
		text-align: center;
		color: #000;
		line-height: 17px;
		border-radius: 4px;
		border: 1px solid #c5c5c5;
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background-image: -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background-image: linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		padding: 5px 8px;
		font-size: 14px;
		cursor: pointer;
	}
	body.noTouch .genericForm input[type="button"]:hover, body.noTouch .genericForm input[type="submit"]:hover, body.noTouch .genericForm input[type="reset"]:hover  {
		background-image: none;
		background-color: #fff;
	}
	.genericForm input[type="button"]:disabled, .genericForm input[type="submit"]:disabled {
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3)) !important;
		background-image: -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%) !important;
		background-image: linear-gradient(to bottom, #fff 0%, #f2f4f3 100%) !important;
		opacity: 0.5 !important;
	}
	.genericForm select {
   		-webkit-appearance: none;
		text-align: center;
		color: #000;
		border-radius: 4px;
		border: 1px solid #c5c5c5;
		padding: 5px 18px 5px 8px;
		background: url("/assets/images/forms/form-select-arrow.png") right no-repeat, -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background: url("/assets/images/forms/form-select-arrow.png") right no-repeat, -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background: url("/assets/images/forms/form-select-arrow.png") right no-repeat, linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		font-size: 14px;
		line-height: 17px;
		cursor: pointer;
		outline: none;
	}
	body.hires .genericForm select {
		background: url("/assets/images/forms/form-select-arrow-2x.png") right no-repeat, -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background: url("/assets/images/forms/form-select-arrow-2x.png") right no-repeat, -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background: url("/assets/images/forms/form-select-arrow-2x.png") right no-repeat, linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		background-size: 12px 9px, cover;
	}
	
	input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
  		color: transparent !important;
  	}
	input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
	  	color: transparent !important;
	}
	input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
	  	color: transparent !important;
	}
	input:focus:-moz-placeholder, textarea:focus:-moz-placeholder {
	  	color: transparent !important;
	}
	
	.genericForm select:disabled {
		opacity: 0.5 !important;
	}
	
	
	.genericForm .errorReport {
		margin: 0px 0px 15px;
		font-weight: bold;
		color: #f30;
	}
	.genericForm fieldset {
		margin-bottom: 1px;
		padding: 10px 10px 1px 10px;
		background-color: #f5f5f5;
	}
	.genericForm fieldset label {
		display: block;
		margin-bottom: 10px;
		font-size: 18px;
		line-height: 22px;
		color: #3C6485;
	}
	.genericForm label.inlineLabel {
		display: inline-block;
		font-size: 16px;
		line-height: 30px;
		color: #505150;
		margin-bottom: 0px;
	}
	.genericForm fieldset .fieldWrapper {
		margin: 10px 0px 10px 0px;
		padding: 0px 4px;
		background-color: #fff;
		border: 1px solid #c5c5c5;
	}
	.genericForm fieldset .fieldWrapperSmall {
		max-width: 100px;
	}
	.genericForm fieldset .fieldWrapperMedium {
		max-width: 300px;
	}
	.genericForm fieldset .fieldWrapper input[type="text"], .genericForm fieldset .fieldWrapper input[type="password"], .genericForm fieldset .fieldWrapper input[type="color"] {
		padding: 4px 0px;
		border: none;
		background-color: #fff;
		font-size: 14px;
		outline: none;
		width: 100%;
	}
	.genericForm fieldset .fieldWrapper textarea {
   		-webkit-appearance: none;
		padding: 4px 0px;
		border: none;
		background-color: #fff;
		font-size: 14px;
		outline: none;
		width: 100%;
	}
	.genericForm fieldset.error .fieldWrapper {
		border: 1px solid #f00;
	}
	.genericForm fieldset .helpText {
		color: #999;
		font-style: italic;
	}
	.genericForm .submitArea {
		padding: 10px 10px 1px 10px;
		background-color: #e3eef1;
	}

/*
Panels
------------------
*/

	.panel {
		margin: 0px 0px 25px 0px;
	}
	.column.eight .panel {max-width: 620px;}
	.column.nine .panel {max-width: 700px;}
	.column.ten .panel {max-width: 780px;}
	.column.eleven .panel {max-width: 860px;}
	.column.twelve .panel {max-width: 940px;}
	.panel p, .panel ul {
		margin: 0px 0px 10px 0px;
	}
	.panelContent {
		padding: 0px;
	}

/*
Custom Panels
------------------
*/

	.redBackground {
		background-color: #ba0c2f !important;
	}
	.orangeBackground {
		background-color: #e87722 !important;
	}
	.blueBackground {
		background-color: #3C6485 !important;
	}

	.heroPanel {
		position: relative;
		color: #fff !important;
	}
	.heroPanel h2 {
		color: #fff;
	}
	.heroPanel a, .heroPanel a:visited {
		color: #fff !important;
	}
	body.noTouch .heroPanel a:hover {
		color: #fff !important;
	}
	
	.heroPanel h2:first-child {
		margin-top: 0px;
	}
	.heroPanel .heroContent {
		margin: 0px;
		padding: 8px 10px 1px 10px;
	}
       .heroPanel.redBackground .heroContent {
                background-color: #ba0c2f;
        }
	.heroPanel .heroContent.noBackground {
		background-color: transparent !important;
	}
	.heroPanel .heroImage {
		margin: 0px;
	}
	
	.heroSplitPanel {
		position: relative;
		margin: 0px 0px 15px 0px;
		padding: 0;
		color: #fff !important;
	}
	.heroSplitPanel .heroImage {
		display: none;
	}
	.heroSplitPanel .heroContent h2 {
		margin: 0px;
		padding: 10px;
		font-size: 30px;
		line-height: 34px;
		color: #fff !important;
	}
	.heroSplitPanel .heroContent p {
		margin: 0px;
		padding: 10px;
	}
	.heroSplitPanel  a, .heroSplitPanel a:visited {
		color: #fff !important;
	}
	body.noTouch .heroSplitPanel a:hover, body.noTouch .heroSplitPanel:hover a {
		color: #fff !important;
		text-decoration: underline;
	}
	
	
	/* Shop feature */
	.heroPanel.shopFeature {
		background: #e3eef1;
	}
	.heroPanel.shopFeature .shopFeatureContentArea {
		padding: 10px;
	}
	.heroPanel.shopFeature .shopFeatureContentArea h2 {
		color: #3C6485;
		font-size: 20px;
		line-height: 27px;
                position: relative;
	}
	.heroPanel.shopFeature .shopFeatureContentArea p {
		color: #3C6485;
		font-size: 18px;
		line-height: 25px;
	}
	#contentWrapper .heroPanel.shopFeature .shopFeatureContentArea ul li {
		background: none;
		color: #3C6485;
		font-size: 16px;
		line-height: 20px;
		margin: 0 0 2px 5px;
		padding: 0 0 0 25px;
		position: relative;
	}
	#contentWrapper .heroPanel.shopFeature .shopFeatureContentArea ul li:before {  
		position: absolute;  
		top: 0px;
		left: 3px;
		font-family: "FontAwesome";
		font-weight: normal;
		content: '\f0a9';
		color: #ba0c2f;
		font-size: 75%;
	}

	
	.heroPanel.shopFeature .shopFeatureContentArea a, 
	.heroPanel.shopFeature .shopFeatureContentArea a:visited,
	.heroPanel.shopFeature .shopFeatureContentArea a:hover {
		color: #ba0c2f !important;
	}
	
	.heroPanel.shopFeature .shopFeatureContentArea #headerSearch {
		position: relative;
		top: auto;
		left: auto;
		width: 282px;
	}
	
	.heroPanel.shopFeature .shopFeatureContentArea #headerSearch #headerSearchField {
		width: 236px;
	}
	
	
	
	.shopFeaturePanelRow .shopFeaturePanel {
		border: 1px solid #e5eef1;
		background: rgb(246,249,250); /* Old browsers */
		/* IE9 SVG, needs conditional override of 'filter' to 'none' */
		background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y2ZjlmYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2Y2ZjlmYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmMGY1ZjciIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
		background: -moz-linear-gradient(top,  rgba(246,249,250,1) 0%, rgba(246,249,250,1) 50%, rgba(240,245,247,1) 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(246,249,250,1)), color-stop(50%,rgba(246,249,250,1)), color-stop(100%,rgba(240,245,247,1))); /* Chrome,Safari4+ */
		background: -webkit-linear-gradient(top,  rgba(246,249,250,1) 0%,rgba(246,249,250,1) 50%,rgba(240,245,247,1) 100%); /* Chrome10+,Safari5.1+ */
		background: -o-linear-gradient(top,  rgba(246,249,250,1) 0%,rgba(246,249,250,1) 50%,rgba(240,245,247,1) 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top,  rgba(246,249,250,1) 0%,rgba(246,249,250,1) 50%,rgba(240,245,247,1) 100%); /* IE10+ */
		background: linear-gradient(to bottom,  rgba(246,249,250,1) 0%,rgba(246,249,250,1) 50%,rgba(240,245,247,1) 100%); /* W3C */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f9fa', endColorstr='#f0f5f7',GradientType=0 ); /* IE6-8 */
	}
	
	.shopFeaturePanelRow .shopFeaturePanel img {
		float: left;
		width: 38%;
	}
	.shopFeaturePanelRow .shopFeaturePanel .panelContent {
		float: right;
		margin: 10px;
		padding: 0;
		width: 52%;
	}
	.shopFeaturePanelRow .shopFeaturePanel .panelContent h3, 
	.shopFeaturePanelRow .shopFeaturePanel .panelContent p {
		font-size: 14px;
		line-height: 20px;
		margin: 0px 0px 7px 0px;
		padding: 0px;
	}
	.shopFeaturePanelRow .shopFeaturePanel .panelContent h3 a, .shopFeaturePanelRow .shopFeaturePanel .panelContent h3 a:visited {
		color: #ba0c2f;
	}
	.shopFeaturePanelRow .shopFeaturePanel .panelContent h3 a:hover {
		color: #141b4d;
	}
		
	.shopFeaturePanelRow .shopFeaturePanel .panelContent a.actionButton, .shopFeaturePanelRow .shopFeaturePanel .panelContent a.actionButton:visited {
		font-size: 11px;
		line-height: 18px;
		background-color: #9b9d9e;
		background-image: url("/assets/images/common/arrow-sprite.png");
		background-position: right 6px;
		background-repeat: no-repeat;
		background-size: 6%;;
		border-right: 5px solid #9b9d9e;
	}
	.shopFeaturePanelRow .shopFeaturePanel .panelContent a.actionButton:hover {
		background-color: #141b4d;
		border-right: 5px solid #141b4d;
	}
	

	/* Shop listings */
	.icsaShop .shopResultFilters {
		background-color: #f5f5f5;
	}
	.icsaShop .shopResultFilters p.filtersHeader {
		padding: 10px 10px 0px 10px;
	}
	.icsaShop .shopResultFilters fieldset {
		background-color: #f5f5f5;
		border-bottom: 1px solid #fff;
		padding: 10px 8px 10px 8px;
	}

	/* Shop product panels */
	.icsaShop .panel.productPanel {
		background: none;
		border: 1px solid #e5e5e5;
	}
	.icsaShop .panel.productPanel .productImage {
		float: right;
		width: 35%;
	}

	.icsaShop .shopResultFilters fieldset input[type="text"]{
              max-width: 148px;
       }

/*
Tabbed content layout
------------------
*/
	
	#tabButtons {
		margin: 0px 0px 15px 0px !important;
		padding: 0 !important;
	}
	#tabButtons dd {
		margin: 0px 0px 2px 0px !important;
		padding: 0 !important;
	}

/*
Signposts
------------------
*/
	.signpost {
		margin: 0px 0px 25px 0px;
		position: relative;
	}
	.signpostContent {
		padding: 10px 15px 1px 15px;
	}
	.signpostContent h2 {
		margin-top: 0px;
	}
	.column.four .signpost {
		max-width: 300px;
	}
	.signpost .signpostArrow {
		display: block;
		position: absolute;
		top: 8px;
		right: 15px;
		width: 9px;
		height: 31px;
		overflow: hidden;
		background-image: url("/assets/images/common/arrow-sprite.png");
		background-position: 0px 5px;
		background-repeat: no-repeat;
		z-index: 10;
	}
	body.noTouch .signpost:hover .signpostArrow {
		background-position: 0px -45px;
		color: #fff !important;
		text-decoration: none;
	}
	body.hires .signpost .signpostArrow {
		background-image: url("/assets/images/common/arrow-sprite-2x.png");
		background-size: 9px 100px;
	}
	
	.signpost .signpostContent.smallPad, .heroPanel .heroContent.smallPad  {
	 	padding: 5px 10px;
	}
	
	#bookshopSignpost {
		background-color: #757578;
		color: #fff;
		background-image: url("/assets/images/signposts/bookshop-signpost-bg.jpg");
		background-position: left bottom;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
	#bookshopSignpost .signpostContent {
		padding: 10px 25px 35% 15px;
		font-size: 20px;
		line-height: 24px;
		color: #fff;
	}
	#bookshopSignpost .signpostContent a, #bookshopSignpost .signpostContent a:visited {
		color: #fff !important;
	}
	body.noTouch #bookshopSignpost:hover .signpostContent a {
		color: #fff !important;
		text-decoration: underline;
	}
	
	#gcMagazineSignpost {
		background-color: #a3c7d2;
		color: #fff;
		background-image: url("/assets/images/signposts/magazine-signpost-bg.png");
		background-position: left bottom;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
	#gcMagazineSignpost .signpostContent {
		padding: 10px 25px 18% 15px;
		font-size: 20px;
		line-height: 24px;
		color: #fff;
	}
	#gcMagazineSignpost h2 {
		color: #fff;
	}
	#gcMagazineSignpost .signpostContent a, #gcMagazineSignpost .signpostContent a:visited {
		color: #fff !important;
	}
	body.noTouch #gcMagazineSignpost:hover .signpostContent a {
		color: #fff !important;
		text-decoration: underline;
	}


	/* shop signposts/panels */
	#shopSolutionsSeriesSignpost {
		background-color: #989898;
		color: #fff;
		background-image: url("/assets/images/shop/signposts/solutions-series-signpost-bg.jpg");
		background-position: left top;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
	#shopSolutionsSeriesSignpost .signpostContent {
		padding: 10px 25px 28% 15px;
		font-size: 20px;
		line-height: 24px;
		color: #fff;
	}
	#shopSolutionsSeriesSignpost h2 {
		color: #fff;
	}
	#shopSolutionsSeriesSignpost .signpostContent p .subHeading {
		display: block;
	}
	#shopSolutionsSeriesSignpost .signpostContent a, #shopSolutionsSeriesSignpost .signpostContent a:visited {
		color: #fff!important;
	}
	body.noTouch #shopSolutionsSeriesSignpost:hover .signpostContent a {
		color: #fff!important;
		text-decoration: underline;
	}

	#shopCompanySPSignpost h3.hidden {
		display: none;
	}
	
	#shopCompanySPSignpost .signpostContent {
		background: none;
		bottom: 20px;
		position: absolute;
		left: 0px;
		text-align: right;
		z-index: 5;
	}
	


/*
Feature listing
------------------
*/

	.featureListing {
		display: block;
		margin: 0px 0px 20px 0px;
	}
	
	.featureListing h2 {
		padding: 5px 10px 5px 10px;
		margin: 0px 0px 1px 0px;
		text-align: left;
		color: #fff;
		font-weight: normal;
		background-color: #3C6485;
		font-size: 16px;
		line-height: 21px;
		font-weight: normal;
	}
	.gcMagazine .featureListing h2 {
		background-color: #3C6485;
	}

	.featureListing .listingItem {
		display: block;
		margin: 0px 0px 1px 0px;
		padding: 15px 10px 10px 10px;
		background-color: #f5f5f5;
		border-left: 10px solid #ebebeb;
	}
	.featureListing .listingItem h3 {
		margin: 0px 0px 5px 0px;
		font-size: 16px;
		line-height: 21px;
	}
	.featureListing .listingItem p {
		margin: 0px 0px 5px 0px;
	}
	.featureListing .listingItem .listingItemLabel {
		text-transform: uppercase;
		font-family: 'Frutiger LT W01 65 Bold';
		font-weight: normal;
		font-size: 16px;
		line-height: 21px;
	}

	.featureListing .topListingItem {
		background-color: #fcf4c5;
		border-left: 10px solid #faec9d;
		font-family: 'Frutiger LT W01 65 Bold';
		font-weight: normal;
		color: #000;
		font-size: 18px;
		line-height: 23px;
	}
	.featureListing .topListingItem h3 {
		font-family: 'Frutiger LT W01 65 Bold';
		font-size: 22px;
		line-height: 27px;
		font-weight: normal;
	}
	.featureListing .topListingItem .listingItemLabel {
		display: inline-block;
		margin: 0px 0px 5px 0px;
		padding: 1px 8px;
		background-color: #e87722;
		color: #fff;
	}
	.featureListing .featuredListingItem {
		font-family: 'Frutiger LT W01 65 Bold';
		font-weight: normal;
	}
	.featureListing .featuredListingItem h3 {
		font-family: 'Frutiger LT W01 65 Bold';
		font-size: 20px;
		line-height: 25px;
		font-weight: normal;
	}
	.featureListing .featuredListingItem .listingItemLabel {
		color: #e87722;
	}

/*
Picture listing
------------------
*/

	.pictureListing {
		display: block;
	}

	.pictureListing .listingItem {
		display: block;
		margin: 0px 0px 10px 0px;
		padding: 10px 10px 5px 10px;
		border-left: 10px solid #e3eef1;
		background-color: #f4f8f9;
	}
	.pictureListing .listingItem .listingPicture {
		width: 100px;
	}
	.pictureListing .listingItem h3 {
		margin: 0px 0px 5px 0px;
	}
	.pictureListing .listingItem p {
		margin: 0px 0px 5px 0px;
	}

/*
Logo listing
------------------
*/

	.logoListing {
		display: block;
	}

	.logoListing .listingItem {
		display: block;
		margin: 0px 0px 10px 0px;
		padding: 10px 10px 5px 10px;
		border-left: 10px solid #e3eef1;
		background-color: #f4f8f9;
	}
	.logoListing .listingItem .listingPicture {
		width: 100px;
	}
	.logoListing .listingItem h3 {
		margin: 0px 0px 5px 0px;
	}
	.logoListing .listingItem p {
		margin: 0px 0px 5px 0px;
	}

/*
Jobs listing
-------------------------
*/

.pictureListing .topListingItem {
    background-color: #fcf4c5;
    border-left: 10px solid #faec9d;
}

.pictureListing .featuredListingItem {
}

.pictureListing .topListingItem .listingItemLabel {
    background-color: #e87722;
    color: #fff;
    display: inline-block;
    margin: 0 0 5px;
    padding: 1px 8px;
}

.pictureListing .featuredListingItem .listingItemLabel {
    color: #e87722;
}

.pictureListing .listingItem  .listingItemLabel {
    font-family: 'Frutiger LT W01 65 Bold';
    font-size: 16px;
    font-weight: normal;
    line-height: 21px;
    text-transform: uppercase;
}


        
.js.noTouch .filterExpander label:hover {
    text-decoration: underline;
}

.js .filterExpander label .filterExpanderIndicator {
    float: right;
}

/*
Pagination
------------------
*/

.paginationControls {
    display: block;
		margin: 15px 0px 15px 0px;
		padding: 10px 10px 1px 10px;
		background-color: #F5F5F5;
}
.paginationControls .showingPages {
    margin-bottom: 10px;
}
.paginationControls .pagesList {
    margin-bottom: 10px;
}
.paginationControls .perPage {
    margin-bottom: 9px;
}
.paginationControls a, .paginationControls span.disabled {
		margin: 0px 5px 0px 0px;
}
.paginationControls .arrow {
    font-size: 22px;
}
.paginationControls a.active, .paginationControls a.active:visited, .paginationControls a.active:hover {
    font-family: 'Frutiger LT W01 65 Bold';
    font-weight: normal;
		color: #3C6485;
    text-decoration: none;
}
.paginationControls span.disabled {
    color: #ccc;
}

/*
Shop custom styles
------------------
*/

	/* Search results page filter panel */
	body #contentWrapper .shopResultFilters .filterExpander ul li, body.hires #contentWrapper .shopResultFilters .filterExpander ul li  {
		background: none;
		margin: 0px;
		padding: 0px;
	}
        .shopResultFilters .filterExpander label 
        {
            color: #505150;
            font-size: 16px;
            font-weight: 400;
            line-height: 21px;
            margin: 0px;
        }
	#contentWrapper .shopResultFilters .filterExpander ul {
		margin-bottom: 0px;
		margin-top: 7px;	
	}
	#contentWrapper .shopResultFilters .filterExpander ul li  {
		margin: 0px 0px 4px 0px;
		padding: 0px;
	}
	#contentWrapper .shopResultFilters .filterExpander ul li label {
		color: #ba0c2f;
		font-size: 13px;
		line-height: 15px;
	}
	

	/* override to hide multiple expander + and - signs */
	.js .shopResultFilters .filterExpander label {
		display: block;	
	}
	.js .shopResultFilters .filterExpander ul li label {
		display: inline;
	}
	.js .shopResultFilters .filterExpander ul li label .filterExpanderIndicator {
		display: none;
	}



	/* Search results page options area */
	.resultsOptionsArea {
		margin: 0px 0px 25px 0px;
		padding-bottom: 20px;
		border-bottom: 1px solid #e5e5e5;
	}	
	
	.resultsOptionsArea .resultsSort {
		float: left;
		margin-bottom: 15px;
		width: 49%;
		max-width: 200px;
	}
	.resultsOptionsArea .resultsSort select {
		color: #ba0c2f;
		display: block;
		padding: 5px 18px 6px 9px;
	}
	
	.resultsOptionsArea .resultsStyle {
		display: block;
		float: left;
		margin-bottom: 15px;
		width: 49%;
		max-width: 200px;
	}	
	.resultsOptionsArea .resultsStyle {
		display: none;
	}
	
	.resultsOptionsArea .resultsStyle p {
		margin: 0px 0px 8px 0px;
	}
	.resultsOptionsArea .genericForm .resultsStyle a.button {
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background-image: -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background-image: linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		border-radius: 4px 0px 0px 4px;
		border: 1px solid #c5c5c5;
		display: inline;
		font-size: 14px;
		line-height: 17px;
		padding: 8px 7px 5px 7px;
	}
	.resultsOptionsArea .genericForm .resultsStyle a.button:hover {
		text-decoration: none;
	}
	.resultsOptionsArea .genericForm .resultsStyle a.button.gridStyle {
		border-left: none;
		border-radius: 0px 4px 4px 0px;
	}
	
	.resultsOptionsArea .genericForm input[type="radio"] {
		border-radius: 4px;
	}
	
	.resultsOptionsArea .genericForm fieldset {
		background: none;
		padding: 0px;
	}
	.resultsOptionsArea .genericForm fieldset label, .resultsOptionsArea .genericForm label, .resultsOptionsArea label {
		color: #505150;
		cursor: pointer;
		display: inline;
		font-size: 16px;
		line-height: 23px;
	}
	
	
	
	.resultsOptionsArea .resultsPages {
		float: left;
		width: 100%;
		max-width: 215px;
	}
	.resultsOptionsArea .genericForm .resultsPages a.button {
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background-image: -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background-image: linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		border-radius: 4px;
		border: 1px solid #c5c5c5;
		display: inline-block;
		font-size: 14px;
		line-height: 15px;
		margin: 0px;
		padding: 8px 0px 5px 0px;
		text-align: center;
		width: 29px;
	}
	.resultsOptionsArea .genericForm .resultsPages a.button:hover {
		text-decoration: none;
	}
	.resultsOptionsArea .genericForm .resultsPages a.button.arrowLeft, .resultsOptionsArea .genericForm .resultsPages a.button.arrowRight {
		background-image: none;
		border: none;
		width: 15px;		
	}
	.resultsOptionsArea .resultsPages p {
		margin: 0px 0px 2px 0px;
	}
	
	
	/* light grey for inactive*/
	.resultsOptionsArea .genericForm .resultsStyle a.button, .resultsOptionsArea .genericForm .resultsPages a.button {
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f4f3), to(#fff));
		background-image: -moz-linear-gradient(center top, #f2f4f3 0%, #fff 100%);
		background-image: linear-gradient(to bottom, #f2f4f3 0%, #fff 100%);
		color: #8d8d8d;
		cursor: pointer;
	}
	.resultsOptionsArea .genericForm .resultsStyle a.button.active, .resultsOptionsArea .genericForm .resultsPages a.button.active {
		background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#f2f4f3));
		background-image: -moz-linear-gradient(center top, #fff 0%, #f2f4f3 100%);
		background-image: linear-gradient(to bottom, #fff 0%, #f2f4f3 100%);
		color: #ba0c2f;
		cursor: pointer;
	}
	
	
	
	/* Search results page product listing styles */
	.productListing .productImage {
		float: right;
		text-align: center;
		width: 20%;
		max-width: 75px;
	}
	.productListing .product.paperback .productImage img {
		width: 88%;
	}
	.productListing .product.digital .productImage img {
		width: 88%;
	}
	
	.productListing .column.productInfo {
		float: left;
		font-size: 14px;
		line-height: 20px;
		width: 70%;
	}
	
	.productListing .product h3 {
		margin: 0px 0px 8px 0px;
		padding: 0px;
	}
	.productListing .product .productDescription {
		float: left;
		font-size: 14px;
		line-height: 20px;
		width: 100%;
	}
	.productListing .product .productDescription a.actionButton {
		font-size: 16px;
		margin: 0px;
	}
	
/* Basket product listing styles */

#loadingBasket {
    width:400px; 
    text-align: center; 
    margin-bottom: 10px;    
}

#basketWrapper {
    position: absolute; 
    left:395px; 
    top:62px;
    z-index:200;  
}

#basketWrapper .arrowUp {
    position: absolute; 
    left:195px;
    top:1px;
    z-index:210; 
    width:30px; 
    height:15px; 
    background-image: url('/assets/images/common/arrow-up.png');
}

.basketListing {
    max-width: 400px;
    border: 1px solid #E5EEF1;
    padding: 10px; 
    z-index:200;
    margin-top:14px; 
    background-color: #F1F6F7;
}

.basketListing .row::after {
    clear: both;
    content: "";
    display: table;
    line-height: 0;
}

.basketListing .dividerRule {
    margin: 5px 0 10px 0;    
    clear:both;
}

.basketListing .productImage {
    float: left;
    text-align: center;
    width: 15%;
    max-width: 75px;
    min-width:60px;
    margin-right: 5px;

}

.basketListing .product .productImage img {
    width: 80%;
}

.basketListing  .productInfo {
    float: left;
    font-size: 14px;
    line-height: 20px;
    width: 45%;
    min-width: 180px;
    margin-right: 5px;
}

.basketListing  .qty {
    float: left;
    font-size: 12px;
    line-height: 20px;
    width: 5%;
    text-align: right;
}

.basketListing  .price, .basketListing  .lineTotal {
    float: left;
    font-size: 12px;
    line-height: 20px;
    width: 15%;
    text-align: right;
    min-width: 60px;
}

.basketListing .product h3 {
    margin: 0px 0px 8px 0px;
    padding: 0px;
}

.basketTotal .productInfo, .basketTotal .qty,.basketTotal .price, .basketTotal .lineTotal  {
    padding-top: 5px;
}

.basketTotal .qty,.basketTotal .price, .basketTotal .lineTotal  {
    border-top: 1px solid #d3dEe2;
}


	/* Product page - side panel */
	.productPage .productPanel {
		background-color: #f5f5f5;
		margin-bottom: 20px !important;
	}
	.productPage .productPanel .productPanelContent {
		padding: 12px;
	}
	
	.productPage .product .productImage {
		float: left;
	}
	.productPage .product .productImage p {
		display: block;
		margin: 0px;
		max-height: 150px;
		max-width: 150px;
		text-align: center;
		position: relative;
	}
	.productPage .product .productImage p a {
		display: block;
	}
	.productPage .product .productImage p img {
		margin: 0px 15px 0px 0px;
		display: block;
		max-height: 150px;
		max-width: 150px;
	}
	
	.productPage .product .productDetailsArea {
		float: left;
		width: 55%;
	}
	.productPage .product .productDetailsArea .productPrice {
		font-size: 22px;
		line-height: 30px;
		margin: 0px;
	}
	.productPage .product .productDetailsArea .productPrice .smallText {
		font-size: 12px;
	}
	.productPage .product .productDetailsArea .productDetails {
		color: #868686;
	}
	
       /*Related books */
       .productPage .relatedProducts .product .productImage p img {
              max-height: 100%;
              max-width: 100%;
       }

	/* Product page - bottom panel */
	.productPage .productBottomPanel {
		background-color: #f5f5f5;
		margin-bottom: 20px !important;
	}
	.productPage .productBottomPanel .productPanelContent {
		padding: 12px;
	}
	.productPage .productBottomPanel .productPrice {
		font-size: 22px;
		line-height: 30px;
		margin: 0px;
	}
	.productPage .productBottomPanel .productPrice .smallText {
		font-size: 12px;
	}
	.productPage .productBottomPanel .productButton {
		line-height: 30px;
	}
			
	
	/* Product page - content listing */
	.productPage .productContent ol.productContentsList {
		list-style-type: none;
		counter-reset: item;
		margin: 0;
		padding: 0;
	}
	#contentWrapper .productPage .productContent ol.productContentsList {
		margin: 0 0 10px 0;	
	}
	.productPage .productContent ol.productContentsList li {
		display: table;
		counter-increment: item;
		margin-bottom: 0.6em;
	}
	.productPage .productContent ol.productContentsList li:before {
	    content: counters(item, ".") ". ";
	    display: table-cell;
	    padding-right: 0.6em;    
	}
	#contentWrapper .productPage .productContent ol.productContentsList li {
		padding-left: 20px;
	}
	#contentWrapper .productPage .productContent ol.productContentsList li:before {
		color: #505150;
	}
	#contentWrapper .productPage .productContent ol.productContentsList li ol {
		list-style-type: lower-roman !important;
	}
	#contentWrapper .productPage .productContent ol.productContentsList li ol li {
	    display: list-item;
	    font-size: 14px;
	    line-height: 18px;
	    margin: 5px 0 5px 30px;
	    padding: 0px 0px 0px 5px;
	}
	#contentWrapper .productPage .productContent ol.productContentsList li ol li:before {
	    content: "";
	}
	
	
        .productPage .product .productDetailsArea .productFormats {
		margin: 0px 0px 9px 0px;
	}
	
	.productPage .product .productDetailsArea .productFormats span.formatDescription {
		display: block;
		font-size: 12px;
		line-height: 16px;
		margin: 10px 0 4px 0;
		padding: 10px 0 0 0;
		text-transform: uppercase;
	}
	
	.productPage .product .productDetailsArea .productFormats a {
		background: #fcfcfc;
		border-left: 4px solid #e4e4e4;
		display: block;
		margin: 2px 0 2px 0;
		padding: 7px;
	}
	.productPage .product .productDetailsArea .productFormats a span.formatPrice {
		display: block;
		font-size: 12px;
		/*float: right;*/
	}
	.productPage .product .productDetailsArea .productFormats a span.formatCTA {
		background: #ba0c2f;
		color: #fff;
		display: inline-block;
		float: right;
		font-size: 12px;
		line-height: 16px;
		padding: 2px 4px 0px 4px;
		text-transform: uppercase;
	}
	.productPage .product .productDetailsArea .productFormats a:hover span.formatCTA {
		background: #141b4d;
		color: #fff;
	}
	
	.productPage .product .productDetailsArea p.productFormatGuide {
		font-size: 11px;
		line-height: 14px;
		margin: 0px;
	}

        
        
        
        
        
        
	
	/* Author page */
	.authorPage .panel .panelContent .authorImage {
		float: left;
		margin-right: 10px;
		max-width: 175px;	
		width: 50%;	
	}		
	.authorPage .panel .panelContent .authorImage img {
		width: 100%;
	}
	

/*
Footer layout
------------------
*/

	#footerWrapper {
		margin-top: 40px;
		width: 100%;
		background-color: #e3eef1;
		color: #505150;
	}
	#footerWrapper a, #footerWrapper a:visited {
		color: #505150;
		text-decoration: none;
	}
	#footerWrapper a:hover {
		color: #141b4d;
		text-decoration: underline;
	}

	footer {
		margin: 0px;
		padding: 10px 15px 5px 15px;
	}

	footer p {
		margin: 0px 0px 10px 0px;
	}
	
	#footerLinks {
		margin: 0px;
		padding: 0px;
	}
	#footerLinks dd {
		margin: 0px 0px 5px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	footer nav {
		margin: 0px 0px 25px 0px;
	}
	
	#footerInfo {
		margin: 0px 0px 10px 0px;
		padding: 0px 0px 0px 80px;
		font-size: 16px;
		line-height: 21px;
		min-height: 63px;
		position: relative;
		background-image: url("/assets/images/common/coat-of-arms.png");
		background-position: 0px 0px;
		background-repeat: no-repeat;
	}
	body.hires #footerInfo {
		background-image: url("/assets/images/common/coat-of-arms-2x.png");
		background-size: 60px 63px;
	}

/*
DFP
------------------
*/

.vMPU, .gcMPU {
  margin: 0px 0px 25px 0px;
}

	.adsWrapper, .inWrapper {
		margin: 15px 0px 25px 0px;
		padding: 0px 9px;
		background-color: #f7f7f7;
		border: 1px solid #e5e5e5;
		text-align: center;
	}
        
	.inWrapper {
		text-align: left;
	}
        
        .inWrapper {
                margin: 15px 0px 15px 0px;
		background-color: transparent;
		border: 0px solid;
	}
        
	.adsWrapper h3 {
		margin: 14px;
		padding: 0px;
		font-family: 'FrutigerLTW01-55Roman';
		font-size: 13px;
		line-height: 16px;
		text-transform: uppercase;
		color: #999;
	}

/*
Custom expandable boxes
------------------
*/	
    .expanderIndicator {
        float: right;
        color:#3C6485;
        cursor: pointer; 
/*
        margin-right: 10px;
        text-align:center;
        height:20px;
        line-height:20px;
        width: 20px;
        color: #FFFFFF;
        background-color:#3C6485;
        font-size:18px;
*/
    }

    .expTitle { 
        cursor: pointer;
    }

/*
Design toolkit
------------------
*/

	.codeSnippet {
		font-family: Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", monospace !important;
		margin: 20px 0px 20px 0px;
		padding: 0px;
		background-color: #faf5e5;
		border-left: 1px solid #f0e0b2;
	}
	.codeSnippet ol {
		margin: 0px 0px 0px 0px;
		padding: 0px;
		color: #ccc !important;
		counter-reset: li;
		list-style: none;
	}
	.codeSnippet ol li {
		position: relative;
		color: #ccc;
		padding: 3px 9px 3px 9px !important;
		font-size: 13px;
		line-height: 16px;
	}
	.codeSnippet ol li:nth-child(even) {
		background-color: rgba(255,255,255,0.5);
	}
	.codeSnippet ol li code {
		display: block;
		color: #000;
	}
	.codeSnippet ol li:before {
		display: none;
	}
	.codeSnippet ol li code:before {
		content: counter(li);
		counter-increment: li;
		position: absolute;
		top: 3px;
		left: 5px;
		color: #c90;
	}
	.codeSnippet ol li.tabs_0 code { padding-left: 50px;}
	.codeSnippet ol li.tabs_1 code { padding-left: 70px;}
	.codeSnippet ol li.tabs_2 code { padding-left: 90px;}
	.codeSnippet ol li.tabs_3 code { padding-left: 110px;}
	.codeSnippet ol li.tabs_4 code { padding-left: 130px;}
	.codeSnippet ol li.tabs_5 code { padding-left: 150px;}
	.codeSnippet ol li.tabs_6 code { padding-left: 170px;}
	
	.panelIndicator {
		display: block;
		margin: 0px 0px 20px 0px;
		padding: 15px;
		text-align: center;
		background-color: #e5e5e5;
	}
	
/*
Cookies message
------------------
*/
	
#cookieMessage {
    position: fixed;
    top: 141px;
    width:100%;
    z-index: 100;

}

#cookieMessage .messageWrap {
    background-color: #BFD1D3;
    height: auto !important;
    margin: 0 auto;
    padding: 0 !important;
    text-align: left;
    width: 100%;   
    box-sizing: border-box;
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.7);
}

#cookieMessage .messageContent{
    padding: 10px !important;
}

