/*  
Theme Name: Landlink 2021 Refresh
Theme URI: http://sww.co.nz/
Description: Custom theme by Stellar Web Works
Version: 1.0
Author: Aidan Curran
Author URI: http://sww.co.nz/


12px	0.750em	75.0%	   9pt
13px	0.813em	81.3%	   10pt
14px	0.875em	87.5%	   11pt
15px	0.938em	93.8%	   11pt
16px	1.000em	100.0%	12pt
17px	1.063em	106.3%	13pt
18px	1.125em	112.5%	14pt
19px	1.188em	118.8%	14pt
20px	1.250em	125.0%	15pt
21px	1.313em	131.3%	16pt
22px	1.375em	137.5%	17pt
23px	1.438em	143.8%	17pt
24px	1.500em	150.0%	18pt


colours:

green: #8dc73d;
blue: #0061ac;
dark blue: #004d88

*/
html,body {
	margin:0;
	padding:0;
   background-color: #fffffff;
   text-align: center;
   font-family: 'Raleway', sans-serif;
   font-size: 20px;
   color: #444444;
}
body {
}
h1, h2, h3, h4 {
   color: #0061ac;
}
h1 {
   font-size: 36px;
   color: #444444;
   font-weight: 400;
}
h2, h2.forminator-title {
   font-size: 30px !important;
   color: #0061ac !important;
   font-weight: 400;
}
h3 {
   font-size: 24px;
   font-weight: 400;
}
h4 {
   font-size: 20px;
}
a {
   color: #0061ac;
}
a:hover {
   color: red;
}
h1 a, h2 a {
   text-decoration: none;
} 
img {
   border: 0;
}
div, section {
   text-align: left;
}
section {
   overflow: hidden;
   padding: 50px 0;
}
#section2,#section4,#section6,#section8,#section10,#section12 {
   background-color: #F0F0F0;
}
ul:not([class]) {
   list-style-type: none;
   padding: 0px;
   margin: 7px 0 7px 15px;
}
ul:not([class]) li {
   background-image: url(images/bullet.png);
   background-repeat: no-repeat;
   background-position: 0px 4px;
   line-height: 1.571em;
   padding-left: 20px;
   margin: 5px 0;
}
td {
   vertical-align:top;
}
blockquote {
	-moz-border-radius: 10px;
	-khtml-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
   background: #e9e9e9 url(images/quote.png) 15px 6px no-repeat;
   padding: 15px 15px 15px 54px;
   margin: 30px 40px;
}
blockquote p {
   margin: 0;
}
blockquote cite {
   margin-top: 10px;
   display: block;
   text-align: right;
}
header {
   min-height: 115px;
   overflow: hidden;
   padding-bottom: 15px;
}
header #logo {
   display: block;
   float: left;
   padding: 30px 20px 0 0;
   max-width: 270px;
   height: auto;
}
header #logo2 {
   display: block;
   float: right;
   padding: 10px 0 0 20px;
   width: 200px;
   height: auto;
}
#broughttoyou {
   color: #8dc73d;
   font-size: 14px;
   margin: 0;
   padding-left: 20px;
}
header #headertext {
   float: right;
   padding: 20px 0 20px 0;
}
header #headertext a {
   text-decoration: none;
}


header #headertext .phone {
   font-size: 20px;
   font-weight: bold;
   margin: 0 0 2px 0;
   color: #8dc73d;
}
header #headertext .email {
   margin: 0;
}
header #headertext .social {
   font-size: 32px;
   text-align: right;
}

.contents {
   margin: 0 auto;
}
main {
   background: transparent;
}

nav {
   text-align: center;
}
#topnav {
   float: right;
   clear: right;
   line-height: 30px;
   overflow: hidden;
}
nav a {
   margin: 0 20px;
   padding: 0;
   text-decoration:none;
   text-transform: lowercase;
   font-weight: bold;
   font-size: 16px;
   display: inline-block;
   color: #444444;
}
#topnav a {
   border-bottom: 6px solid transparent;
}
#topnav a:hover, #topnav a.current, #topnav li.current_page_item a {
   color: #8dc73d;
   border-bottom-color: #8dc73d;
}
nav ul, #subnav ul, footer nav ul {
   list-style: none;
   margin: 0;
   padding: 0;
}
nav li, #subnav li, footer nav li {
   display: inline;
   list-style: none;
   margin: 0;
   padding: 0;
   background: none;
}
footer nav a:hover {
   color: #8dc73d;
}
footer nav li.current_page_item a {
   font-weight: bold;
   color: #8dc73d;
}
#subnav {
   text-align: center;
}
#subnav a {
   color: #999;
   text-decoration:none;
   font-weight: bold;
   font-size: 18px;
   display: inline-block;
   padding: 10px 20px;
   text-transform: lowercase;
}
#subnav a:hover, #subnav li.current_page_item a, #subnav li.current-page-ancestor a {
   color: #cc0000;
}

