/*
Theme Name: James Smith
Description: Built solely for use by James Smith
Author: Hut Six Digital
Author URI: https://www.hutsixdigital.co.uk
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Version: 1.0

*/

@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700');

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
}

hr {
    margin-top: 30px;
    margin-bottom: 30px;
    opacity: 0.8;
}

img {
    vertical-align: top;
}

/**********************************************************/
/* TYPOGRAPHY
/**********************************************************/

body,
p,
ul,
ol,
li,
h1,
h2,
h3,
h4,
label,
.label,
button,
.button,
.top-bar-section ul li > a,
.top-bar-section .dropdown li a,
.top-bar .toggle-topbar a,
table tr th, 
table tr td {
    font-family: "Roboto";
    font-weight: 400;
    font-size: 1rem;
    text-decoration: none;
}

.top-bar-section ul li > a:hover {
    text-decoration: underline;
}

p,
ul,
li,
label {
    color: #000;
}

p:last-child {
    margin-bottom: 0;
}

li a,
p a,
p a:hover {
	color: #526969;
	text-decoration: underline;
}



label {
    font-weight: 300!important;
}

.top-bar-section ul li > a {
	font-size: 1.1rem;
    font-weight: 400;
    transition: 300ms all ease;
}

h1 {
    color: #000;
    font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: 400;
}

h2 {
    color: #000;
    font-size: 1.2rem;
    line-height: 1.2rem;
    margin-bottom: 15px;
    font-weight: 700;
}

h3 {
    color: #000;
    font-size: 1rem;
    font-weight: 700;
}

