
/* Base */

body {
    margin: 0;
    padding: 0;
    background: #afdfe5 url(../images/background.jpg) top center no-repeat;
    color: #333;
    text-align: center;
    font-size: 90%;
    font-family: "lucida grande", "lucida sans", geneva, arial, sans-serif;
}
h1, h2, h3, h4, h5, h6 {
    margin: 2em 0 1em;
    padding: 0;
    line-height: normal;
    font-weight: bold;
}
h1 {
    font-size: 1.5em;
}
h2 {
    font-size: 1.3em;
}
h3 {
    font-size: 1.15em;
}
h4 {
    font-size: 1.10em;
}
h5 {
    font-size: 1.05em;
}
h6 {
    font-size: 1em;
}
p, li {
    line-height: 1.5em;
    margin: 0 0 1.5em;
}
ol, ul {
    margin: 0 0 2em 1.5em;
    padding: 0;
}
ul li {
    list-style: outside square;
}
a img {
    border: 0;
}


/* Layout */

#page {
    width: 960px;
    margin: 0 auto;
    padding: 20px;
    text-align: left;
}

#header {
    position: relative;
    margin: 0 0 15px;
}

.column {
    float: left;
}
.column.sidebar {
    width: 240px;
}
.column.left {
    margin-right: 20px;
}
.column.center {
    width: 440px;
}
.center-content {
    margin: 0 0 20px;
    padding: 20px;
    background-position: 0 0;
    background-repeat: no-repeat;
}
body.one-sidebar .column.center {
    width: 700px;
}
body.no-sidebars .column.center {
    float: none;
    width: auto;
}
body.one-sidebar .center-content,
body.no-sidebars .center-content {
    padding: 50px;
}
.column.center .section-title {
    margin: 0;
    padding: 10px 20px;
    background-color: #333;
    color: white;
    text-align: left;
    text-transform: lowercase;
    font-weight: bold;
}
body.front .column.center .section-title {
    padding: 0;
    background-color: transparent;
}
body.one-sidebar .column.center .section-title,
body.no-sidebars .column.center .section-title {
    padding-left: 50px;
    padding-right: 50px;
}
.column.right {
    margin-left: 20px;
}
br.clear {
    clear: both;
}


/* Content */

.container-inline div {
    display: inline;
}
.page-title {
    margin: 0 0 20px;
    padding: 0;
    font-size: 2em;
    font-weight: normal;
}
.subtitle {
    margin: 0 0 20px;
    padding: 0;
    font-size: 1.25em;
    color: #e76f34;
}

.links li {
    display: inline;
}


/* Tabs */

.tabs {
    margin: 0 0 20px;
    padding: 0;
    font-size: 11px;
}
.tabs li {
    display: inline;
    margin: 0 .5em 0 0;
    padding: 0;
}
.tabs li a {
    padding: .5em 1em;
    background-color: #eee;
}
.tabs .active a {
    background-color: #333;
    color: white;
}



/* Item lists */

ul.menu,
.item-list ul {
    margin: 0 0 0 1.25em;
    padding: 0;
}
ul.menu li,
.item-list li {
    margin: 0 0 .5em;
    padding: 0;
    line-height: normal;
}



/* Pager */

.item-list .pager {
    margin: 50px 0 0;
    padding: 0;
    text-align: center;
}
.pager li {
    list-style: none;
    display: inline;
    margin: 0;
    padding: 0;
    line-height: normal;
}
.center .pager .pager-current,
.center .pager a {
    border: 1px solid #ccc;
    padding: 5px;
}
    


/* Nodes */

.node {
    margin: 0;
    padding: 0;
}
.node.teaser {
    padding-bottom: 20px;
    border-bottom: 1px solid #666;
    margin-bottom: 20px;
    font-size: .9em;
}
.column.left .node.teaser {
    border-color: #0084a2;
}
.column.center .node.teaser {
    border-color: #7a6e81;
}
.column.right .node.teaser {
    border-color: #578937;
}
#main .node.teaser {
    border-bottom: 0;
}
.views-row-last .node.teaser {
    border-bottom: 0;
    margin-bottom: 0;
}
.more-link {
    padding: 10px;
    background-color: rgba(0, 0, 0, .25);
    font-size: 11px;
    text-transform: lowercase;
}
#page .more-link a {
    font-weight: bold;
    color: #FCEE21;
}
.node .title {
    margin: 0 0 10px;
    padding: 0;
    font-size: 1.25em;
}
.node .author {
    min-height: 68px;
    padding-bottom: 10px;
    font-size: .9em;
}
.comment .author,
.node.teaser .author {
    min-height: 36px;
}
.author .picture {
    float: left;
    margin: 0 10px 10px 0;
    border: 2px solid #666;
}

