/*  
Theme Name: Toby Gaskin  Theme
Theme URI: http://sww.co.nz/
Description: Custom responsive theme for Toby Gaskin Builders by Stellar Web Works
Version: 1.0
Author: Aidan Curran
Author URI: http://sww.co.nz/
*/
html,body {
	margin:0;
	padding:0;
   text-align: center;
	font-family: "trebuchet ms", trebuchet, arial, helvetica, sans-serif;
   font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
   font-family : "Times New Roman", Times, serif;
	font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-family: "Open Sans", sans-serif;
   font-size: 20px;
   color: #454545;
}
h1, h2, h3, h4 {
   color: #AAB103;
	font-family: "News Cycle", sans-serif;
}
h1 {
   font-size: 32px;
   margin: 25px 0;
}
h2 {
   font-size: 28px;
   margin: 25px 0;
}
h3 {
   font-size: 24px;
}
h4 {
   font-size: 20px;
}
a {
   color: #AAB103;
}
a:hover {
   color:  #454545;
}
p.leading {
   color: #AAB103;
   font-weight: bold;
}
p.calltoact a {
   font-size: 24px;
   font-weight: bold;
   text-decoration: none;
}
p.nomargin {
   margin: 0;
}
img {
   border: 0;
   max-width: 100%;
   height: auto;
}
div {
   text-align: left;
}
ul {
   list-style-type: none;
   padding: 0px;
   margin: 7px 0 7px 15px;
}
ul li {
   background-image: url(images/bullet.gif);
   background-repeat: no-repeat;
   background-position: 0px 8px;
   padding-left: 20px;
   margin-bottom: 15px;
}
ul.large li {
   line-height: 2em;
   font-size: 20px;
   background-position: 0px 15px;
   margin: 5px 0;
}
td {
   vertical-align:top;
}
blockquote {
	-moz-border-radius: 8px;
	-khtml-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
   background: #e9e9e9 url(images/quote.png) 8px 16px no-repeat;
   padding: 20px 30px 20px 46px;
   overflow: hidden;
}
blockquote p {
   margin-top: 0;
}
span.author {
   color:#AAB103;
   font-style: italic; 
   display: inline-block;
   float:right;
   padding-top: 15px;
}
#header {
   background-color: #DDE0A1;
}
#header div.contents {
   background-color: #BCC143;
   min-height: 200px;
   overflow: hidden;
}


#logo {
   max-width: 66%;
   float: left;
   padding-top: 30px;
   padding-left: 50px;
   box-sizing: border-box;
}
#headerright {
   float: right;
   width: 34%;
   box-sizing: border-box;
   text-align: right;
   padding-top: 10px;
   padding-right: 50px;
}
#lbp {
   width: 160px;
   height: auto;
}


div.contents, #page {
   margin: 0 auto;
}
#nav {
   text-align: center;
   height: 64px;
   line-height: 64px;
   overflow: hidden;
   border-bottom: 1px solid #E3D9D7;
   margin:0;
}
#nav a {
   margin: 0 25px;
   color: #91898A;
   text-decoration:none;
   font-weight: bold;
   font-size: 22px;
   text-transform: uppercase;
	/*font-family: "Open Sans Condensed", "News Cycle", sans-serif;*/
}
#nav a:hover, #nav a.current, #nav li.current_page_item a {
   color: #AAB103;
}
#nav ul {
   list-style: none;
   margin: 0;
   padding: 0;
}
#nav li {
   display: inline;
   list-style: none;
   margin: 0;
   padding: 0;
   background: none;
}
#maincontent {
   overflow: hidden;
   margin-bottom: 100px;
}
#maincontent p {
   line-height: 1.5em;
}
div.breadcrumb {
   display: inline-block;
   padding-right: 10px;
   color: #AAB103;
}
div.breadcrumb a {
   padding-right: 10px;
   text-decoration: none;
}
div.breadcrumb a:hover, div.backlink a:hover {
   text-decoration: underline;
}
div.breadcrumb + h1 {
   display: inline-block;
}
div.backlink {
   text-align:center;
   font-size: 20px;
   margin: 30px 0 0 0;
}
div.backlink a {
   text-decoration: none;
}