.clear {
   clear:both;
}
.centered {
   text-align:center;
}
div.divider {
   clear: both;
   margin: 50px 0 30px 0;
   border-bottom: 1px solid #e6e6e6;
}
hr.wp-block-separator {
   display:block;
   padding: 0;
   margin: 50px 25%;
   border: 0;
   border-top: 1px solid #ccc;
   height: 1px;
}

#bigtitle {
   background: url(images/background.jpg) center top repeat-x;
}
#bigtitle img.imageonly {
   width: 100%;
   max-width: 1200px;
   height: auto;
   display: block;
   margin: 0 auto;
}
#bigtitle img.headerimg {
   width: 100%;
   max-width: 1200px;
   height: auto;
   display: block;
   margin: 0 auto;
}
#bigtitle div#n2-ss-2 {

}
#bigtitle .contents {
   position: relative;
   min-height: 200px;
}
body.home #bigtitle .contents {
   height: 200px;
   padding-top: 10%;
   padding-bottom: 10%;
   background-size: cover;
   background-position: center center;
}
#textoverlay {
   width: 100%;
}
#bigtitle h1 {
   position:absolute;
   top: 50%;
   transform: translateY(-50%);
   left: 0;
   text-shadow: 0 0 10px rgba(0,0,0,0.5), 0 0 20px rgba(0,0,0,0.5), 0 0 30px rgba(0,0,0,0.5);
   color: white;
   font-size: 50px;
   width: 90%;
   margin: auto;
   text-align: center;
}
#panelband {
   overflow: hidden;
   padding: 30px 0;
}
.panel {
   float: left;
   width: 32%;
   margin-left: 2%;
   position: relative;
   background-color: #f5ede0;
   padding: 20px;
   box-sizing: border-box;
}
#panel1 {
   margin-left: 0;
}
.panel .head {
   width: 100%;
   font-size: 1.429em;
   z-index: 10;
   min-height: 60px;
}
.panel .head a {
   color: #0061ac;
   text-decoration: none;
   text-shadow: 0px 0px 10px #fff;
   font-size: 26px;
   font-weight: bold;
   text-transform: uppercase;
   display: block;
   width: 100%;
   height: 100%;
   text-align: center;
}
.panel .picture img {
   width: 100%;
}
.panel .picture img:hover, .panel .head:hover + .picture img  {
   opacity: 0.9;
}
.panel .body {
   font-size: 1.071em;
   min-height: 100px;
   overflow: hidden;
}
.panel li {
   margin: 0;
}
.panel ul {
   margin: 0 0 0 10px;
}
.more {
   text-align: center;
   margin-top: 30px;
}
.panel .more {
   margin-top: 15px;
}
.more a, a.button {
   text-decoration:none;
   padding: 5px 20px;
   color: #fff;
   background: #8dc73d;
   font-weight: bold;
   display: block;
}
.more a:hover {
   background: #0061ac;
}

.leftcol {
   float: left;
   width: 60%;
   padding-right: 5%;
}
.rightcol {
   float: left;
   width: 35%;
}
.halfcol {
   float: left;
   width: 50%;
}
.thirdcol {
   float: left;
   width: 33.333%;
}
.quartercol {
   float: left;
   width: 25%;
}

footer {
   background: #234e88 url(images/footer-background.jpg) center top repeat-x;
   color: #fff;
   padding: 50px 0;
   overflow: hidden;
}
footer .contents {
   position: relative;
}
footer a {
   color: #fff;
   text-decoration:none;
   font-weight: 600;
   font-size: 18px;
   display: inline-block;
}
footer nav ul {
   text-align: center;
}
footer nav li {
   display: block;
   vertical-align: top;
   padding: 0;
   text-align: left;
   line-height: 1.5em;
}
footer nav li a {
   font-size: 16px;
   padding: 0;
   margin: 0;
   font-weight: normal;
   text-transform: lowercase;
}
#footerlogo a {
   padding: 0;
   margin: 0;
}
#footerlogo img {
   max-width: 270px;
   height: auto;   
   padding: 0;
   margin: 0 0 40px 0;
}
#footerlogo .phone {
   font-size: 20px;
   font-weight: bold;
   margin: 0;
   display: inline-block;
}
#footerlogo .email {
   margin: 0;
   padding-left: 20px;
   display: inline-block;
}
footer .address {
   padding-left: 26px;
}

#credits {
   margin-top: 5px;
   padding: 10px;
   text-align: center;
   font-size: 0.786em;
   color: #999999;
}
#credits a {
   text-decoration: none;
   color: #999999;
}
#credits a:hover {
   text-decoration: underline;
   color: #666666;
}
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);   
}
a.scrollup {
	width: 67px;
	height: 67px;
	position: fixed;
	bottom: 25px;
	right: 25px;
	display: none;
	text-indent: -9999px;
	background: url('images/top.png') no-repeat;
	opacity: 0.3;
}

