/*
Theme Name: Base2024
Theme URI: http://www.artejanossw.co.uk
Description: Base theme 2024
Author: Andrew Stuart Horton
Author URI: http://www.artejanossw.co.uk
Version: 1.0
*/

.debugPanel { /* Debug PHP. see ASH_DrawDebugPanel() in functions.php */

    position:absolute;
    top:10%;
    left:10%;
    z-index:99999;
    background:yellow;
    color:#000;
    font-size:140%;
    font-weight:bold;
    padding:8px 16px;
}

hr {

	border: 0 none;
	border-top: 1px solid #bbb;
	background: none;
	height:0;
	width:100%;
}

.clearfloat {
	
  clear:both;
  height:0;
  font-size: 1px;
  line-height: 0px;
}

img {
	
	outline:none;
}

input[type=text], input[type=tel], input[type=email], input[type=password], input[type=number], textarea {
	
	padding:9px 10px 8px 10px;
	color:#444;
  	border: 0;	
    width:80%;
}

html,body {
	font-family: Arial, Helvetica, sans-serif;
	color: #1B365F;
	background:#fff;
	font-weight:400;
	font-style:normal;
	-webkit-font-smoothing: antialiased;
}

#body { 

	position:relative;
    width:100%;
    overflow:hidden;
    font-size:1em;
    line-height: 1.5em;
}

strong, b {
	
	font-weight:700;
}

a, a:visited, a:active, a:focus {
	
	color:#000;
	text-decoration: none;
	outline: none;
}

.non-touch a:hover {
	text-decoration: underline;
}

a.smallLink {

	font-size:76%;	
}

a.btn {

    font-size:130%;
    padding:3px 30px;
    color:#333;
    border:1px solid #777;
    background:transparent;
}

a.btn:hover {

    color:#111;
    text-decoration: none;
}

a.btn.disabled, a.btn.disabled:hover  {

    color:#ccc;
    border:1px solid #ccc;
    cursor:default;
}

/* -- slick slider --- */

.slick-prev, .slick-next {
    position: absolute;
    top: 45%;
    display: block;
    width: 24px;
    height: 60px;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: none;
    background: transparent;
	z-index:22;
}

.thumbnails .slick-prev, .thumbnails .slick-next {

	top:31%;
    width: 16px;
}

.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
    outline: none;
    background: transparent;
}
.slick-prev.slick-disabled, .slick-next.slick-disabled {
    opacity: .25;
}

.slick-prev {
	left:20px;
}
.slick-next {
	right:20px;
}

/************************************************************************************
RESET
*************************************************************************************/
html, body, address, blockquote, div, dl, form, h1, h2, h3, h4, h5, h6, ol, p, pre, table, ul,
dd, dt, li, tbody, td, tfoot, th, thead, tr, button, del, ins, map, object,
a, abbr, acronym, b, bdo, big, br, cite, code, dfn, em, i, img, kbd, q, samp, small, span,
strong, sub, sup, tt, var, legend, fieldset, figure {
	margin: 0;
	padding: 0;
}

tbody td {
	
	padding:4px 6px;
	margin:0;
}

tbody td img.alignnone {
	
	margin:0;
	display:block;
}

img, fieldset {
	border: 0;
}

/* set html5 elements to block */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { 
    display: block;
}

/* set img max-width */
img {
	max-width: 100%;
	height: auto;
}
/* ie 8 img max-width */
@media \0screen {
  img { width: auto;}
}

/* LIST
================================================ */
ul, ol {
	margin: 1em 0 1.4em 24px;
	padding: 0;
	line-height: 140%;
}
li {
	margin: 0 0 .5em 0;
	padding: 0;
}

/* HEADINGS
================================================ */
h1, h2, h3, h4, h5, h6 {
	
	line-height: 114%;
	margin: 20px 0 40px;
	font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-weight:bold;
}

h1 {
	font-size: 2.6em;
}
h2 {
	font-size: 3em;
	margin-top:40px;
}

h3 {
	font-size: 1.6em;
	margin:0;
	padding:20px 0 20px 0;
}
h4 {
	font-size: 1.4em;
}
h5 {
	font-size: 1.2em;
}
h6 {
	font-size: 1em;
}