.leftcol {
   float: left;
   width: 62%;
   flex-basis: 66% !important;
}
.rightcol {
   float: right;
   width: 409px;
   width: 32%;
   flex-basis: 32% !important;
   padding-left: 52px;
   padding-left: 4%;
   margin-top: 35px;
   margin-left: 0;
   border-left: 1px solid #DAD5D2;
}
.rightcol img {
   margin: 0 0 35px 0;
}
   
.clear {
   clear:both;
}
.centered {
   text-align:center;
}
label {
    display: inline-block;
    padding-right: 20px;
    text-align: right;
    width: 110px;
    font-weight:bold;
}
#slideshow {
   background-color: #C4C4C4;
   margin-bottom: 50px;
}
#slideshow .contents {
   position: relative;
/*   min-height: 200px;*/
}
#slideshow img {
   display: block;
}

#panelband {
   overflow: hidden
}
.panel {
   float: left;
   color: #272524;
   border: 1px solid #000;
}
#panel1 {
   margin-left: 0;
}
.panel .head {
   background: #262523;
   color: #fff;
   height: 30px;
   line-height: 30px;
   font-size: 1.429em;
   padding-left: 20px;
}
.panel .picture img {
   width: 100%;
}
.panel .body {
   font-size: 1.071em;
   height: 100px;
   padding: 10px 10px 0 10px;
   overflow: hidden;
}
.panel li {
   margin: 0;
}
.panel ul {
   margin: 0 0 0 10px;
}
.panel .more {
   text-align: right;
   font-size: 1.071em;
   padding: 5px 20px 10px 20px;
}
.panel .more a {
   text-decoration:none;
}
.panel .more a:hover {
   text-decoration:underline;
}

#footer {
   background-color: #333333;
}
#footer .contents {
   margin: 0 auto;
   color: #fff;
   height: 354px;
   background-color: #222222;
   position: relative;
}
#footer a, #credits a {
   text-decoration: none;
   color: #ffffff;
}
#footer a:hover, #credits a:hover {
   text-decoration: underline;
}
#credits {
   background-color: #161616;
   color: #fff;
   text-align: center;
   height: 72px;
   line-height: 72px;
   font-size: 14px;
}
#footer div.col {
   float: left;
   height: 300px;
   padding-top: 54px;
   width: 50%;
   box-sizing: border-box;
   padding: 100px 0 0 100px;
   
}
#footer #col1 p {
   font-size: 17px;
   margin: 15px 0;
}
#footer #col1 p a { border-bottom: 2px solid #AFB0B4;}
#footer #col1 p a:hover { text-decoration: none; border-bottom: 2px solid #fff;}
#footer ul {
   margin: 0;
}
#footer li {
   background-image: url(images/tick.png);
   background-position: 0px 12px;
   font-size: 17px;
   margin: 0 30px 0 0;
   padding: 0;
}
#footer li p {
   border-bottom: 1px solid #4F525B;
   margin: 0 0 0 30px;   
   padding: 7px 0;
}

#footerlogo {
   width: 400px;
   height: auto;
}
#footer .phone {
   font-size: 36px;
   margin-top: 0;
   font-weight: bold;
   background: url(images/phone.png) left center no-repeat;
   padding-left: 50px;
}
#footer .email {
   font-size: 24px;
   font-weight: bold;
   background: url(images/mail.png) left center no-repeat;
   padding-left: 50px;
}

img.leftalign {
   display: block;
   float: left;
   text-align: left;
   margin: 0 25px 5px 0;
}
img.rightalign {
   display: block;
   float: right;
   text-align: right;
   margin: 0 0 5px 15px;
}
img.centeralign {
   display: block;
   margin: 10px auto;
   text-align: center;
}
table.labels {
   width:50%;
   margin:10px auto;
}
table.labels th {
   text-align: right;
   padding-right: 30px;
}
div.rounded {
	-moz-border-radius: 8px;
	-khtml-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
}
div.shaddow {
	-moz-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	-webkit-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	-khtml-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	box-shadow: rgba(200,200,200,1) 0 4px 18px;
}
div.opacity {
   opacity: 0.5;
   -moz-opacity: 0.5;
   filter:alpha(opacity=50);   
}