.author .picture img {
    display: block;
    margin: 0;
    padding: 0;
}
.comment .author .picture,
.comment .author .picture img,
.node.teaser .author .picture,
.node.teaser .author .picture img {
    width: 32px;
    height: 32px;
}
.author p {
    margin: 0;
    padding: 0;
}
.author a {
    color: #333;
}
.author .name {
    font-weight: bold;
}
.node ul.inline {
    display: block;
    margin: 0;
    padding: 0;
    font-size: .9em;
    line-height: normal;
}
.node ul.inline li {
    display: inline;
    list-style: none;
    margin: 0 .5em 0 0;
    padding: 0;
}
.node ul.inline li a {
    color: #333;
    font-weight: bold;
}


/* Comments */

#comments {
    margin-top: 50px;
    font-size: .9em;
}
#comments .comment {
    margin: 0 0 10px;
    padding: 20px;
    background-color: #eee;
}
#comments .comment.staff {
    background-color: #a393ac;
}
.comment h3 {
    margin-top: 0;
    padding-top: 0;
}




/* Projects */

.page-portfolio #page-title {
    display: none;
}
.node.project .page-title .label {
    margin: 0 5px 0 -10px;
    padding: 5px 10px;
    background-color: #e76f34;
    background-color: #00B0D8;
    color: white;
    font-size: .7em;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.node.project h3 {
    color: #00B0D8;
}
.node.project .solution {
    clear: both;
    margin: 0 -20px 20px;
    padding: 20px;
    background-color: #00B0D8;
    color: white;
}
.node.project .solution h3 {
    margin-top: 0;
    padding-top: 0;
    color: #333;
}
.node.project .description {
    font-size: 1.15em;
}
.node.project .project-images {
    border: 5px solid #eee;
    padding: 10px;
}
.node.project .project-images.single {
    float: right;
    margin: 0 -20px 20px 20px;
}
.node.project .project-images.multiple {
    margin: 0 -20px 20px;
    max-height: 250px;
    overflow: hidden;
}
.project-images.multiple .jcarousel-container-horizontal {
    width: 610px;
    height: 180px;
}
.project-images.multiple .jcarousel-clip-horizontal {
    width: 610px;
    height: 180px;
}
.project-images.multiple .jcarousel-item {
    width: 300px;
    height: 180px;
    text-align: center;
}

.jcarousel-skin-tango .jcarousel-item-horizontal {
    margin-right: 10px;
}
.jcarousel-skin-tango .jcarousel-item-placeholder {
    background: #fff;
    color: #000;
}
.node.teaser.project .image {
    border: 0;
    padding: 0;
    margin: 0 0 10px;
}
.project-images .thumbnails {
    position: relative;
    height: 35px;
    margin: 0;
    padding: 20px 0 0;
    text-align: center;
    font-size: 11px;
}
.project-images .thumbnails li {
    list-style: none;
    display: inline-block;
    margin: 0 .5em 0 0;
    padding: 0;
}
.project-images .thumbnails a {
    display: block;
    height: 27px;
    border: 2px solid #eee;
    padding: 2px;
    overflow: hidden;
    text-align: center;
}
.project-images .thumbnails a img {
    display: block;
    margin: 0 auto;
    opacity: .5;
}
.project-images .thumbnails a:hover {
    border-color: #999;
}
.project-images .thumbnails a:hover img {
    opacity: .75;
}
.project-images .thumbnails .active a {
    border-color: #00B0D8;
}
.project-images .thumbnails .active a img {
    opacity: 1;
}

#main .services h3 {
    color: #74B74A;
}
#main .services .node {
    margin: 0 -20px 10px;
    padding: 20px;
    background-color: #74B74A;
    color: white;
}
#main .services .row {
    margin: 0 -40px 10px -20px;
}
#main .services .row .node {
    margin: 0 0 10px;
}
body.portfolio #main .services .row .service {
    margin: 0 20px 20px 0;
    width: 160px;
    float: left;
}
body.portfolio #main .services .row {
    clear: left;
}


