/*
Theme Name: PacielloTheme (TPG 2015)
Theme URI: http://www.paciellogroup.com
Description: Responsive Bootstrap-based WP custom theme
Author: Patrick H. Lauke
Author URI: http://www.splintered.co.uk
Version: 1.0
Tags: responsive, bootstrap
*/

@import url('bootstrap/css/bootstrap.min.css');
@import url('font-awesome/font-awesome.min.css');

@font-face{font-family:'Roboto Slab';font-style: normal;font-weight:100;src: local('Roboto Slab Thin'), local('RobotoSlab-Thin'), url(font/robotoslab-thin.woff) format("woff")}
@font-face{font-family:'Roboto Slab';font-style: normal;font-weight:300;src: local('Roboto Slab Light'), local('RobotoSlab-Light'), url(font/robotoslab-light.woff) format("woff")}
@font-face{font-family:'Roboto Slab';font-style: normal;font-weight:400;src: local('Roboto Slab Regular'), local('RobotoSlab-Regular'), url(font/robotoslab-regular.woff) format("woff")}
@font-face{font-family:'Roboto Slab';font-style: normal;font-weight:700;src: local('Roboto Slab Bold'), local('RobotoSlab-Bold'), url(font/robotoslab-bold.woff) format("woff")}

::-moz-selection { background: #5B5B5B; color: #fff; }
::selection { background: #5B5B5B; color: #fff; }

.container .jumbotron {
    font-size: 0.85em;
    padding: 1em;
}

@media (min-width: 768px) {
    .container .jumbotron {
        font-size: 1em;
        padding: 2em;
    }
}

@media (min-width: 1200px) {
    .container {
        width: 970px;
    }
}

html {
    font-size: 0.95em;
}

body {
    font-size: 1em;
}

h1 {
    font-size: 2.5em;
}

h2 {
    font-size: 1.5em;
}

h3, h4 {
    font-size: 1.2em;
}

h5, h6 {
    font-size: 1em;
}

p, ul, ol {
    margin-bottom: 1.4em;
}

main li {
    margin-bottom: 0.25em;
}

a.btn {
    text-decoration: none;
    background: #1b75bc;
}


body > footer {
    margin-top: 2.5em;
    background: #0E3B5E;
    color: #CFCFCF;
    padding: 2.5em 0;
}

body > footer a {
    color: #7AADD9;
    transition: all 0.15s; /* soften the focus/hover a tad */
}

a {
    color: #1b75bc;
}

body > footer a:hover,
body > footer a:focus {
    color: #bcd6ec;
}

header {
    background: #F7F7F7;
    padding: 1em 0 0.5em 0;
    margin-bottom: 2.5em;
}

nav .current_page_item a,
nav .current_page_parent a,
.navbar-toggle {
    border-bottom: 0.3em #999 solid;
    padding-bottom: 12px;
    font-weight: bold;
}

.nav>li>a:hover,
.nav>li>a:focus {
    outline: none;
    background-color: #e0e0e0;
    color: #444;
}

.navbar-toggle {
    background: #ddd;
    color: #000;
    border: 1px #444 solid;
    outline: none;
    font-weight: bold;
    font-size: 0.925em; /* hacky, but fixes display of the hamburger icon on desktop */
}

.navbar-toggle:hover,
.navbar-toggle:focus {
    background: #eee;
}

ul.nav.navbar-nav {
    margin-left: 2em;
    text-transform: uppercase;
    float: right;
    font-size: 0.9em;
}

ul.nav.navbar-nav>li>a {
    transition: all 0.15s; /* soften the focus/hover a tad */
    margin: 0 0.1em;
    padding: 0.3em 0.4em;
}

.container>.navbar-header {
    margin: 0;
}

.navbar-toggle {
    margin-right: 0;
    border-radius: 0.5em;
    margin-top: 0;
    padding: 0.5em 1em;
}

.navbar-toggle[aria-expanded=true] .fa::before {
    content: "\f00d";
}

/* fix for Chrome's "show focus outline on tabindex=-1 items that were focused" */

h1:focus, h2:focus, h3:focus, p:focus, div:focus { outline: none; }

/* special "small screen" styling for the disclosure widget navigation */

@media (max-width: 767px) {

    header {
        padding: 1em 0 0 0;
    }

    header .container {
        border-bottom: 1px #DDD solid;
    }

    header .container>.navbar-header {
        margin: 0 0 1em 0;
    }

    nav#primaryNav {
        background: #fafafa;
        border-top: 1px #ddd solid;
    }

    .jumbotron h1 {
        font-size: 2em !important;
    }

    ul.nav.navbar-nav {
        margin: 1em;
        float: none;
    }

    ul.nav.navbar-nav>li>a {
        padding: 1em;
    }

    nav .current_page_item a, nav .current_page_parent a {
        border-bottom: none;
        border-left: 0.5em #666 solid;
        margin-left: -0.5em;
        font-weight: bold;
        background: #f0f0f0;
    }

}

@media (max-width: 321px) {
    .navbar-toggle {
        padding: 0.25em 0.4em;
    }
}

.jumbotron h1,
body> footer h2 {
    margin-top: 0.25em;
}

table caption {
    padding: 1em;
    font-weight: bold;
}

/* breadcrumbs */
ul#breadcrumbs {
    list-style: none;
    background: #fafafa;
    font-size: 0.8em;
    margin-bottom: 1em;
    font-weight: bold;
    color: #444;
    padding: 0.5em 1em;
}