.overlay {
   position: absolute;
   width: 750px;
   height: 132px;
   right: 23px;
   bottom: 28px;
   background-color: rgba(0,0,0,0.2);
   font-family: "News Cycle", sans-serif;
}
.overlay p {
   margin: 12px 0;
   padding: 0 30px;
   color: #fff;
   font-size: 26px;
   line-height: 1.5em;
   text-align: center;
}


/* Gallery */
div.box {
   float: left;
   width: 41%;
   margin: 25px 2%;
   padding: 25px 2%;
   border: 1px solid #E3D9D7;
}
div.box h3 {
   line-height: 24px;
}
div.box p {
   margin: 0;
}
div.box br {
   display:none;
}
div.box img.even {
   margin-bottom: 1px; /* make sure even boxes float all the way left */
}
div.box img:hover {
    opacity: 0.9;
} 
#maincontent div.easingslider {
   margin: 0 auto !important;
}
#maincontent div.easingslider-slide {
   /*background: #373A43;*/
   background: #000;
}
/* tweak gallery sliders so portrait image is fully displayed instead of cut off at top */
#maincontent img.easingslider-image {
/*   max-height: 500px !important; */
}

/* WP Common Styles */
.editLink {
   text-align: center;
   padding: 5px 0 15px 0;
}
.editLink a, a.editLink {
   background: #e0e0e0;
   color: #777777;
   font-size: 10px; 
   border: 1px solid #999999;
   text-decoration: none;
   padding: 3px 5px;
}
.editLink a:hover, a.editLink:hover {
   background: #eeeeee;
   border: 1px solid #333333;
   color: #000000;
}
.postmetadata {
   color: #999;
   font-size: 10px;
   margin: 2px 0;
}
img.aligncenter, div.aligncenter {
   display: block;
   margin: 20px auto;
}
img.alignright, div.alignright {
   display: block;
   float: right;
   margin: 10px 0px 5px 15px;
}
img.alignleft, div.alignleft {
   display: block;
   float: left;
   margin: 10px 20px 5px 0px;
}
img.aligncenter {
   text-align: center;
}
img.alignright {
   text-align: right;
}
img.alignleft {
   text-align: left;
}
.wp-caption-text,.wp-caption-dd {
   margin: 0;
   font-weight: bold;
   font-size: smaller;
   text-align: center;
}
.more-link {
   display:block;
   text-align:right;
}
.linklove {
   display:none;
}
/* Comments */
#comments {
   margin-top: 100px;
   color: #333;
   background: #f3f3f3;
   padding: 10px 20px;
   clear:both;
}
#comments .navigation {
	padding: 0 0 18px 0;
}
h3#comments-title,
h3#reply-title {
	color: #000;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 0;
}
h3#comments-title {
	padding-bottom: 24px;
}
.commentlist {
	list-style: none;
	margin: 0;
   padding: 0;
}
.commentlist li.comment {
	border-bottom: 1px solid #e7e7e7;
	line-height: 24px;
	margin: 0 0 24px 0;
	padding: 0 0 0 56px;
	position: relative;
}
.commentlist li:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
#comments .comment-body ul,
#comments .comment-body ol {
	margin-bottom: 18px;
}
#comments .comment-body p:last-child {
	margin-bottom: 6px;
}
#comments .comment-body blockquote p:last-child {
	margin-bottom: 24px;
}
.commentlist ol {
	list-style: decimal;
}
.commentlist .avatar {
	position: absolute;
	top: 4px;
	left: 0;
}
.comment-author {
}
.comment-author cite {
	color: #000;
	font-style: normal;
	font-weight: bold;
}
.comment-author .says {
	font-style: italic;
}
.comment-meta {
	font-size: 12px;
	margin: 0 0 18px 0;
}
.comment-meta a:link,
.comment-meta a:visited {
	color: #888;
	text-decoration: none;
}
.comment-meta a:active,
.comment-meta a:hover {
	color: #ff4b33;
}
.commentlist .even {
}
.commentlist .bypostauthor {
}
.reply {
	font-size: 12px;
	padding: 0 0 24px 0;
}
.reply a,
a.comment-edit-link {
	color: #888;
}
.reply a:hover,
a.comment-edit-link:hover {
	color: #ff4b33;
}
.commentlist .children {
	list-style: none;
	margin: 0;
}
.commentlist .children li {
	border: none;
	margin: 0;
}
.nopassword,
.nocomments {
	display: none;
}
#comments .pingback {
	border-bottom: 1px solid #e7e7e7;
	margin-bottom: 18px;
	padding-bottom: 18px;
}
.commentlist li.comment+li.pingback {
	margin-top: -6px;
}
#comments .pingback p {
	color: #888;
	display: block;
	font-size: 12px;
	line-height: 18px;
	margin: 0;
}
#comments .pingback .url {
	font-size: 13px;
	font-style: italic;
}
/* Comments form */
input[type=submit] {
	color: #333;
}
#respond {
	border-top: 1px solid #e7e7e7;
	margin: 24px 0;
	overflow: hidden;
	position: relative;
}
#respond p {
	margin: 0;
}
#respond .comment-notes {
	margin-bottom: 1em;
   font-style: italic;
   color: #999;
}
.form-allowed-tags {
	line-height: 1em;
}
.children #respond {
	margin: 0 48px 0 0;
}
h3#reply-title {
	margin: 18px 0;
}
#comments-list #respond {
	margin: 0 0 18px 0;
}
#comments-list ul #respond {
	margin: 0;
}
#cancel-comment-reply-link {
	font-size: 12px;
	font-weight: normal;
	line-height: 18px;
}
#respond .required {
	display:none;
}
#respond label {
	color: #888;
	font-size: 12px;
   width: 80px;
   display: block;
   float: left;
   text-align: right;
   padding-right: 10px;
}
#respond input {
	margin: 0 0 9px;
	width: 500px;
}
#respond textarea {
	width: 500px;
}
#respond .form-allowed-tags {
	color: #888;
	font-size: 12px;
	line-height: 18px;
}
#respond .form-allowed-tags code {
	font-size: 11px;
}
#respond .form-submit {
	margin: 12px 0;
}
#respond .form-submit input {
	font-size: 14px;
	width: auto;
}

