/* Master layout */

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

@font-face {
	font-family:Dosis;
	src:url('../fonts/dosis-medium-webfont.eot'); /* IE8- */
	src:url('../fonts/dosis-medium-webfont.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/dosis-medium-webfont.ttf') format('truetype'); /* The rest of the world */
}
@font-face {
	font-family:Hoefler;
	src:url('../fonts/hoefler.eot'); /* IE8- */
	src:url('../fonts/hoefler.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/hoefler.ttf') format('truetype'); /* The rest of the world */
}

@font-face {
    font-family: 'robotoregular';
    src: url('../fonts/Roboto-Regular-webfont.eot');
    src: url('../fonts/Roboto-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Roboto-Regular-webfont.woff') format('woff'),
         url('../fonts/Roboto-Regular-webfont.ttf') format('truetype'),
         url('../fonts/Roboto-Regular-webfont.svg#robotoregular') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'HelveticaNeue';
    src: url('../fonts/HelveticaNeueLTStd-Lt.eot');
    src: url('../fonts/HelveticaNeueLTStd-Lt.eot?#iefix') format('embedded-opentype'),
         url('../fonts/HelveticaNeueLTStd-Lt.woff') format('woff'),
         url('../fonts/HelveticaNeueLTStd-Lt.ttf') format('truetype'),
         url('../fonts/HelveticaNeueLTStd-Lt.svg#dancing_script_otregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'montserratsemi_bold';
    src: url('../fonts/montserrat-semibold-webfont.eot');
    src: url('../fonts/montserrat-semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/montserrat-semibold-webfont.woff2') format('woff2'),
         url('../fonts/montserrat-semibold-webfont.woff') format('woff'),
         url('../fonts/montserrat-semibold-webfont.ttf') format('truetype'),
         url('../fonts/montserrat-semibold-webfont.svg#montserratsemi_bold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'montserratregular';
    src: url('../fonts/montserrat-regular-webfont.eot');
    src: url('../fonts/montserrat-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/montserrat-regular-webfont.woff2') format('woff2'),
         url('../fonts/montserrat-regular-webfont.woff') format('woff'),
         url('../fonts/montserrat-regular-webfont.ttf') format('truetype'),
         url('../fonts/montserrat-regular-webfont.svg#montserratregular') format('svg');
    font-weight: normal;
    font-style: normal;

}



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

html {
	background:#000;
}
body {
	margin:0;
	padding:9px 0 0;
	min-width:290px;
	font:10.5pt/1.3 'robotoregular',Arial,Helvetica,sans-serif;
	background:#fff url('../images/site/bg-stripes.png') repeat center top;
	color:#000;
}
body:before {
	content:' ';
	position:absolute;
	width:100%;
	height:9px;
	left:0;
	top:0;

	background:#b6121b url('../images/ie/header-line.gif') repeat-y center top; /* For IE / older browsers */
	background-image:linear-gradient(to right, #ce1443, #ce1443 23%, #d4d4d4 23%, #d4d4d4 45%, #8e8c8d 45%, #8e8c8d 60%, #4b494a 60%, #4b494a 75%, #ce1443 75%);
}

/* Links */
a:link,
a:visited,
a:hover,
a:active {
	color:#ce1443;
	text-decoration:none;
}
a img,
iframe {
	border:none;
}
a[href^="tel:"] {
	color:inherit;
	cursor:inherit;
}

/* Responsive images */
img {
	max-width:100%;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	font: 110%/1.1 'montserratregular','Times New Roman',Times,serif;
	margin:0.5em 0 0.2em;
}
h1, h2 {
	font-size:215%;
}
h3 {
	font-size:140%;
}
h4 {
	font-size:115%;
	color:#ce1443;
}
h5 {
	font-size:115%;
}

h6 {
	font-size:115%;
	font:normal 110%/1 'robotoregular',Arial,Helvetica,sans-serif;
}

h1 em, h2 em {
	font-size:85%;
}

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

.redText {color: #ce1443;}

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

body>header {
	position:absolute;
	background:rgba(0,0,0,0.75);
	text-align:center;
	width:100%;
	top:9px;
	left:0;
}

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

#logo {
	display:inline-block;
	vertical-align:top;
	text-indent:-9999px;
	outline:none;
	z-index:2;
	margin:-1em 1% -2em 0;
	padding:3.5em 0;
	width:20%;
	max-width:245px;
	background:#fff url('../images/site/logo.png') no-repeat center center;
	background-size:83.5% auto;
	
}


/*-----------------------------------------------------------
Main navigation */

#main-nav {
	position:relative;
	display:inline-block;
	vertical-align:top;
	/*padding:0 0 0 255px; /*23%;*/
	max-width:750px;
	width:70%;
}
#main-nav ul {
	display:table;
	list-style:none;
	width:100%;
	padding:0;
	margin:0;
}
#main-nav li {
	display:table-cell;
	vertical-align:middle;

	-webkit-transition:all 0.5s ease 0s;
	transition:all 0.5s ease 0s;
}
#main-nav li>a {
	display:block;
	text-align:center;
	text-transform:uppercase;
	font-size:110%;
	padding:2em 0;
	color:#fff;
}
#main-nav li.sel {
	box-shadow:inset 0 -0.6em 0 -0.3em #ce1443;
}
#main-nav li:hover {
	box-shadow:inset 0 -0.6em 0 -0.3em #8e8c8d;
}

