/* Master layout */

/************************************************************
Embedded fonts */

@font-face {
	font-family:Futura;
	src:url('../fonts/FuturaStd-Book.eot'); /* IE8- */
	src:url('../fonts/FuturaStd-Book.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/FuturaStd-Book.otf') format('opentype'); /* The rest of the world */
}
@font-face {
	font-family:Radley;
	src:url('../fonts/Radley-Regular.eot'); /* IE8- */
	src:url('../fonts/Radley-Regular.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/Radley-Regular.ttf') format('opentype'); /* The rest of the world */
}

/************************************************************
Global styles */

html {
	font:11pt/1.3 Futura,Arial,Helvetica,sans-serif;
	background:#ffffff;
	color:#092344;
}
body {
	margin:0;
	padding:0;
}

/* Links */
a:link,
a:visited,
a:hover,
a:active {
	color:#a17f55;
	text-decoration:none;
}
a img {
	border:none;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	font:11pt/1.2 Radley,'Times New Roman',Times,serif;
	margin:0.5em 0 0.3em;
}
h1 {
	font-size:21pt;
}
h2 {
	font-size:19pt;
}
h3 {
	font-size:13pt;
}
.col h1 {
	text-transform:uppercase;
	margin-bottom:0;
}
.col h2, .col h3, .col h4 {
	color:#092344;
}
.col.side h2 {
	font-size: 16pt;
	text-transform:uppercase;
	border-bottom: 1px solid #EDEDED;
	padding-top: 5px;
}
.col.side>h3 {
	font-size:15pt;
}
.col .locationText {
	font:16pt Radley,'Times New Roman',Times,serif;
	margin: 0.2em;
}


/* Block-level */
p {
	margin:1em 0;
}
address {
	margin:0 0 1em;
	font-style:normal;
}


/************************************************************
Layout: Header */

#header {
	position:relative;
	width:705px;
	margin:0 auto;
	padding:0.7em 235px 0 0;
	text-align:right;
	margin-bottom:40px;
}
#header>h2,
#header>h3 {
	margin:0;
}
#header>h2 {
	font-size:16pt;
}
#header>h3 strong {
	color:#092344;
	font-weight:normal;
}


/* Locations drop-down */
#locations {
	position:absolute;
	z-index:10;
	width:225px;
	padding:0.4em 0;
	right:0;
	top:0;
	color:#e5dbcf;
	background-color:#a17f55;
	border-radius:0 0 0.5em 0.5em;
	box-shadow:0 1px 7px 1px rgba(182,168,85,0.6);
	opacity:0.95;
}
#locations h3 {
	text-transform:uppercase;
	text-align:center;
	cursor:pointer;
	margin:0.2em 0 0.4em;
}
#locations ol {
	display:none;
	list-style:none;
	text-align:left;
	font-size:12pt;
	margin:0;
	padding:0 1em 0.5em;
}
#locations:hover ol {
	display:block;
}
#locations ol a {
	display:block;
	padding:0.3em 0.5em;
	color:#e5dbcf;
}
#locations ol a:hover {
	text-shadow:0 0 3px rgba(255,255,255,0.6);
}

/* Arrows */
#locations h3:after {
	content:'\22CE';
	font-size:22pt;
	line-height:0.5;
	margin-left:0.2em;
}
#locations ol a:before {
	content:'\227B';
	margin-right:0.5em;
}


/************************************************************
Layout: Navigation */

#main-nav {
	text-align:center;
	position:relative;
	list-style:none;
	z-index:9;
	margin:1.5em 0;
	padding:0;
	background:#092344;
	font:12pt/2 Radley,'Times New Roman',Times,serif;
	opacity:0.95;
	border-bottom:1px solid rgba(255,255,255,0.5);
	box-shadow:0 1px 7px 1px rgba(203,183,158,0.4);
}
#main-nav>li {
	position:relative;
	z-index:10;
	display:inline-block;
	vertical-align:middle;
}
#main-nav>li>a {
	text-transform:uppercase;
}
#main-nav a {
	display:block;
	color:#f1ede8;
	padding:0.4em 0.8em 0.6em;
}
#main-nav a:hover {
	text-shadow:0 0 3px rgba(255,255,255,0.6);
}
#main-nav:after { /* Line */
	content:' ';
	position:absolute;
	width:100%;
	height:3px;
	background:#cbb79e; /*092344;*/
	bottom:3px;
	left:0;
}

/* Logo */
#logo {
	margin:-3em 0;
	height:5em;
}
#logo a {
	display:block;
	text-align:left;
	text-indent:-9999px;
	height:155px;
	width:280px;
	padding:0;
	background:transparent url('../images/site/logo.png') no-repeat center center;
}

/* Second level */
#main-nav ul {
	display:none;
	list-style:none;
	position:absolute;
	text-align:left;
	margin:0;
	padding:0 0 0.7em;
	background:#092344;
	min-width:10em;
	line-height:1.5;
	border-radius:0 0 0.5em 0.5em;
	box-shadow:0 1px 7px 1px rgba(13,51,85,0.4);
}
#main-nav li:hover>ul {
	display:block;
}
#main-nav ul a {
	padding:0.2em 1.5em 0.2em 1em;
}


/************************************************************
Layout: Content */