p {
	padding: 0 0 1.2em;
	margin: 0;
}
small {
	font-size: 87%;
}
blockquote {
	font: italic 110%/130% "Times New Roman", Times, serif;
	padding: 8px 30px 15px;
}

@media screen and (max-width:768px) {

    h2 {
		font-size: 34px;
	}
}

/************************************************************************************
STRUCTURE
*************************************************************************************/

.pageFull {
	
    position:relative;
	width:100%;
}

.pageWide {
	
	width:100%;
	max-width:1200px;
	margin:0;
}

.pageNarrow {
	
    position:relative;
	width:100%;
	max-width:1200px;
	margin: 0 auto;
}

.pageWideCenter {
	
	width:94%;
	max-width:1000px;
	margin: 0 auto;
    text-align:center;
}

.pageNarrowGeneral, .pageNarrowGeneralLeft {
	
	width:96%;
	max-width:800px;
	margin: 0 auto;
}

.pageNarrowGeneralLeft {
    
    max-width:940px;
    margin-top:20px;
    text-align:left;
}

.pageNarrowCenter, .pageExtraNarrowCenter {
	
	width:80%;
	max-width:640px;
	text-align:center;
	margin: 0 auto;
}

.pageExtraNarrowCenter {
	
	max-width:500px;
}

.page-title {
	
	font-weight:300;
	padding: 0 0 30px 0;
	margin: 0;
	font-size: 200%;
	line-height: normal;
	text-align:center;
}

#LandingImageContainer {

	position:relative;
	width:100vw;
	min-height:100vh;
	background-position:center center;
	background-repeat: no-repeat;
	background-size: cover;
}

#HomePageContent {

	overflow:hidden;
}

#LandingCopyWrap {

	padding:50px 0 0 40px;
}

#LandingCopy {

	width:700px;
	max-width:70%;
	text-align:center;
	margin:150px auto 80px auto;
}

@media screen and (max-width:768px) {
	
	#LandingCopyWrap {

		padding:110px 20px 40px 62px;
	}

	#LandingCopy {

		width:100%;
		max-width:none;
		margin:0;
	}
}

.centerMe {

	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#Services {

	background-color:#fff;
	color:#000;
}

#Location {

	background-color:#fff;
	color:#000;
}

#Contact {

	background-color:#fff;
	color:#000;
}

#CookiePolicy {

	background-color:#fff;
	color:#000;
}

.locationFormWrap {
    
    margin-top:20px;
	margin-bottom:40px;
    text-align:left;
}

.locationContent {

    display:inline-block;
    width:45%;
	margin-right:3%;
    vertical-align: top;
}

.locationMapContent {
 
    display:inline-block;
    width:50%;
    padding-top:0px;
    vertical-align: top;
	text-align:center;
}

@media screen and (max-width: 800px) {
    
    .locationContent {

        display:block;
        width:90%;
        margin:0 auto;
    }

    .locationMapContent {

        display:block;
        width:90%;
        padding-top:50px;
        margin:0 auto;
    }    
}

.contentSection {

	position:absolute;
	top:100%;
	left:0;
	width:100vw;
	min-height:100vh;
	transition: top 0.7s ease-in-out;
	z-index:10;
	overflow-y:auto;
	padding-bottom: 6px; margin-bottom: -6px; /* bottom gap causing scrollbar to appear */
}

.contentSectionActive {

	top:0;
}

.contentWrap, .contentWrapWide {

	padding:20px 40px 20px 80px;
	max-width:900px;
	margin:0 auto;
}

.contentWrapWide {

	max-width:1800px;
}

.contentWrapWide.contentLast {

	padding:20px 40px 20px 90px;
}

.contentDim {

	display:none;
	position: absolute;
	top:0;
	left:0;
	width:100vw;
	height:100%;
	background-color: rgba(0,0,0,0.3);
	z-index:16;
}

@media screen and (max-width:768px) {

    .contentWrap, .contentWrapWide {

		padding:20px 30px 40px 70px;
	}

	.contentWrapWide.contentLast {

		padding:20px 40px 20px 70px;
	}
}