ul#breadcrumbs li {
    display: inline;
    margin-right: 0.3em;
}

ul#breadcrumbs li::after {
    content: ' >';
}

ul#breadcrumbs li.current::after {
    content: '';
}


/* footer */

.col-md-4 iframe {
    width: auto !important;
    max-width: none !important;
}

.col-md-4 .twitter-timeline {
    /* font-size: 12px; */
}

ul.social {
    padding-left: 0;
}

ul.social li {
    display: inline;
    font-size: 2em;
    margin-right: 0.5em;
}

.legal { margin-top:1em; font-size: 0.95em; color:#aaa }


/* for skip link */

.container { position: relative; }
#skippy {
    display: block;
    position: absolute;
    top: 0; left: 0;
    padding: 1em;
    background-color: #1b75bc;
    color: #fff;
    z-index: 10;
    outline: none;
}
div#content:focus { outline:none; }

main a {
    text-decoration: underline;
}

code {
    background: #eee;
    color: #444;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto Slab', Helvetica, Arial, sans-serif;
}

main h2 {
   color: #333;

}

main h3, main h4, main h5, main h6 {
   color: #1b75bc;
}

.widget.randomtext {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px #EEE solid;
}

.randomtext {
    background: #F4F4F4

;
    border-radius: 0.5em;
    padding: 0.25em;
}

.col-md-4 .randomtext {
    margin-top: 1.25em;
}

.randomtext blockquote {
    border: none;
    margin-bottom: 0;
    font-size: 0.8em;
}

.randomtext blockquote p {
    margin-bottom: 1em;
}

.randomtext .fa.fa-quote-left {
    padding-left: 0.4em;
    padding-top: 0.55em;
    color: #999;
}


.randomtext cite {
    padding: 0;
    display: block;
    font-size: 0.8em;
    font-weight:bold;
    color:#555;
    font-style: normal;
}

/* homepage */
.jumbotron {
    /* background-color: #2F3F4E; */
    /* background-color: #324F69; */
    background-color: #1b75bc;
    color: #fff;
    border-radius: 0.3em;
}

.jumbotron h1 {
    font-size: 2.75em;
}

.jumbotron p {
    font-size: 1.25em;
}

main .callout .fa {
    color: #aaa;
}

main .callout a .fa {
    color: #fff;
}

/* mainly for our about/staff page */

#biogs [data-toggle="collapse"] {
    outline: none;
    text-decoration: none;
}

#biogs [data-toggle="collapse"] .name {
    text-decoration: underline;
    margin-bottom: 0;
    font-size: 1.2em;
    display: block;
    margin-top: 0.75em;
}

#biogs [data-toggle="collapse"] .role {
    font-size: 0.85em;
    display: block;
}

#biogs [data-toggle="collapse"] img {
    float: left;
    margin-right: 1em;
    border-radius: 50%;
    transition: all 0.2s;
    border: 8px #fff solid; ;
}

#biogs [data-toggle="collapse"]:focus img,
#biogs [aria-expanded="true"] img {
  border: 4px #1B75BC solid;
}

#biogs [data-toggle="collapse"] .namerole {
    display:block;
}

@media (max-width: 767px) {
    #biogs [data-toggle="collapse"] .namerole {
        clear: both;
    }
}

#biogs .panel-collapse div {
    background: #F4F4F4

;
    padding: 1em 2em;
    margin: 1em;
    border-radius: 0.5em;
}

#team dt {
    font-weight: normal;
    margin-top: 0.35em;
}

#team dd {
    font-size: 0.75em;
    color: #767676;
}

/* mainly for our resources/download pages */

#resources dt {
    font-weight: normal;
}

#resources dd {
    font-size: 0.75em;
    margin-left: 1.75em;
    margin-bottom: 1.5em;
}

#download ul {
    list-style:none;
    margin:0;
    padding:0;
}

#download .btn .fa {
    position: absolute;
    left: 0.25em;
}

#download .btn {
    text-align: left;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    margin: 0.25em 0;
    white-space: normal;
    position: relative;
    padding-left: 3em;
}

#download .btn span.dl-label {
    display: block;
    text-align: left;
}

#download .btn span.dl-info {
    font-size: 0.85em;
    text-align: left;
}

#download .btn code {
    background: inherit;
    color: inherit;
    padding: 0;
}

div#versions {
    font-size: 0.75em;
}