h4 {
    color: #000;
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

p.lead {
    font-size: 1.2rem;
}

.site-title {
	font-weight: 500;
	font-size: 1.8rem;
}

.label {
    background-color: #FFF;
    color: #222;
}

.wrapper {
    float: left;
    width: 100%;
    position: relative;
}

/**********************************************************/
/* HEADER
/**********************************************************/

.header {
    background: #FFF;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.05);
    padding-top: 20px;
    z-index: 1000;
}

.main-menu {
    background: #9dc4c4;
    padding-top: 5px;
    padding-bottom: 5px;
}

.logo {
    margin-bottom: 20px;
}

.phone {
    margin-top: 15px;
    margin-bottom: 20px;
    text-align: center;
}
.phone p {
    margin: 0 0.9375rem;
}

.phone-number {
    font-size: 1.5rem;
}

@media only screen and (min-width: 40.0625em) {
	.logo {
		text-align: left;
	}
    .phone {
        text-align: right;
    }
}

/**********************************************************/
/* CONTENT
/**********************************************************/

.circle {
    border-radius: 200px;
    -moz-border-radius: 200px;
    -webkit-border-radius: 200px;
}

.hero {
    padding-top: 20vh;
    padding-bottom: 20vh;
}

.hero p {
    font-size: 1.4rem;
    color: #FFF;
}

.page-title {
    background: #F4F4F4;
    padding-top: 20px;
    padding-bottom: 20px;
    z-index: -1;
}

.normal {
    padding-top: 40px;
}

.normal .columns {
    margin-bottom: 30px;
}

.blog-post img {
    margin-bottom: 20px;
}

.blog-post h2 {
    color: #61cfaf;
    margin: 0;
}

.blog-post img:hover {
    filter: brightness(90%);
}

.date {
    opacity: 0.5;
}

.sidebar img {
    max-width: 200px;
}

/**********************************************************/
/* FOOTER
/**********************************************************/

.footer {
    background: #89aaaa;
    padding-bottom: 20px;
}

.footer p {
    font-size: 0.8rem;
    margin: 0;
}

.footer p,
.footer a {
    color: #FFF;
}

.footer img {
    width: 100%;
}

/**********************************************************/
/* FORMS
/**********************************************************/

button,
.main-content .button,
.button,
button:hover,
button:focus,
.button:hover,
.button:focus {
    -webkit-appearance: none;
    -moz-appearance: none;
    font-weight: 300;
    line-height: normal;
    margin: 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1rem;
    background: #88aaaa;
    border: solid 3px #88aaaa;
    color: #FFF;
    transition: 300ms ease all;
    outline: none;
    padding: 10px 20px;
}

button:hover,
button:focus,
.main-content .button:hover,
.button:hover,
.main-content .button:focus,
.button:focus {
    color: #FFF;
    background: #88aaaa;
    background-color: #88aaaa;
    border: solid 3px #88aaaa;
}

.button i {
    margin-left: 8px;
}

.gform_wrapper {
    margin: 0!important;
}

body .gform_wrapper ul li.gfield {
    margin-top: 0!important;
}

.gform_wrapper .gform_footer {
    margin-top: 0!important;
    padding-top: 0!important;
    margin-bottom: 30px!important;
}

/**********************************************************/
/* BLOCKQUOTES
/**********************************************************/

blockquote {
    background: rgba(157,196,196, 0.5);
    margin: 40px 0 20px 0;
    padding: 20px;
    border-left: none;
    position: relative;
    border-radius: 3px;
}

blockquote:before {
    font-family: Georgia;
    content: "\201C";
    position: absolute;
    top: -20px;
    background: #89aaaa;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 3rem;
    line-height: 100%;
    height: 2.5rem;
    color: #fff;
}

blockquote p {
    font-size: 1.2rem;
    font-style: normal;
    padding: 0 0 20px 0;
    margin: 0;
}

blockquote p:last-child {
    padding-bottom: 0;
}

blockquote cite {
    display: block;
    font-size: 0.8125rem;
    color: #666;
    text-transform: uppercase;
    font-style: normal;
}

blockquote cite:before {
    content: "";
}

blockquote cite a,
blockquote cite a:visited {
    color: #999;
}

blockquote,
blockquote p {
    line-height: 1.6;
    color: #000;
}

/**********************************************************/
/* WP STANDARD
/**********************************************************/

.alignleft {
    float: left;
    margin: 0.375em 1.75em 1.75em 0;
}

.alignright {
    float: right;
    margin: 0.375em 0 1.75em 1.75em;
}

.aligncenter {
    clear: both;
    display: block;
    margin: 0 auto;
}

/**********************************************************/
/* COMMENTS
/**********************************************************/

.comments-area ol.comment-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.comments-area ol.children {
    list-style: none;
    margin: 0 0 0 30px;
    padding: 0;
}

.comments-area .comment-body {
    float: left;
    width: 100%;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: solid 1px #EEE;
}

.comments-area .vcard {
    border: none;
    padding: 0;
    margin: 0 5% 0 0;
    width: 10%;
    float: left;
    text-align: center;
}

.comments-area .vcard img {
    width: 100%;
    border-radius: 5rem;
}

.comments-area .comment-content {
    width: 85%;
    float: left;
}

.comments-area .reply {
    width: 100%;
    float: left;
    text-align: right;
    margin-bottom: 15px;
}

.comments-area .reply a {
    border: solid 1px #111;
    padding: 5px;
}

.comments-area .pingback {
    width: 100%;
    float: left;
}

.comment-metadata {
    font-size: 0.85rem;
}

.comment-respond {
    width: 100%; 
    float: left;
}

/**********************************************************/
/* TABLES
/**********************************************************/

table {
    background: #f2f2f2;
    border: none;
    margin-bottom: 30px;
    table-layout: auto;
}

table caption {
    background: transparent;
    color: #222222;
    font-size: 1rem;
    font-weight: bold;
}

table thead {
    background: #175ca0;
}

table thead tr th,
table thead tr td {
    color: #FFF;
    font-size: 1.1rem;
    font-weight: 400;
    padding: 0.5rem 0.625rem 0.625rem;
}

table tr th,
table tr td {
    color: #000;
    font-size: 1.1rem;
    padding: 0.5625rem 0.625rem;
    text-align: left;
}

table tr.even,
table tr.alt,
table tr:nth-of-type(even) {
    background: #f2f2f2;
}

table thead tr th,
table tfoot tr th,
table tfoot tr td,
table tbody tr th,
table tbody tr td,
table tr td {
    display: table-cell;
    line-height: 1.125rem;
}

/**********************************************************/
/* ACCORDION
/**********************************************************/

.accordion {
    margin: 0;
}

.accordion:before,
.accordion:after {
    content: " ";
    display: table;
}

.accordion:after {
    clear: both;
}

.accordion .accordion-navigation,
.accordion dd {
    display: block;
    margin-bottom: 0 !important;
}

.accordion .accordion-navigation.active > a,
.accordion dd.active > a {
    background: rgba(157,196,196, 0.5);
}

.accordion .accordion-navigation > a,
.accordion dd > a {
    background: rgba(157,196,196, 0.25);
    color: #222222;
    display: block;
    font-family: "Roboto";
    font-size: 1rem;
    padding: 1rem;
    transition: 300ms ease all;
    border-bottom: solid 10px #fff;
}

.accordion .accordion-navigation > a:hover,
.accordion dd > a:hover {
    background: rgba(157,196,196, 0.5);
}

.accordion .accordion-navigation > .content,
.accordion dd > .content {
    display: none;
    padding: 0.9375rem;
}

.accordion .accordion-navigation > .content.active,
.accordion dd > .content.active {
    background: #FFFFFF;
    display: block;
}