/* Home link */
#main-nav li:first-child>a {
	text-indent:-9999px;
	position:relative;
	outline:none;
	min-width:2em;
}
#main-nav li:first-child>a:after { /* House shape */
	content:' ';
	position:absolute;
	left:50%;
	top:50%;
	width:1px;
	height:12px;
	margin:-22px 0 0 -9px;
	border-bottom:10px solid #fff;
	border-right:9px solid transparent;
	border-left:9px solid transparent;
	box-shadow:-4px 16px 0 -7px #fff, 4px 16px 0 -7px #fff, 0 7px 0 -3px #fff;
}

/* Mobile-only links */
#top, #nav-close {
	display:none;
}


/*-----------------------------------------------------------
Search form */

/* Magnifier link */
#main-nav a[href="#search"] {
	position:relative;
	display:block;
	text-indent:-9999px;
	outline:none;
	background:#ce1443;
	margin:0 0 0 auto;
	font-size:100%;
	height:2em;
	width:2em;
	padding:0;
}
#main-nav a[href="#search"]:after {
	position:absolute;
	margin:-8px 0 0 -9px;
	height:8px;
	width:8px;
	left:50%;
	top:50%;

	/* Circle part */
	border:3px solid #fff;
	border-radius:100%;

	/* Stem part */
	content:'|';
	text-indent:2px;
	text-shadow:1px 0 0 #fff;
	line-height:20pt;
	font-weight:bold;
	font-size:7pt;
	color:#fff;

	-webkit-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	transform:rotate(-45deg);
}

/* Form */
#main-nav #search {
	position:absolute;
	visibility:hidden;
	height:100%;
	/*width:100%;*/
	opacity:0;
	right:0;
	bottom:0;
	background:rgba(0,0,0,0.2);
	border-top:9px solid transparent; /* To put it at the true top of the page */
	text-align:right;

	-webkit-transition:all 0.7s ease 0s;
	transition:all 0.7s ease 0s;
}
#main-nav #search p {
	position:relative;
	top:50%;
	padding:0.25em;
	margin:-1.4em 0 0;
	background:#ce1443;
	border-radius:0.4em;
}

/* Search box */
#main-nav #search input[type="search"] {
	width:20em;
	height:2.2em;
	padding:0 3em 0 0.3em;
	background:#fff;
	font:100%/1.3 'robotoregular',Arial,Helvetica,sans-serif;
	border:none;
	border-radius:0.2em;
}