/* Contact Form 7 */
div.wpcf7 {
   clear: both;
   overflow: hidden;
   background-color: #e6e6e6;
   border-radius: 5px;
   width: 464px;
   margin: 30px auto !important;
}
div.wpcf7 form {
   padding: 0 30px;
   margin: 0;
}
div.wpcf7-response-output {
   background: #fff;
}
span.wpcf7-not-valid-tip {
   font-size: 0.750em !important;
}
input.wpcf7-submit {
   background: #666;
   color: #fff;
   font-size: 1.1em;
   border-radius: 3px;
   border: 1px solid #555;
   padding: 5px 20px;
}
input.wpcf7-submit:hover {
   background: #555;
}
input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea {
   border: 1px solid #aaa;
   width: 400px;   
   height: 26px;
}
textarea.wpcf7-textarea {
   height: 180px;
}
input.wpcf7-text:hover, input.wpcf7-captchar:hover, textarea.wpcf7-textarea:hover {
   border: 1px solid #999;
}
input.wpcf7-text:focus, input.wpcf7-captchar:focus, textarea.wpcf7-textarea:focus {
   border: 1px solid #666;
}
div.wpcf7 div.wpcf7-validation-errors {
    border: 2px solid #f00000;
}

/* ------------------------------------------------- Responsive Elements ------------------------------------------------- */

/* defaults: width > 1300 */
   #dmwde, #dmstd, #dmmed, #dmsml, #dmxsm {position: fixed; top:0; left:0; width:80px;height:20px;line-height:20px;text-align:center;background:#ccc; opacity:0.5; color:white; font-size: 11px; z-index: 22;}
   #dmwde, #dmstd, #dmmed, #dmsml, #dmxsm {display: none}
   #dmwde {display: inline}
   #scale { position: fixed; top:0; left:0; height: 26px; width: 100%; opacity:0.2; background: url(images/scale.png) 0 0 repeat-x; z-index: 21;}
   #page, div.contents { width: 1280px; }