/************************************************************************************
HEADER
*************************************************************************************/

.headerBar {

    position:absolute;
    top:26px;
    left:11%;
    z-index:6;
	width:78%;
}

body.admin-bar .headerBar { 

    top:58px; /* plus admin bar of 32px */
}

@media screen and (max-width:782px) {

	.headerBar {

		top:40px;
		left:0;
		width:100%;
	}

    body.admin-bar .headerBar { 

        top:59px;
    }
}

/* SITE LOGO ================================================ */

.site-logo {

    position:relative;
    margin:0;
    padding:0;
	visibility:visible;
}

.site-logo a, .non-touch .site-logo a:hover {
	
	text-decoration: none;
}

.site-logo img {
	
	outline:none;
	display:block;
	margin:0 auto;
}

@media screen and (max-width:768px) {
    
	.site-logo {

		margin:0 0 0 38px;
	}

    .site-logo img {

        max-width:80%;
    }
}

/* 
SITE DESCRIPTION
================================================ */


/* Main Menu --------------------------------------------- */

#main-menu-wrap {

	position:fixed;
	font-family: Arial, Helvetica, sans-serif;
	top:0;
	left:0;
	width:40px;
	height:100vh;
	background-color:#1b385a;
	border-right: 3px solid #a4def9;
	z-index:8000;
	writing-mode: tb;
	writing-mode: tb-rl; /*IE*/
	writing-mode: vertical-rl; /* OPera/webkit*/
	writing-mode: sideways-rl;
}

#main-menu-wrap ul {

	display: table;
	margin:auto 0;
}

#main-menu-wrap li {

	display: table-cell;
	padding-right:8px;
	margin:0;
}

#main-menu-wrap li a {

	font-size:15px;
	font-weight:normal;
	padding:14px 0;
	color:#fff;
}

body.non-touch #main-menu-wrap li a:hover {

	text-decoration: none;
	color:#a4def9;
}

#main-menu-wrap li a.active {

	color:#a4def9;
}

@media screen and (max-device-width: 1024px) {

	#main-menu-wrap li a {

		font-size:18px;
	}
}

@media screen and (max-width:768px) {
    
    #main-menu-wrap li a {

		font-size:18px;
	}
}

/************************************************************************************
POST
*************************************************************************************/
.post {
	padding-bottom:25px;
	margin-bottom: 25px;
	border-bottom:1px solid #bbb;
}

.post:last-child {
	border-bottom:none;
}

/* post content */
.post-content {
	min-width: 120px;
}

/* post title */
.post-title {
	font-size: 26px;
	margin: 0 0 5px;
	padding: 0;
}

/* post image */
.post-image {
	margin: 0 0 5px;
}
.post-image.left {
	float: left;
	margin-right: 15px;
}
.post-image.right {
	float: right;
	margin-left: 15px;
}

/* lightbox zoom image */
.post-image .lightbox {
	position: relative;
	display: inline-block;
	zoom:1;
	max-width: 100%;
}
.post-image .lightbox .zoom {
	width: 40px;
	height: 40px;
	background: url(images/icon-zoom.png) no-repeat center center;
	margin: -20px 0 0 -20px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-border-radius: 10em;
	-moz-border-radius: 10em;
	border-radius: 10em;
}
.post-image .lightbox:hover .zoom {
	background-color: #000;
}

/* post meta */
.post-meta {
	margin: 0 0 7px;
}
.post-meta .post-author {
	background: url(images/post-author.png) no-repeat 0 2px;
	padding: 2px 0 2px 16px;
	margin-right: 7px;
}
.post-meta .post-category {
	background: url(images/post-category.png) no-repeat 0 2px;
	padding: 2px 0 2px 16px;
	margin-right: 7px;
}
.post-meta .post-tag {
	background: url(images/post-tag.png) no-repeat 0 3px;
	padding: 2px 0 2px 16px;
	margin-right: 7px;
}
.post-meta .post-comment a {
	background: url(images/post-comment.png) no-repeat 0 3px;
	padding: 2px 0 2px 16px;
}

