
/*---------------------------------*/
/* Knightpics Custom Settings
/*---------------------------------*/
/* Everything below is independent of Karma. MC CSS only, 2021 onwards. */

/* IMPORTANT - Added MC to hide sub menus in navigation to avoid it being very long. Over-rides _mobile.min.css, January 2021. */
/*#tt-mobile-menu-list ul.sub-menu {*//* Hide all sub menus/dropdowns. The line below only hides 2nd level. */
#tt-mobile-menu-list ul.sub-menu ul.sub-menu {
    height: 0px;
   	overflow: hidden;
}

@media (min-width:982px) and (max-width:1024px) {
	#menu-main-nav li {
		padding: 5px 18px 5px 18px;
	}
}



/* General. */
.imgLHS { float: left; display: inline; margin-right: 20px; }
.imgRHS { float: right; display: inline; margin-left: 20px; }
.clear { clear: both; }


/* Header Logo. */
#kp-logo-container { float: left; display: inline-block; }
#kp-logo { display: inline-block; }
#kp-logo img { float: left; margin-right: 20px; width: 90px; height: auto; }
.kp-logo-clear { display: block; clear: both; height: 1px; width: 100%; }
.logo-text-container { position: relative; top: 20px; display: inline-block; color: #fff; }
.logo-text1 {
	font-family: 'Arsenal', sans-serif;
	text-transform: uppercase;
	font-size: 30px;
	letter-spacing: 4px;
	text-align: center;
	display: block;
	margin-bottom: 5px;
}
.logo-text2 {
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
	font-size: 15px;
	letter-spacing: 3px;
	text-align: center;
	display: block;

}
@media(max-width: 980px){
	#kp-logo-container { float: none; display: block; text-align: center; }
	#header .header-area { padding-top: 20px; }
}
@media(max-width: 500px){
	#kp-logo img { width: 80px; }
	.logo-text1 { font-size: 26px; }
	.logo-text2 { font-size: 14px; }
}


.toolbar-right-email { color: #ccc; font-size: 130%;}
.footer-h4 { color: #fff; font-weight: normal; font-size: 13px; }

/* Footer Thumbnail. h3 margin change ensures better alignment*/
h3.footer-thumb {
	margin: 0 0 14px 10px!important;
	padding-bottom: 12px!important;
}

/* Footer contact button. */
ul.tt-recent-posts li a button { margin-top:10px!important; }

#footer_galleryThumb { float: left; overflow: hidden; /* Important */ border: 3px solid #ccc; margin-right: 14px; 
width: 70px; height: 70px; }

.SI-footLogo { max-width: 100%; margin-top: -20px; }
#SI-footText { font-size: 0.9em; text-align: center; }

/* Used for the footer contact button. */
.small_tealgrey, .medium_tealgrey, .large_tealgrey, .message_karma_tealgrey {
    box-shadow: 0 0 0 1px #4E6A75, 0 0 0 2px #1E2F36;
    background-color: #4E6A75;
    background-image: linear-gradient(to bottom, #4E6A75, #1E2F36);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#4E6A75), to(#1E2F36));
    background-image: -webkit-linear-gradient(top, #4E6A75, #1E2F36);
    background-image: -moz-linear-gradient(top, #4E6A75, #1E2F36);
    background-image: -webkit-linear-gradient(top, #4E6A75, #1E2F36);
    background-image: -o-linear-gradient(top, #4E6A75, #1E2F36);
    background-image: ms-linear-gradient(to bottom, #4E6A75, #1E2F36);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#4E6A75', endColorstr='#1E2F36');
}


/* Titles. */
.kp-title-container { text-align: center; margin-top: 20px; }
.kp-title { display: inline-block; height: 20px; margin: 30px auto 24px; padding: 0px 12px; /*border: 2px solid #ccc;*/ z-index: 1; }
.kp-title .kp-title-h1 { text-align: center; background: /*#fff*/none; padding: 0px 12px; position: relative;  margin-top: -15px!important; z-index:10; }
.kp-title .kp-title-h1 h1 { color: #444; font-size: 2.1em; }


/* About. */
.kp-signature { font-family: 'Bilbo Swash Caps', cursive;
	font-weight: 300; font-size: 2.3em; letter-spacing: -.5px; color: #444; padding-left: 7px; word-spacing: 4px;
}
.kp-bio-pic { background: #fff; padding: 4px; border: 1px solid #ccc; max-width: 100%; height: auto; }

/* About page social icons. */
#kp-social-icons { display: inline-block; padding: 0px; }
#kp-social-icons ul { margin: 0px; }
#kp-social-icons ul.social_icons.tt_vector_social_icons.tt_vector_social_color a.instagram { background: radial-gradient(circle farthest-corner at 35% 90%, #fec564, transparent 50%), radial-gradient(circle farthest-corner at 0 140%, #fec564, transparent 50%), radial-gradient(ellipse farthest-corner at 0 -25%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 20% -50%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 0, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 60% -20%, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 100%, #d9317a, transparent), linear-gradient(#6559ca, #bc318f 30%, #e33f5f 50%, #f77638 70%, #fec66d 100%); }


/* Gallery. */
#gallery { padding-top:3px!important; padding-bottom:3px!important; }
#galleryBreadcrumbs { max-width: 960px; margin: 10px auto; color: #999!important; font-size: 1.1em; line-height: 18px; }
#galleryBreadcrumbs a { margin: 0px 10px; text-decoration: none; color: #999; }
#galleryBreadcrumbs a:hover { text-decoration: none; color: #fff; }
#galleryBreadcrumbs .current { margin-left: 10px;color: #fff; }
#galleryText { max-width: 960px; margin: 10px auto; line-height: 18px; }
#galleryText p { color: #ccc!important; }

#noAlbumsMessage { margin: 60px auto; text-align: center; }

#kp-gallery { margin: 40px auto; max-width: 100%; text-align: center; }
.kp-gallery-tile { position: relative; display: inline-block; width: 47%; min-width: 240px; border: 1px solid #ccc; border-radius: 2px;margin: 10px; }
.kp-gallery-img { display: block; width: 100%; height: auto; }
.kp-gallery-tile-textpanel { position: absolute; left: 0; bottom: 0; width: 100%; margin: 0px; height: 36px; background: #000; opacity: 0.4; z-index: 1; overflow: hidden; }
.kp-gallery-tile-text { position: absolute; left: 11px; bottom: 8px; color: #fff; font-size: 14px; z-index: 10; overflow: hidden; }
@media screen and (max-width: 980px) {
	.kp-gallery-tile { position: relative; display: inline-block; width: 60%; min-width: 260px; margin: 10px; }
}


/* Links page. */
#kp-link-container { text-align: center; margin-bottom:30px; }
.kp-link { position: relative; width: 160px; height: 160px; display: inline-block; margin: 10px; overflow: hidden; margin-top: 20px; text-align: center!important; }
.kp-link img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 100%; max-height: 100%; width: auto; height: auto; }
@media only screen and (max-width:320px) {
	.kp-link { width: 200px; height: 200px; }
	.kp-link img { max-width: 100%; max-height: 100%; width: auto; height: auto; }
}


/* Pricing. */
.kp-pricing { text-align: center; }

.kp-pricing-h2 { background: #e7edeb; text-align: center; padding: 10px 4px; margin: 8px; }
.kp-pricing h3 { text-align: center; margin-bottom: 8px; }
.kp-pricing hr { height: 1px; border: 0; width: 30%; margin: 10px auto; background-color: #ccc; }
.kp-pricing img { max-width: 100%; }
.kp-pricing-frame { padding: 50px; }
.kp-pricing-frame30 { padding: 30px; }
.kp-pricing-bold { font-weight: 600; margin-bottom: 0px; }

.kp-pricing-header-container { text-align: center; height: auto; }
.kp-pricing-header { width: 44%; display: inline-block; margin: 0px 14px; overflow: hidden; }
.kp-pricing-header img { max-width: 100%; height: auto; /*margin-top: 20px;*/ }
.kp-pricing-header-sml { width: 25%; display: inline-block; margin: 0px; overflow: hidden; }
.kp-pricing-header-sml img { max-width: 100%; height: auto; /*margin-top: 20px;*/ }

#kp-pricing-woodcolour-container { text-align: center; }
.kp-pricing-woodcolour { width: 120px; display: inline-block; margin: 8px; overflow: hidden; }
.kp-pricing-woodcolour img { max-width: 100%; height: auto; }
.kp-pricing-woodcolour span { display: block; text-align: center; }

.kp-pricing-frame-book { padding: 20px 50px; }
#kp-pricing-book-container { text-align: center; height: auto; }
.kp-pricing-book { width: 44%; display: inline-block; margin: 8px; overflow: hidden; }
.kp-pricing-book img { max-width: 100%; height: auto; margin-top: 20px; }
.kp-pricing-book-sml { width: 25%; display: inline-block; margin: 8px; overflow: hidden; }
.kp-pricing-book-sml img { max-width: 100%; height: auto; /*margin-top: 20px;*/ }

@media only screen and (max-width:1023px) {
	/*.kp-pricing-header { width: 41%; display: inline-block; margin: 6px; overflow: hidden; }
	.kp-pricing-header-sml { width: 23%; display: inline-block; margin: 0px; overflow: hidden; }*/
}
@media only screen and (min-width:1023px) {
	/* Stop the halfs from staggering, due to being in an extra containing element. Ensure they're a little narrower. */
	#content.content_full_width .one_half,
	#content.content_full_width .one_half_last {
		width: 430px!important;
	}
}

@media only screen and (max-width:690px) {
	.kp-pricing-header { width: 95%; display: block; margin: 12px; overflow: hidden; }
	.kp-pricing-header-sml { visibility: hidden; height: 1px; margin: 0px; overflow: hidden; }
	.kp-pricing-header-sml img { visibility: hidden; }
	
	.kp-pricing-frame-book { padding: 10px 10px;  }
	.kp-pricing-book { width: 90%; display: inline-block; margin: 6px; overflow: hidden; }
	.kp-pricing-book img { max-width: 100%; height: auto; margin-top: 20px; }
	.kp-pricing-book-sml { visibility: hidden; height: 1px; margin: 0px; overflow: hidden; }
	.kp-pricing-book-sml img { visibility: hidden; }
	
}
@media only screen and (max-width:400px) {
	.kp-pricing-header { width: 95%; display: block; margin: 6px; overflow: hidden; }
	.kp-pricing-woodcolour { width: 100px; display: inline-block; margin: 2px; overflow: hidden; }
}

.kp-pricing-qr { /*background: #e7edeb;*/ text-align: center; }
.kp-pricing-qrcode { max-width: 100%; max-width: 130px; height: auto; }

#kp-pricing-container { margin: 30px auto 20px; }

.kp-pricing-page { /*width: 100%;*/ background: #fff; border-radius: 6px; border: 1px solid #ccc; margin: 20px 0px; padding: 16px; }
.kp-pricing-page p {  padding: 0px 8px; }

.kp-red { color: #C00!important; }

#kp-pricing-voucher-text { display: inline-block; width: 64%; }
#kp-pricing-voucher-img { float: right; display: inline-block; width: 34%; min-width: 200px; max-width: 500px; height: auto;   margin-right: 8px;
-webkit-box-shadow: 4px 4px 10px 0px rgba(224,221,224,1);
-moz-box-shadow: 4px 4px 10px 0px rgba(224,221,224,1);
box-shadow: 4px 4px 10px 0px rgba(224,221,224,1); }
#kp-pricing-voucher-img img { width: 100%; height:auto; }

@media only screen and (max-width:700px) {
#kp-pricing-voucher-text { display: block; margin: 10px auto; width: 90%; }
#kp-pricing-voucher-img { float: none; display: block; margin: 10px auto; width: 90%; max-width: 500px; }
}


/* Contact. */
.kpvalid { max-width: 100%; height: auto; border: 1px solid #ccc; background: #fcfcfc; padding: 3px; margin: 22px 0px; 
-webkit-box-shadow: 2px 2px 6px -1px rgba(102,102,102,1);
-moz-box-shadow: 2px 2px 6px -1px rgba(102,102,102,1);
box-shadow: 2px 2px 6px -1px rgba(102,102,102,1);
}

@media(max-width: 768px){
	#kp-contact-social { display: none; }
}

/* Blog individual posts (doesn't use standard Tumblr style as of August 2021). */
#kp-blog-posts-container { width: 1000px; max-width: 95%; margin: 20px auto; }

.kp-blog-post { width: 450px; margin: 16px 6px; float: left; display:inline-block; overflow: hidden; overflow-wrap: break-word; 
border-radius: 6px 6px 6px 6px;
-moz-border-radius: 6px 6px 6px 6px;
-webkit-border-radius: 6px 6px 6px 6px;
border: 1px solid #ccc;
}

.kp-blog-post-title { height: 70px; margin: 0px; background: #fff; overflow: hidden; }
.kp-blog-post h2 { padding: 10px 10px 10px 20px; margin-bottom: 6px; font-size: 1.6em; color: #444; }
.kp-blog-post h2 a, .kp-blog-post h2 a:hover { color: #444; text-decoration: none; }

.kp-blog-post-body { /*border-left: 1px solid #ccc; border-right: 1px solid #ccc;*/ } 
.kp-blog-post-body-bg { width: 100%; width: 450px; height: 300px; background-position: center; background-size: cover; } 

.kp-blog-post a { color: #0782C1; text-decoration: underline; }
.kp-blog-post a:hover { color: #000; text-decoration: underline; }
.kp-blog-post img { display: inline-block; width: 100%; height: auto; }
.kp-blog-post p img { margin-left: -20px; width: calc(100% + 40px); }
.kp-blog-post p { padding: 4px 20px; line-height: 1.6em; font-size: 1.1em; }
.kp-blog-post hr { width: 60%; margin: 16px auto; border-top: 1px solid #e6e6e6; border-bottom: 1px solid transparent; border-left: 1px solid transparent; border-right: 1px solid transparent; }

.kp-blog-post-text { display: block; position: relative; z-index: 10; height: 70px; overflow: hidden; padding: 12px 12px 4px; background: #fff; } 
.kp-blog-post-text-mask { width:100%; height: 30px; position: absolute; left: 0; bottom: 0; 
background: linear-gradient(to top, white, rgba(255, 255, 255, 0)); }

.kp-blog-post-footer { height: 60px; margin: 0px; padding-top: 12px; background: #fff; }

.kp-blog-post-readmore { padding: 2px; margin-left: 10px; background: #399; border: 1px solid #399; border-radius: 3px; color: #fff!important; text-decoration: none!important; }

.kp-blog-post-date { display: block; margin: 8px 10px 4px; font-size: 0.9em; color: #a7a7a7; }
.kp-blog-post-share { float: right; margin: 6px 10px; }
.kp-blog-post-clear { display: block; clear: both; }

/* BREAK POINTS - Ok above 1024 - set img as 450 x 300 */
@media only screen and (min-width : 880px) and (max-width : 1024px) {
	#kp-blog-posts-container { width: 100%!important; }
	.kp-blog-post { width: 360px!important; }
	.kp-blog-post-body-bg {width: 360px; height: 240px; }
}

@media only screen and (min-width : 800px) and (max-width : 879px) {/* */
	.kp-blog-post { width: 315px!important; margin: 16px 12px 16px 0px;}
	.kp-blog-post-body-bg { width: 315px; height: 205px; }
}

@media only screen and (min-width : 550px) and (max-width : 799px) {
	.kp-blog-post { width: 450px; margin: 16px 0px; float: none; display: block; }
	.kp-blog-post-body-bg { width: 450px; height: 300px; } 
}

@media only screen and (max-width:550px) {
	#main .main-area { padding: 20px 0px 15px 0px; }
	.kp-blog-post { width: 420px; margin: 16px 0px; }
	.kp-blog-post-body-bg { width: 420px; height: 280px; }
}

@media only screen and (max-width:480px) {
	.kp-blog-post { width: 390px; margin: 16px 0px; }
	.kp-blog-post-body-bg { width: 390px; height: 260px; }
}

@media screen and (max-width: 420px) {
	.kp-blog-post { width: 270px; }
	.kp-blog-post-body-bg { width: 270px; height: 180px; } 
}



/* BX Slider (jquery.bxslider.css). */
.bx-wrapper{position:relative;margin:0 auto 60px;padding:0}.bx-wrapper img{max-width:100%;display:block}.bx-wrapper .bx-viewport{-webkit-transform:translatez(0);-moz-transform:translatez(0);-ms-transform:translatez(0);-o-transform:translatez(0);transform:translatez(0)}.bx-wrapper .bx-controls-auto,.bx-wrapper .bx-pager{position:absolute;bottom:-30px;width:100%}.bx-wrapper .bx-loading{min-height:50px;background:url(/images/_knightpics/bx-slider/bx_loader.gif) center center no-repeat #000;height:100%;width:100%;position:absolute;top:0;left:0;z-index:2000}.bx-wrapper .bx-pager{text-align:center;font-size:.85em;font-family:Arial;font-weight:700;color:#666;padding-top:20px}.bx-wrapper .bx-controls-auto .bx-controls-auto-item,.bx-wrapper .bx-pager .bx-pager-item{display:inline-block}.bx-wrapper .bx-pager.bx-default-pager a{background:#666;text-indent:-9999px;display:block;width:10px;height:10px;margin:0 5px;outline:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.bx-wrapper .bx-pager.bx-default-pager a.active,.bx-wrapper .bx-pager.bx-default-pager a:hover{background:#000}.bx-wrapper .bx-prev{left:10px;background:url(/images/_knightpics/bx-slider/controls.png) 0 -32px no-repeat}.bx-wrapper .bx-next{right:10px;background:url(/images/_knightpics/bx-slider/controls.png) -43px -32px no-repeat}.bx-wrapper .bx-prev:hover{background-position:0 0}.bx-wrapper .bx-next:hover{background-position:-43px 0}.bx-wrapper .bx-controls-direction a{position:absolute;top:50%;margin-top:-16px;outline:0;width:32px;height:32px;text-indent:-9999px;z-index:9999}.bx-wrapper .bx-controls-direction a.disabled{display:none}.bx-wrapper .bx-controls-auto{text-align:center}.bx-wrapper .bx-controls-auto .bx-start{display:block;text-indent:-9999px;width:10px;height:11px;outline:0;background:url(/images/_knightpics/bx-slider/controls.png) -86px -11px no-repeat;margin:0 3px}.bx-wrapper .bx-controls-auto .bx-start.active,.bx-wrapper .bx-controls-auto .bx-start:hover{background-position:-86px 0}.bx-wrapper .bx-controls-auto .bx-stop{display:block;text-indent:-9999px;width:9px;height:11px;outline:0;background:url(/images/_knightpics/bx-slider/controls.png) -86px -44px no-repeat;margin:0 3px}.bx-wrapper .bx-controls-auto .bx-stop.active,.bx-wrapper .bx-controls-auto .bx-stop:hover{background-position:-86px -33px}.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager{text-align:left;width:80%}.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto{right:0;width:35px}.bx-wrapper .bx-caption{position:absolute;bottom:0;left:0;background:#000\9;background:rgba(0,0,0,.7);width:100%}.bx-wrapper .bx-caption span{color:#fff;display:block;font-size:1.3em;text-shadow:0 1px 0 #000;font-weight:700;padding:16px}



/* All Whistles (tabs, accordion, toggle) -------------------------------------------------------------------------------- */
.whistles {}
.whistle-title { display: block; cursor: pointer; }
.whistles-toggle .whistle-title:hover::before, .whistles-accordion .whistle-title:hover::before { background: #EA8E00; color: red; }
.whistle-content { clear: both; }

.whistles-tabs {}
.whistles-tabs-nav, ul.tabs { display: block; float: left; margin-bottom: 2em; border-bottom: 1px solid #222; padding: 0 !important; }
.whistles-tabs-nav li, ul.tabs li { display: block; float: left; margin: .2em 6px 0 0; padding: 0 !important; }
.whistles-tabs-nav .whistle-title {}
.whistles-tabs-nav li a, ul.tabs li a { display: block; padding: 8px 18px 5px 18px; text-align: center; font-size: 0.9em; cursor: pointer; background: #EA8E00; border: 1px solid #222; border-bottom: 0; color: #F7F6F5; position: relative; top: 2px; white-space: nowrap; text-decoration: none; 
 -webkit-transition: background .4s ease; -moz-transition: background .4s ease; -ms-transition: background .4s ease; -o-transition: background .4s ease; transition: background .4s ease; }
.whistles-tabs-nav li[aria-selected="true"] a, .whistles-tabs-nav li[aria-selected="true"] a:hover, ul.tabs li.active a:hover, ul.tabs li.active a { color: #222; background: transparent; border-bottom: 2px solid #F7F6F5; }
.whistles-tabs-nav li a:hover, ul.tabs li a:hover { color: #222; background: transparent; }
.whistles-tabs-wrap {}
.whistles-tabs-wrap .whistle-content {}

.whistles-toggle {}
.whistles-toggle .whistle-title { display: block; padding: .3em 0;  }
/*.whistles-toggle .whistle-title::before { content: '+'; font-weight: bold; font-size: 1.1em; color: #222; position: relative; display: inline-block; width: 22px; height: 22px; line-height: 22px; vertical-align: middle; margin: -2px 12px 0 0; text-align: center;
 -webkit-transition: background .4s ease; -moz-transition: background .4s ease; -ms-transition: background .4s ease; -o-transition: background .4s ease; transition: background .4s ease; }
.whistles-toggle .whistle-title[aria-selected="true"]::before { content: '-'; line-height: 20px; }*/
.whistles-toggle .whistle-title[aria-selected="true"] {  }
.whistles-toggle .whistle-content {}

.whistles-accordion {}
.whistles-accordion .whistle-title { display: block;  padding: .3em 0 0 0;  }
/*.whistles-accordion .whistle-title::before { content: '+'; font-weight: bold; font-size: 1.1em; color: #222; position: relative; display: inline-block; width: 22px; height: 22px; line-height: 22px; vertical-align: middle; margin: -2px 12px 0 0; text-align: center;
 -webkit-transition: background .4s ease; -moz-transition: background .4s ease; -ms-transition: background .4s ease; -o-transition: background .4s ease; transition: background .4s ease; }
.whistles-accordion .whistle-title[aria-selected="true"]::before { content: '-'; line-height: 20px; }*/
.whistles-accordion .whistle-content {}

/* Extra bit to add to/over-ride the above. Add spacing and dividing lines to the accordion. */
.whistle-title { border-top: 1px solid #FEFEFC; padding-top: 6px!important; padding-bottom: 6px!important; }
.whistle-title:first-of-type { border-top: 0px; }
.whistle-title-clear { clear: both; height: 1px; margin: 0px; border-bottom: 1px solid #D8D8D6; }
.whistle-title-clear:first-of-type { border-bottom: 0px; }
.whistle-content { padding-bottom: 20px; }