/* Close link */
#main-nav #search a {
	position:absolute;
	right:0.8em;
	top:0;
	color:#999;
	font-size:235%;
	line-height:1;
	z-index:2;
}

/* Submit button */
#main-nav #search input[type="submit"] {
	position:absolute;
	height:1.5em;
	width:1.5em;
	padding:0;
	right:0;
	top:0;
	border:none;
	background:none;
	font:bold 160%/1.3 'robotoregular',Arial,Helvetica,sans-serif;
	color:#999;
	cursor:pointer;
}


/* Opening */
#main-nav #search:target {
	visibility:visible;
	opacity:1;
}

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

/*-----------------------------------------------------------
Main container */

main {
	display:block;
	padding:0 6%;
}
main>section {
	background:#fff;
	max-width:970px;
	margin:0 auto;
	padding:1em 2em;
}


/*-----------------------------------------------------------
Content box */

#content {
	overflow:hidden;
	position:relative;
	padding-top:1.25em;
}
#content:before {
	content:' ';
	position:absolute;
	height:0.7em;
	width:80%;
	left:10%;
	top:0;
	/*background:transparent radial-gradient(ellipse farthest-side at center top, rgba(0,0,0,0.5), rgba(0,0,0,0)) no-repeat center top;*/
}


/*-----------------------------------------------------------
Columns */

.col.main {
	float:right;
	width:72%;
	padding-top: 20px;
	
}
.col reso {
	width:100%;
	
}
.col.side {
	float:left;
	width:24%;
	min-width:160px;
}

.col.main>h1:first-child,
.col.main>h2:first-child {
	margin:0;
}

.col+h1, .col+h2,
.col+h3, .col+h4,
.col+p {
	clear:both;
}


/*-----------------------------------------------------------
Ribbon callout */

#ribbon {
	background:#4b494a;
	text-align:center;
}
#ribbon a {
	display:block;
	padding:1em 1em;
	font: 160%/1.5 'montserratregular','Times New Roman',Times,serif;
	color:#fff;
}


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

body>footer {
	position:relative;
	font-size:90%;
	padding:2em 3%;
	background:#000;
}
body>footer>address,
body>footer>nav,
body>footer>p {
	max-width:950px;
	margin:0 auto;
	line-height:1.5;
	clear:left;
	color: #fff;
}


/*-----------------------------------------------------------
Social icons */

body>footer .social ul {
	float:right;
	margin:0 0 1em 95px; /* Left margin makes space for the JB logo */
}


/*-----------------------------------------------------------
Text stuff */

body>footer address span {
	float:left;
}

body>footer span+span:before {
	content:' \A0\A0|\A0  ';
}

body>footer a {
	color:inherit !important;
}
body>footer em a+a:before {
	content:'  /  ';
}

/*-----------------------------------------------------------
JB Logo */

#jb {
	margin:0 auto;
	position:relative;
	opacity:0.4;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#jb a {
	display:block;
	position:absolute;
	text-indent:-9999px;
	outline:none;
	height:35px;
	width:85px;
	bottom:0.5em;
	right:6em;
	background:transparent url('../images/site/jb-logo.png') no-repeat center center;
}

#jb:hover {
	opacity:1;
}



/************************************************************
Buttons / links */

/*-----------------------------------------------------------
Buttons */

.button {
	position:relative;
	display:inline-block;
	padding:0.3em 1.5em 0.3em 0.7em;
	font:110%/1.3 'montserratregular','Times New Roman',Times,serif;
	background:#ce1443;
	color:#fff !important;
	border:none;
	cursor:pointer;

	-webkit-transition:all 0.5s ease 0s;
	transition:all 0.5s ease 0s;
}
.button:after { /* Arrow */
	content:' ';
	position:absolute;
	top:50%;
	right:0.6em;
	margin:-0.4em 0 0;
	border-left:0.4em solid #fff;
	border-top:0.4em solid transparent;
	border-bottom:0.4em solid transparent;

	-webkit-transition:all 0.5s ease 0s;
	transition:all 0.5s ease 0s;
}
.button:hover {
	box-shadow:inset 0 0 1em 0 rgba(0,0,0,0.1);
}
.button:hover:after {
	right:0.4em;
}