.view-display-id-block_2 ol {
    margin: 0;
    padding: 0;
}
.view-display-id-block_2 ol li {
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
    font-size: .9em;
}



/* Services */

body.page-services .center-content {
    padding-top: 150px;
    background-image: url(../images/header1.jpg);
}
.center .view-services .view-header {
    color: #333;
    font-size: 1.15em;
}
.center .view-services .views-row {
    margin: 0 -20px 10px;
    padding: 20px;
    background-color: #598542;
    color: #eee;
}
.center .view-services .node-teaser {
    margin: 0;
    border: 0;
    padding: 0;
}
.center .view-services .node-teaser .content,
.center .view-services .node-teaser .content *,
.center .view-services .node-teaser .links {
    display: inline;
}
#center .view-services .views-row a {
    color: black;
}
#center .view-services .views-row .inline a {
    color: #FCEE21;
}

.featured-services .views-row {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #666;
    font-size: .9em;
}
.featured-services .views-row .views-field-field-photo-imceimage-path {
    margin: 0 0 10px;
}
.featured-services .views-row .views-field-title {
    font-size: 1.25em;
    font-weight: bold;
    margin: 0 0 10px;
    padding: 0;
}
.featured-services .views-row .teaser {
}



/* About */

body.about-home .center-content {
    padding-top: 150px;
    background-image: url(../images/header2.jpg);
}


/* People */

.node-type-person .column.center .name-and-title {
    margin: 0 0 50px;
}
.node-type-person .column.center .name,
.node-type-person .column.center .title {
    margin: 0;
    padding: 0;
}
.node-type-person .column.center .name {
    color: #666;
    font-weight: normal;
}
.node-type-person .column.center .title {
    margin-top: .5em;
    font-size: .9em;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: bold;
    color: #e76f34 !important;
}
.node-type-person .column.center .photo {
    position: relative;
    float: left;
    clear: left;
    width: 250px;
    margin: -50px 20px 10px -50px;
}
.node-type-person .column.center .photo img {
    display: block;
}
.node-type-person .column.center .contact-info {
    float: left;
    clear: left;
    width: 190px;
    margin: -10px 20px 20px -50px;
    padding: 10px 10px 10px 50px;
    background-color: #e76f34;
    font-size: .9em;
    color: white;
}
.node-type-person .column.center .contact-info dt {
    font-weight: bold;
    color: #333;
}
.node-type-person .column.center .contact-info dd {
    margin: 0 0 1em;
    padding: 0;
}



/* Person */

.person {
	padding: 0;
	zoom: 1;
}
.person .info {
	float: right;
	width: 275px;
	margin-right: 25px;
	padding: 25px 0;
}
.person .photo-and-links {
	float: left;
	width: 225px;
}
.person .block {
	margin-bottom: 0;
}
	

.person .name-and-title .name-and-title2 {
	position: absolute;
	left: 0;
	bottom: 25px;
}
.person h1 {
	margin-top: 25px;
	font-size: 24px;
	font-weight: normal;
}
.person .title {
	margin-top: 10px;
	color: #e76f34;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.person .bio {
	margin-top: 25px;
}

.person .photo {
}


/* Staff list */

.staff-list .name {
	font-weight: bold;
}
.staff-list .title {
	margin-top: 3px;
	font-size: 10px;
}
.staff-list p {
	margin: 0;
}





/* Blocks */

.block .title, .block-title {
    margin-top: 0;
    padding-top: 0;
}
.after-content .block,
.sidebar .block {
    margin: 0 0 20px;
    padding: 20px;
}
.block a {
    color: #FCEE21;
}

.block.featured-services .block-title,
.block.recent-projects h2.title {
    text-align: center;
}


/* Twitter */

.sidebar .block.twitter {
    background-color: #333;
    color: white;
    font-size: .9em;
    overflow: hidden;
}
.block.twitter ul {
    margin: 0;
    padding: 0;
}
.view-tweets .views-row,
.block.twitter li {
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
}
.tweet p {
    margin: 0;
    padding: 0;
}
.tweet a {
    color: white;
}
.tweet .author {
    margin-top: 10px;
    font-size: .9em;
    font-weight: bold;
    color: #999;
}
.tweet .icon {
    clear: left;
    float: left;
    margin: 0 10px 10px 0;
}
.tweet .author span {
    white-space: nowrap;
}
.tweet .author a {
    color: #FCEE21;
}