ul.resources {
    list-style: none;
    padding: 0;
}
ul.resources li {
    margin-bottom: 0.75em;
}

/* for services page */

div.service {
    border-bottom: 1px #eee solid;
    margin: 1em 0;
    padding: 1em 0;
}

.service.premium {
    background: #F4F4F4

;
    border-radius: 0.5em;
    padding: 1em;
}

div.service h2 {
    margin-top: 0;
}

div.service .fa {
    color:#bbb;
}

div.additional {
    margin: 2em 0;
}

.additional p {
    margin-left: 2.4em;
}

div.note {
    background: #F4F4F4

;
    padding: 1.5em;
    font-size: 1.25em;
    margin: 1em 0;
    border-radius: 0.5em;
}

.note .fa {
    color: #aaa;
}

/* for contact page */
#addresses ul {
    list-style: none;
    padding: 0;
}

#addresses .fa {
    color: #767676;
}

#gmap_canvas {
    margin-top: 1.5em;
}

#gmap_canvas img {
    max-width:none!important;
    background:none!important;
}

/* blog styles */

h2 a {
    text-decoration: none;
}

.screen-reader-text { display:none; }
blockquote { font-size: 1em; }
.meta {
    font-size: 0.75em;
    margin: 0;
}

article .meta {
    margin-bottom: 1em;
    padding-bottom: 1em;
    border-bottom: 1px #eee solid;
}

article .taxonomy ul li {
    display: inline;
    margin: 0 0.5em 0 0;
    padding: 0 0.5em 0 0;
}

article .taxonomy ul {
    list-style: none;
    display: inline;
    margin: 0;
    padding: 0;
}

article .taxonomy ul li .fa {
    margin: 0 0.2em 0 0;
    color: #666;
}

article .taxonomy ul li a {
    color: #222;
    text-decoration: none;
}

article .taxonomy ul li a:focus,
article .taxonomy ul li a:hover {
    color: #222;
    text-decoration: underline;
}

img.alignleft {
    float: left;
    margin: 0 1em 1em 0;
}

img.alignright {
    float:right;
    margin: 0 0 1em 1em;
}

.comment-form label,
.comment-form input,
.comment-form textarea {
    display: block;
    max-width: 100%;
    box-sizing: border-box;
}

.form-allowed-tags {
    font-size: 0.75em;
}

main article {
    overflow: hidden; /* for long urls etc */
}

main article pre {
    overflow: auto; /* code blocks */
}

main img { 
    max-width: 100%;
}

main .table-scroller {
    overflow: auto; /* automagic wrapper element added from script.js to article tables */
}

main .pager a { text-decoration: none; }

.singlepost h1 {
    font-size: 2em;
}

.singlepost h2 {
    font-size: 1.25em;
}

.singlepost h3,
.singlepost h4,
.singlepost h5,
.singlepost h6 {
    font-size: 1em;
}

article iframe {
    border: 1px #ddd solid;
}

#entry-author-info {
    background: #fafafa;
    border-radius: 0.5em;
    padding: 2em;
    position: relative;
    font-size: 0.8em;
    line-height: 1.75;
}

#author-description h2 {
    margin-top: 0;
}

#author-avatar {
    float: left;
    margin: 0 1.5em 1em 0;
}

#author-description {
    margin-left: 0;
}

@media (min-width: 768px) {

    #author-avatar {
        position: absolute;
        top: 2em;
        left: 2em;
        float: none;
        margin: 0;
    }

    #author-description {
        margin-left: 130px;
    }

}

.comment-list {
    padding: 0;
}

.comment {
    padding: 0.5em 0;
    margin: 0.5em 0;
    border-bottom: 1px #eee solid;
}

.comment-metadata {
    font-size: 0.75em;
}

.comment-content {
    margin: 0.5em 0;
}

.comment-author.vcard img {
    float: left;
    margin-right: 0.5em;
}

.widget_recent_entries ul {
    list-style: none;
    padding: 0;
}

.widget_recent_entries ul li {
    border-bottom: 1px #eee solid;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
}

form.search-form {
    margin-top: 1.5em;
}

label { vertical-align: bottom; }
.search-form .btn { vertical-align: top; }

/* Luxbox custom bootstrap-based lightbox by PHL */

#screenshots ul {
    list-style: none;
    margin: 1em 0;
    padding: 0;
}

#screenshots ul li {
    display: inline;
}

.modal-content img { max-width: 100%; max-height: 80%; display: block; margin: 0 auto; }
.modal-content p { text-align: center; margin-top: 0.5em;}
.modal-content { box-shadow: none; -webkit-box-shadow: none; padding: 1em; border: 1px #999 solid; border-radius: 0.25em; }
.modal-backdrop { background-color: #fff; }
.modal-backdrop.in { opacity: .9; }
.modal.in .modal-dialog { z-index: 2000; }

a.luxbox img {
    border: 1px #ccc solid;
    padding: 0.25em;
}

small.legal { font-size: 0.65em; color: #666;}