/* Input buttons */
input.button {
	font-size:135%;
	padding:0.4em 1em;
}


/*-----------------------------------------------------------
Arrows */

.arrow {
	position:relative;
	display:inline-block;
	padding:0 1.7em 0.1em 0;
	color:inherit !important;
	line-height:1.2;

	-webkit-transition:all 0.7s ease 0s;
	transition:all 0.7s ease 0s;
}
.arrow:before {
	content:' ';
	position:absolute;
	height:100%;
	width:1.3em;
	right:0;
	top:0;
	background:currentColor;
}
.arrow:after {
	content:' ';
	position:absolute;
	margin:-0.4em 0 0;
	right:0.4em;
	top:50%;
	border-left:0.4em solid #fff;
	border-top:0.4em solid transparent;
	border-bottom:0.4em solid transparent;
}


/* Reverse */
.arrow.back {
	padding:0 0 0.1em 1.7em;
}
.arrow.back:before {
	right:auto;
	left:0;
}
.arrow.back:after {
	right:auto;
	left:0.4em;
	border-left:none;
	border-right:0.4em solid #fff;
}


/* Hovering */
.arrow:hover {
	color:#b5121b !important;
}

.arrow-small:after {
	content:' ';
	border-left:5px solid #000000;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	font-size:0;
	vertical-align: 5px;
	margin-left: 5px;
	
	-webkit-transition:all 0.3s ease 0s;
	transition:all 0.3s ease 0s;
}

.arrow-small:hover:after {
	border-left:5px solid #B5121B;
	margin-left:8px;
}

.arrow-large:after {
	content:' ';
	border-left:5px solid #000000;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	font-size:0;
	vertical-align: 5px;
	margin-left: 5px;
	
	-webkit-transition:all 0.3s ease 0s;
	transition:all 0.3s ease 0s;
}

.arrow-large:hover:after {
	border-left:5px solid #B5121B;
	margin-left:8px;
}

/* Back Arrow */

.arrow-back:before {
	display: inline-block;
	content:' ';
	border-right:5px solid #000000;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	font-size:0;
	margin-right: 7px;
	
	-webkit-transition:all 0.3s ease 0s;
	transition:all 0.3s ease 0s;
}

.arrow-back:hover:before {
	border-right:5px solid #ce1443;
	margin-right:10px;
}


/* Legal Services */

.arrow-legal {
	position:relative;
	display:inline-block;
	padding:0 1.7em 0.1em 0;
	color:inherit !important;
	line-height:1.2;

	-webkit-transition:all 0.7s ease 0s;
	transition:all 0.7s ease 0s;
}
.arrow-legal:before {
	content:' ';
	position:absolute;
	height:88%;
	width:1.3em;
	right:0;
	top:0;
	background:currentColor;
}
.arrow-legal:after {
	content:' ';
	position:absolute;
	margin:-0.3em 0 0;
	right:0.5em;
	top:50%;
	border-left:0.3em solid #fff;
	border-top:0.3em solid transparent;
	border-bottom:0.3em solid transparent;
}

/* Legal Services - Hovering */

.arrow-legal:hover {
	color:#b5121b !important;
}


/************************************************************
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%; }

/* Highlighting */
mark { background:#ffff99; }


/* 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;
}
/*Callouts*/
.callout {
	padding-top:10px;

}

#attorney-list .bio-link {
	color: #000;

}

#attorney-list .bio-link:hover {
		color: #B5121B;
}