/************************************************************************************
POST VIDEO (css for fluid video)
*************************************************************************************/
.post-video {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin-bottom: 15px;
}
.post-video iframe,  
.post-video object,  
.post-video embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/************************************************************************************
PAGE NAVIGATION
*************************************************************************************/
.pagenav {
	clear: both;
	padding-bottom: 20px;
	text-align: right;
}
.pagenav a, .pagenav span {
	line-height: 100%;
	padding: 6px 0 0;
	margin: 0 2px;
	vertical-align: middle;
	display: inline-block;
	zoom:1;
	min-width: 24px;
	min-height: 18px;
	text-align: center;
	-webkit-border-radius: 10em;
	-moz-border-radius: 10em;
	border-radius: 10em;
}
.pagenav a {
	background: rgba(0,0,0,0.6);
	color: #fff;
	text-decoration: none;
}
.non-touch .pagenav a:hover {
	background-color: #000;
}
.pagenav .current {
	text-decoration: none;
	color: #000;
	background:#fff;
	cursor:default;
}

/************************************************************************************
POST NAVIGATION
*************************************************************************************/
.post-nav {
	margin: 0 0 30px;
	padding: 15px 0;
	clear: both;
}
.post-nav span {
	width: 47%;
	position: relative;
}
.post-nav a {
	text-decoration: none;
	display: block;
}
.non-touch .post-nav a:hover {
	text-decoration: none;
}
.post-nav .prev {
	float: left;
}
.post-nav .next {
	float: right;
	text-align: right;
}

/* post nav arrow */
.post-nav span span {
	background: #333;
	color: #fff;
	font: normal 20px/100% "Times New Roman", Times, serif;
	display: block;
	float: left;
	width: 32px;
	height: 28px;
	padding: 4px 0 0;
	text-align: center;
	margin: -8px 10px 17px 0;
	-webkit-border-radius: 10em;
	-moz-border-radius: 10em;
	border-radius: 10em;
}
.post-nav .next span {
	float: right;
	margin-left: 10px;
	margin-right: 0;
}
.non-touch .post-nav a:hover span {
	background: #000;
}

/************************************************************************************
WORDPRESS POST FORMATTING
*************************************************************************************/
img.alignleft, img.aligncenter, img.alignright, img.alignnone {
	margin-bottom: 15px;
}
.alignleft {
	float: left;
	margin-right: 30px;
}
.alignright {
	float: right;
	margin-left: 30px;
}
.aligncenter {
	text-align: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption {
	text-align: center;
	margin-bottom: 15px;
	max-width: 100%;
}
.wp-caption-text {
	font-style: italic;
	font-size: 95%;
	line-height: 120%;
	margin: 6px 0;
}

/************************************************************************************
CLEAR & ALIGNMENT
*************************************************************************************/
.clear {
	clear: both;
}
.left {
	float: left;
}
.right {
	float: right;
}
.textleft {
	text-align: left;
}
.textright {
	text-align: right;
}
.textcenter {
	text-align: center;
}

/* clearfix */
.clearfix:after, .widget li:after, #body:after, #footer:after, footer:after, .pagenav:after, .menu:after, .gallery:after, #content:after
{ visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clearfix, .widget li, #body, #footer, footer, .pagenav, .menu, .gallery
{ display: inline-block; }
/* clearfix for ie7 */
.clearfix, .widget li, #body, #footer, footer, .pagenav, .menu, .gallery
{ display: block; zoom: 1; }

/********************************************/

.footer-nav-wrap {

    padding:16px 0;
}

.footer-nav {
    
	padding: 0;
    margin:0;
	text-align: left;
}

.footer-nav li {
	padding: 0;
	margin: 0 20px 0 0;
	list-style: none;
	display: inline-block;
	zoom:1;
}

.footer-nav li a {

    font-size:90%;
}

.footer-text {

	font-size: 90%;
}

/* ---------------------------------------------------------- */
/* Tablet Layout: Landscape */

@media screen and (max-device-width: 1024px) and (orientation:landscape) {

	
}

/*---------------------------------------------------------*/
/* Tablet Layout: Portrait */

@media screen and (max-device-width: 1024px) and (orientation:portrait) {

}

/* ------------------------------- */