#content {
	width:940px;
	margin:0 auto;
	padding:2em 0;
}

/* Columns */
.col.side {
	width:29%;
}
.col.main {
	width:67%;
}
.col+.col.side,
.col+.col.main {
	margin-left:3%;
}
.col.main+.col.side {
	margin-top:3em;
}


/************************************************************
Layout: Ribbon / testimonial */

#ribbon {
	background:#a17f55;
	padding:2.7em 0 3em;
}
#ribbon blockquote {
	width:890px;
	margin:0 auto;
	padding-left:10px;
}
#ribbon h3,
#ribbon p {
	display:inline-block;
	vertical-align:middle;
}
#ribbon h3 {
	position:relative;
	margin:0;
	width:32%;
	font-size:15pt;
	color:#092344;
}
#ribbon h3:after {
	content:'}';
	right:-0.5em;
	top:50%;
	position:absolute;
	font:60pt/0 Radley,'Times New Roman',Times,serif;
}
#ribbon p {
	margin:0.3em 0 0 6%;
	width:60.5%;
}
#ribbon cite {
	color:#092344;
	font-style:normal;
	margin-left:0.3em;
}
#ribbon cite:before {
	content:'\2013';
	margin:0 0.2em;
}


/************************************************************
Layout: Footer */

#footer {
	position:relative;
	text-align:center;
	background:#092344;
	padding:2em 0 3em;
	color:#e5dbcf;
}
#footer a {
	color:#e5dbcf;
}
#footer:before { /* Shadow */
	content:' ';
	position:absolute;
	width:750px;
	height:20px;
	top:-20px;
	left:50%;
	margin-left:-375px;
	box-shadow:0 12px 8px -8px rgba(0,0,0,0.5);
}


/* Navigation / address */
#foot-nav {
	position:relative;
	list-style:none;
	margin:0 auto 1.5em;
	padding:0 0 1.5em;
	width:900px;
}
#foot-nav>li {
	text-align:left;
	display:inline-block;
	vertical-align:top;
	margin-right:2em;
}
#foot-nav address {
	padding:100px 0 0;
	text-align:center;
	background:transparent url('../images/site/logo-sm.png') no-repeat center top;
}
#foot-nav:after { /* Shadow */
	content:' ';
	position:absolute;
	width:100%;
	height:6px;
	bottom:0;
	left:0;
	/*background:rgba(17,65,106,0.25);*/
	box-shadow:inset 0 4px 4px rgba(0,0,0,0.03);
	border-radius:6px;
}

/* Links */
#foot-nav ul {
	list-style:none;
	margin:0;
	padding:0;
}
#foot-nav ul li {
	margin:0.3em 0;
}



/* Copyright / etc. */
#footer>p,
#footer>h3 {
	display:inline-block;
	vertical-align:middle;
}
#footer>h3 {
	width:500px;
	font-size:14pt;
	line-height:1.3;
}
#footer>h3 a {
	display:inline-block;
	width:14em;
}
#footer>h3 small {
	display:block;
	padding-right:5em;
	color:#e1de95;
	font-size:7pt;
	letter-spacing:0.3em;
	text-transform:uppercase;
}
#footer>p {
	font-size:9.5pt;
}

#footer #jb-logo {
	font-size:8pt;
}
#jb-logo a {
	display:block;
	text-align:left;
	text-indent:-9999px;
	margin:0.5em 0;
	height:40px;
	background:transparent url('../images/site/jb-logo.png') no-repeat center center;
}



/************************************************************
Buttons / Links */

/* Arrow links */
.arrow {
	font:10.5pt/1.3 Radley,'Times New Roman',Times,serif;
	text-transform:uppercase;
}
.arrow:after,
.arrow.left:before {
	content:'\00BB';
	font-size:16pt;
	line-height:0;
	margin:0 0.3em;
}

/* Reversed arrow */
.arrow.left:after {
	display:none;
}
.arrow.left:before {
	content:'\00AB';
}


/* Buttons */
.button {
	display:inline-block;
	vertical-align:middle;
	padding:0.4em 1.2em 0.5em;
	font:12.5pt/1.3 Radley,'Times New Roman',Times,serif;
	color:#e5dbcf !important;
	background-color:#092344;
	cursor:pointer;
	border:none;
	opacity:0.95;
	border-radius:0.5em;
	box-shadow:0 1px 6px 1px rgba(13,51,85,0.4);
}


/* PDF links */
.pdf {
	font-size:11.5pt;
	display:inline-block;
}
.pdf:before {
	content:url('../images/icons/pdf-sm.png');
	vertical-align:middle;
	margin-right:0.3em;
}



/************************************************************
Miscellaneous */

/* Text alignment */
.left { text-align:left !important; }
.center { text-align:center !important; }
.right { text-align:right !important; }

/* Font sizes */
small { font-size:90%; }
big { font-size:115%; }

/* Padding */
.pad { padding:1em; }
.topPad { padding-top:1em; }
.bottomPad { padding-bottom:1em; }
.leftPad { padding-left:1em; }
.rightPad { padding-right:1em; }

/* Columns */
.col {
	display:inline-block;
	vertical-align:top;
}


/* Fix extra button padding in Firefox */
input[type="submit"]::-moz-focus-inner {
    border:none;
    padding:0;
    line-height:1;
}