/* medium screen width 900 - 1300 */
@media screen and (max-width: 1300px) {
   #dmwde {display: none;}
   #dmmed {display: inline;}
   #page, div.contents { width: 90%; }

   .overlay { width: 100%; height: 120px; right:0; left: 0; bottom: 0; }
   .overlay p { font-size: 22px; }

   div.wp-block-columns { 
      display: block !important; 
   }
   div.wp-block-columns div.wp-block-column { 
      margin-bottom: 50px;
   }
   
   div.leftcol, div.rightcol {float: none; width: auto; border: 0; flex-basis: 100% !important;}
   div.rightcol {border-left: 0; border-top: 1px solid #DAD5D2; padding: 35px 0 0 0; flex-basis: 100% !important;}
   
   #footer #col1, #footer #col2 { float: none; width: auto; height: auto; padding: 30px 0 0 0; text-align: center; }
   #footer .phone, #footer .email {display: inline-block; margin:15px;}
   
}

/* small screen width 600 - 800 */
@media screen and (max-width: 900px) {
   #dmmed {display: none;}
   #dmsml {display: inline;}
   
   html,body { font-size: 18px; }
   #page, div.contents { width: 95%; }

   #header div.contents { min-height: 150px;}   
   #lbp {
      max-width: 100px;
   }

   #quotearea { max-width: 100%; height: 100px; bottom: 0; right: 0;}
   #quoterotator { padding-right: 130px; }
   #quote { font-size: 18px; }
   #quoteauthor { bottom: 10px; right: 165px; font-size: 14px; }
   a#quotelink { width: 130px; height: 36px; line-height: 34px; font-size: 18px; bottom: 15px; right: 15px;}
   

   #nav a { font-size: 18px; margin: 0 15px;}   
   


}

/* smallest screen width 320 - 600 */
@media screen and (max-width: 600px) {
   #dmsml {display: none;}
   #dmxsm {display: inline;}
   #page, div.contents {
      min-width: 320px;
      width: 100%;
   }
   #header div.contents { min-height: 100px;}   
   
   #logo, #headerright {
      float: none;
      width: auto;
      text-align: center;
      padding: 20px;
      max-width: 100%;
   }
   #logo img {
      width: 360px;
   }

   #quotearea { position: relative; background-color: #333; }
   #quoterotator { margin: 0; padding: 10px 10px 0 10px; }
   #quote { font-size: 16px; padding-left: 25px; background-position: 0 0;}
   #quote::after { content: none; padding-left: 0; }
   #quoteauthor { bottom: 10px; right: 85px; font-style: italic; font-size: 14px; }
   a#quotelink { display:inline; background:none; font-size: 14px; bottom: 10px; right: 10px; height: auto; width: auto; line-height:normal; text-decoration: underline;}
   a#quotelink:hover { color: #06A3D8; }
   
   
   #maincontent { padding: 0 10px; }
   .leftcol {
      float: none;
      width: auto;
      padding-right: 0;
   }
   .rightcol {
      float: none;
      width: auto;
   }

   
   
   .wp-block-media-text.is-stacked-on-mobile {
   
       margin-bottom: 50px;
       border-bottom: 1px solid #ccc;
       padding-bottom: 50px;
   
   }
   
   .overlay { width: 100%; height: auto;}
   .overlay p { font-size: 18px; }

   #nav { border-bottom: none; height: auto; line-height: normal; }
   #nav ul { width: 100%;  display: block; height: auto; }  
   #nav li { width: 50%; float: left; position: relative; }  
   #nav li a { display: block; margin: 0; border-bottom: 1px solid #e3d9d7; border-right: 1px solid #e3d9d7; text-align: left; width: 92%; padding: 8px 4%; font-size: 14px; }

   #footer .contents { height: auto; padding-bottom: 20px;}
   #footer .phone {font-size: 26px;}
   #footer .email {font-size: 18px;}
   #footerlogo {
      width: 250px;
   }

#credits {
    font-size: 12px;
    height: auto;
    line-height: normal;
    padding: 20px 10px;
}
   
   /* Contact Form 7 */
   div.wpcf7 { margin: 10px auto !important; width: 300px; }
   div.wpcf7 form { padding: 0 25px; }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 246px; height: 20px; }
   textarea.wpcf7-textarea { height: 120px; }  
}