/* Forminator */
.request-checkbox {
   flex: 2 !important;
}
.request-checkbox p {
   margin: 0 !important;
}
.request-checkbox .forminator-label {
   display: none !important;
}
.forminator-number--field {
   width: 50px !important;
   padding: 3px 10px !important;
}
.total {
   margin-top: 20px;
}
.total .forminator-input {
   background-color: white !important;
}
.total #calculation-1-field {
   color: #444444 !important;
}
.forminator-row {
   margin-bottom: 0 !important;
}
.forminator-col {
   margin-bottom: 20px;
}
.forminator-col.qty {
   margin-bottom: 10px;
}
.request-checkbox .forminator-description {
   margin-left: 30px !important;
}
.hidden {
   display: none;
}
not(.qty) .forminator-field .forminator-label {
   font-size: 16px !important;
}
.qty label.forminator-label {
   font-size: 12px;
   font-weight: normal !important;
}
#thankyou {
   text-align: center;
   font-weight: bold;
   padding: 20px;
   background-color: #c2e88d;
}
#ordersummary {
   padding: 20px;
   background-color: #f6f6f6;
   border: 1px solid #e6e6e6;
}
button#printorder {
   margin: 20px 0;
   padding: 10px 30px;
   border: 0;
   border-radius: 0;
   line-height: 1.45em;
   text-align: center;
   background-color: #ddd;
   cursor: pointer;
}
button#printorder:hover {
   background-color: #ccc;
}
@media screen and (max-width: 782px) {
   .qty {
      margin-left: 30px;
   }
   .request-checkbox {
      margin-bottom: 0 !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: 0 0 30px 30px;
}
img.alignleft, div.alignleft {
   display: block;
   float: left;
   margin: 0 30px 30px 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;
   max-width: 100%;
   margin: 30px 0 !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: computer monitors, tablets in landscape, standard and large screens (typically wider than 1024px), old browsers */
   .contents { width:90%; max-width: 1200px; min-width: 300px;}
   #mobile-menu-btn { display: none; }

   img {max-width: 100%; height: auto !important; }
   
   .mobile {display: none; }
   
/* MEDIUM-WIDE SCREEN */
/* width 750px - 1000px */
@media screen and (max-width: 1000px) {
   nav a, #subnav a { margin: 0 5px; padding: 10px 15px; font-size: 15px; }

   .panel .head a { font-size: 30px;}

   #bigtitle h1 {
      font-size: 40px;
   }

   #topnav {
      float: none;
      clear: both;
   }
   
   div.wpcf7 form {
       margin: 0 auto;
       width: 360px;
   }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 350px;}
}

/* MEDIUM-SMALL SCREEN */
/* width 540px - 750px */
@media screen and (max-width: 750px) {

   html,body { font-size: 18px; }
   .contents { width:95%; }
   nav a, #subnav a { margin: 0 5px; padding: 10px 5px; font-size: 14px; }
   .leftcol, .rightcol, .halfcol, .thirdcol { float: none; width: auto;}
   .quartercol { width: 50%; margin-top: 20px; }

   
   header #logo {
      max-width: 250px;
   }
   header #logo2 {
      width: 180px;
   }
   
   #bigtitle h1 {
      font-size: 30px;
   }

   .panel, #panel1 {
      float: none;
      width: 280px;
      margin: 10px auto;
      padding: 10px;
   }
      
   div.block { padding: 10px 20px; }

   div.wpcf7 form { width: 310px; }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 300px;}

}

/* SMALLEST SCREEN */
/* width 320px - 540px */
@media screen and (max-width: 540px) {	

   .contents { width:95%; }
   /*header #headertext { padding: 20px 20px 20px 0; }*/
   header #headertext { display:none; }
   #mobile-menu-btn { 
      display: inline-block;
      width: 32px;
      height: 32px;
      background: url(images/menu-icon.png) 0 0 no-repeat;
      padding: 0 4px;
      cursor: pointer;
   }
   header {
      padding-bottom: 0;
   }
   header #logo {
      margin: auto;
      float: none;
      width: 200px;
      padding-top: 10px;
   }   
   #topnav { float: none; width: auto; min-height: 40px; text-align: right; clear: both; }
   #topnav ul { display:none; }
   #topnav ul.open {  
     width: 100%;  
     display: block;  
     height: auto;  
     padding-top: 0;
     margin-top:0;
   }  
   #topnav li {  
     width: auto;  
     float: none;  
     position: relative;  
   }  
   #topnav li a {  
     display: block;
     margin: 0;
     padding: 3px 0px;
     border-bottom: 1px solid #d0d0d0;  
     text-align: left;  
     width: 100%;  
     text-indent: 25px;  
     line-height: 30px;
   }

   img.mobile-no-float {
      float: none;
      margin-left: auto;
      margin-right: auto;
   }

   .quartercol { float: none; width: auto; margin: 20px 0 0 0;}  
   .thirdcol { float: none; width: auto; margin: 20px 0 0 0;}  
   
   section { padding: 40px 0; }

   div.block div.image img { float: none !important; display:block; margin: 30px auto; }   
   
   footer {
      padding-top: 30px;
   }
   footer nav ul li, footer div.thirdcol {
      text-align: center;
   }
   #footerlogo img {
      width: 150px;
      margin-bottom: 20px;
   }
   footer .address {
      padding-left: 0;
   }

   /* 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; }     
}