#banner {
    height: 200px; 
    position: relative;
    margin: 0 0 10px;
    padding: 50px 50px 50px 500px;
    background: #009ac2 url(../images/home/staff.jpg) 0 0 no-repeat;
    background-color: rgba(0, 176, 216, .75);
}
#banner h1 {
    margin: 0 0 20px;
    padding: 0;
    color: white;
}
#banner p {
    color: #AFDFE5;
    color: white;
    font-size: 1.2em;
    font-weight: bold;
}



/* Logo */

#home-link {
    position: absolute;
    left: 15px;
    bottom: -10px;
    margin: 0;
    padding: 0;
    line-height: normal;
}
#home-link a, #home-link img {
    display: block;
    width: 70px;
    height: 60px;
}


/* Primary links */

#primary-links {
    background-color: #caeaee;
    text-transform: lowercase;
    padding-left: 100px;
}
body.front #primary-links {
    padding-left: 0;
}
#primary-links ul {
    margin: 0;
    padding: 10px;
}
#primary-links li {
    list-style: none;
    display: inline;
    margin: 0 10px 0 0;
    padding: 0;
}
#primary-links a {
    color: #333;
    font-weight: bold;
}


.block-search {
    position: absolute;
    right: 0;
    bottom: 0;
}
.block-search {
    margin: 0;
    padding: 10px 
}
.block-search label,
.block-search h2 {
    display: none;
}



/* Quotes browser */

#quotes-browser {
    position: relative;
    margin: 0 0 10px;
    padding: 0 50px;
    background-color: #e76f34;
    color: #FDBB63;
    text-align: center;
}
#quotes-browser h2, #quotes-browser .pager-current {
    position: absolute;
    left: -999px;
}
#quotes-browser ul, #quotes-browser li {
    margin: 0;
    padding: 0;
    list-style: none;
}
#quotes-browser .view-content .item-list li {
    padding: 1em;
}
#quotes-browser p {
    margin: 0;
    padding: 0;
}
#quotes-browser .quote {
    font-weight: bold;
}
#quotes-browser .views-row-first .quote {
    font-size: 1.25em;
}
#quotes-browser .attribution {
    color: white;
    font-size: .8em;
    text-align: right;
}
#quotes-browser .pager li {
    display: block;
    position: absolute;
    top: 40%;
    color: black;
}
#quotes-browser .pager .pager-previous {
    left: 20px;
}
#quotes-browser .pager .pager-next {
    right: 20px;
}
#quotes-browser .views-admin-links {
    position: absolute;
    top: 5px;
    left: 5px;
    margin: 0;
    padding: 0;
}
#quotes-browser .views-admin-links a {
    color: white;
}


/* Footer */

#old-footer {
    clear: both;
    background-color: #416971;
}
#footer {
	text-align: center;
    padding: 25px 0;
}
#footer .page {
    width: 960px;
	margin: 0 auto;
	text-align: left;
	background: url(../images/footer/footer-bg.gif) 0 0 repeat-y;
	color: white;
	font-size: 13px;
	overflow: hidden;
}
#footer .column {
	float: left;
	width: 250px;
	margin: 0 25px;
}
#footer .top-cap, #footer .bottom-cap { display: none; }
#footer .top-mask, #footer .bottom-mask { display: none; }
#footer .block .block-body {
    background-color: transparent;
    margin: 0 0 25px;
    padding: 0;
}
#footer h2 {
	color: #f68c58;
	border: 0;
    margin: 0;
	padding: 0 0 10px;
	background: none;
    font-size: 16px;
    font-weight: normal;
    text-transform: lowercase;
}
#footer ul {
    margin: 0;
    padding: 0 0 1px;
}
#footer ul li {
	list-style: none;
	margin: 5px 0 0;
	padding: 0 0 0 15px;
	background: url(../images/bullets/footer.gif) 0 4px no-repeat;
}
#footer #user-login-form ul li {
        background: none;
        padding-left: 0px;
}
#footer a {
	color: #bfd73b;
	color: #afdfe5;
}
#footer div.address {
	padding-bottom: 1em;
}
#footer .more-link {
    background: transparent;
}

#footer .contact-info {
    color: white;
}
#footer .contact-info .name {
    font-weight: bold;
    font-size: 1.25em;
}
#footer .contact-info .address,
#footer .contact-info .phone-numbers,
#footer .contact-info .email {
    margin-top: .1em;
}
#footer .contact-info abbr {
    border-bottom: 0;
}






