@import url("/3rdparty/bootstrap/css/bootstrap.min.css");
@import url("/core/css/global.css?v=3299");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,700;1,400&display=swap");
/* Mobile first; then... */  
@media (min-width: 768px) {
	/* small eg iPad portrait */  
}
@media (min-width: 992px) {
	/* medium, e.g iPad landscape, older monitors, laptops  */
}
@media (min-width: 1200px) {
  /* large, e.g newer monitors, laptops */
}

@media (min-width: 1600px) {
  .container {
    width: 1570px;
  }
}

.dk-blue {
	color:#1d71b9;
}


.md-blue {
	color: rgba(9,144,233,1);
}

.lt-blue {
	color: rgba(118,241,255,1);
}

.blue-bg {

background-color: rgba(9,144,233,0.1);
}

/***************

NORMALISE AND AUGMENT 

BOOTSTRAP DEFAULTS

******************/
.container .container {
	width:auto;
	margin:0;
	padding:0;
}

img, video { /* all images max out at screen/col width */
	display:inline-block;
	margin:0;
	max-width:100%;
	height:auto;
}

video {
	display: block;
}

.row img, .row video { /* all column images fill col width */
	width:100%;
}

img.actualsize { /* override above */
	width:auto !important;
	max-width:none;
}

small {
	color:inherit !important;
}

td, th {
	vertical-align:top;
}

label {
	font-weight:normal;
}
legend {
  display: inline;
  margin:0;
  padding: 0 5px;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  border:none;
  width:auto;
}
	
.label {
display: inline;
padding: 0;
font-size: 1em;
font-weight: normal;
line-height: inherit;
color: inherit;
text-align: left;
white-space:normal;
vertical-align:auto;
border-radius: 0;
}

blockquote:after {
	/*prevent single quotes in subsequent blockquotes*/
	content: close-quote;
	visibility:hidden;
}


/* TYPOGRAPHY */


a, a:link, a:visited, a:hover, a:active {
	color:inherit;
	outline:none;
}

.safari-fix {
	/* fixes z-index and font issues in Safari */
      -webkit-transform:translateZ(1px);
      transform:translateZ(1px);
}

* {
	-webkit-text-size-adjust: 100%; /* stops font soze changing in iOS */
	/*-webkit-font-smoothing: subpixel-antialiased;
	
	
	-webkit-font-smoothing: subpixel-antialiased;  makes safaro looks like Firefox */
	/*-moz-osx-font-smoothing: grayscale;  fonts don't appear heavier in Firefox */
}  

body, button, input, select, textarea, th, td { font-family: 'Poppins', sans-serif; color: #303c43; text-rendering: optimizeLegibility;
}

h1, h2 {
	color:#1d71b9;
}

p.lead {
	max-width:800px;
	margin-left:auto;
	margin-right:auto;
}

.btn-white {
	border-color:#ffffff;
	color:#ffffff;
	background-color:transparent;
}

input[type="text"], input[type="password"], input[type="email"], textarea {
	border-color:#0990e9 !important;
}

::-webkit-input-placeholder { /* WebKit browsers */
    color:    #8d7f6f;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #8d7f6f;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #8d7f6f;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
   color:    #8d7f6f;
}
input:focus::-webkit-input-placeholder 
{
    color: transparent !important;
}


hr { 
   
    border-style:none;
    border:none;
	border-top:1px solid rgb(204,204,204);
}

/**** RE-ORDERING IWTH CSS ******

#wrapper {display:table;}

#first {display:table-caption;}
#second {display:table-header-group;}
#last {display:table-footer-group;}

*/


/* ALWAYS SHOW SCROLL BARS

 ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
}
::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0,0,0,.5);
    -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5);
}


*/


/* Truncate to number of lines */



.truncate {
  display: block; /* Fallback for non-webkit */
  display: -webkit-box;
  max-width: 400px;
  height: 36px; /* Fallback for non-webkit = font-size x line-height x lines to show */
  margin: 0 auto;
  font-size: 10px;
  line-height: 1.2;
  -webkit-line-clamp: 3; /*lines to show */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.vertical-center {
 /* centers anything vertically if you don't know dimensions */
  position: relative;/* or absolute*/
  top: 50%;
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -webit-transform: translateY(-50%);
  transform: translateY(-50%);
  /* note you can do this with absolute on x axis too  */
}

/* columns of same height styles */
.container-xs-height {
    display:table;
    padding-left:0px;
    padding-right:0px;
}
.row-xs-height {
    display:table-row;
	height:100%; /* firefox fix */
}
.col-xs-height {
    display:table-cell;
    float:none;
	height:100%; /* firefox fix */
}
@media (min-width: 768px) {
    .container-sm-height {
        display:table;
        padding-left:0px;
        padding-right:0px;
    }
    .row-sm-height {
        display:table-row;
		height:100%; /* firefox fix */
    }
    .col-sm-height {
        display:table-cell;
        float:none;vertical-align:top;
		height:100%; /* firefox fix */
    }
}
@media (min-width: 992px) {
    .container-md-height {
        display:table;
        padding-left:0px;
        padding-right:0px;
		
    }
    .row-md-height {
        display:table-row;
		height:100%; /* firefox fix */
    }
    .col-md-height {
        display:table-cell;
        float:none;vertical-align:top;
		height:100%; /* firefox fix */
    }
}
@media (min-width: 1200px) {
    .container-lg-height {
        display:table;
        padding-left:0px;
        padding-right:0px;
    }
    .row-lg-height {
        display:table-row;
		height:100%; /* firefox fix */
    }
    .col-lg-height {
        display:table-cell;
        float:none;vertical-align:top;
		height:100%; /* firefox fix */
    }
}

#openingtimes {
	/*width:300px;
	height:200px;*/
	background:rgb(0,0,0);
	background:rgba(0,0,0,.8);
	background-size:cover;
	padding:15px;
	color:#ffffff;
	font-size:21px;
	line-height:1.1;
	text-align:center;
}

.fancybox-skin {
	background:transparent !important;
}

#reservations {
	background:#FFFFFF;
}




table.menu td {
	padding:5px 0 5px 15px;
	vertical-align:top;
	/*font-family: Helvetica, Arial, sans-serif;*/
	width:auto !important;
	text-align:right;
	white-space:nowrap;
}

table.menu td:first-child {
	text-align:left;
	white-space:normal;
	padding-left:0;
	
}

table.menu td p {
	margin:0;
}


#newsIndexPage a {
	color:#0990e9;
}

#newsStoryPage.container {
	max-width:800px;
}

.fb_share {
	margin:30px 0;
}

.slide {
	position: relative;
	
}

.slide > img {
	width:100%;
	max-width:100%;
	height:auto;
}
.fullheight {
	height: 500px;
	height: 100vh;
}


.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	/*background: rgba(0,0,0,.3);*/
	padding: 0 30px 120px 30px;
}
@media (min-width: 992px) {
	.overlay {
	padding-bottom:0;
	}
}

#home {
	background-image:url(/local/images/home/laptop-writing.jpg);
	background-image:url(/local/images/home/home.jpg?v=2);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	height: calc(100vh - 90px);
}
@media (min-width: 992px) {

	#home {
		height: 100vh;
	}
}

#home:before {
	content:"";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(0,0,18,.66);
}
#home h1, #home h2 {
	text-align: center;
	color: rgba(255,255,255,1);	
}
#home h1 {
	font-size:42px;
}
@media (min-width: 768px) {
#home h1 {
	font-size:64px;
}
}

#home .scroll-down {
	position:absolute;
	left:0;
	width:100%;
	display:block;
	text-align:center;
	bottom:120px;
	color:#FFFFFF;
	text-transform:uppercase;
}



@media (min-width: 992px) {
	#home .scroll-down {
		bottom:30px;
	}
}


/*

#whyme {
	background: url(/local/images/home/?v=2) no-repeat left center;
	background-size: cover;
	
}
#whyme:before {
	/*content:"";
position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(0,0,18,.3);
}*/
	#whyme .container {
		height:100%;
	}
	
	#whyme .vertical-center {z-index:2;
	}
	
	
#whyme .text {
	padding: 15px 30px;
	/*color: rgba(255,255,255,1) ;*/
	text-align:center;
	position:relative;
	z-index:2;
	
}

#whyme h2 {
	/*color: rgba(255,255,255,1) ;*/
	margin-top:0;
}


@media (min-width: 1200px) {	
	#whyme {
	background: url(/local/images/home/coffee.jpg?v=3) no-repeat center center;
	background-size:cover;
	}
	
	
	#whyme .text {
		
	text-align:right;
	
	border-right: 1px solid #000000;
	
	line-height:1.5;

}
}


#services {
	background:url(/local/images/home/fountain-pen.jpg) top right no-repeat;
	background-image:url(/local/images/HBGRADIENT.jpg);
	background-size:cover;
	text-align:center;
	padding:60px 0;
	

}

#services  h2.text-center {
	font-size:36px;
}

#services  h2.text-center, #services .well h2 {
	position:relative;
	z-index:2;color:rgba(255,255,255,1);
}
/*
#services:before {
	position:absolute;
	content:"";
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:rgba(255,255,255,0.7);
	
}*/

#services  .well {
	margin-top:60px;
	background:rgba(255,255,255,0.2);
	background: rgba(118,241,255,0.1);
	background:transparent;
	border:none;
	box-shadow:none;
	color:rgba(255,255,255,1);
}

#services  .well a.btn.btn-default {
	background:transparent;
	border-color:rgba(255,255,255,1);
}

 i.glyphicon-large {
	font-size:5em;
	
	display:inline-block;color:#1d71b9;
	transition:0.5s;
}

#services .service-icon {
	display:inline-block;
	height:70px;
	width:auto;
}

#services .row >div:hover i {
	transform:scale(1.1,1.1);
}

.fancybox-hidden {
	max-width:600px;
}

#aboutme {

	padding: 60px 30px;
}

@media (min-width: 768px) {
	#aboutme {
	padding: 230px 0;
	
}
#aboutme .row > div {
	vertical-align:middle;
	
}
}

#aboutme p:first-child {
	margin-top:30px;
}

#aboutme .signature {
	width:120px;
}

@media (min-width: 992px) {
	#aboutme .row > div {text-align:left;
	}
	#aboutme p:first-child {
	margin-top:10px;
}

#aboutme .centreline:after {
	content:"";
	position:absolute;
	top:0;
	left:50%;
	height:100%;
	border-left:1px solid #000000;
}
}


#books {
	background-image:url(/local/images/home/books.jpg?v=2);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	height:50vh;
}






#photos1  , #gallery , #photos3 {
	overflow:hidden;
	position:relative;
}


#photos1 img , #gallery img ,  #photos3 img{
	width:100%;
	max-width:100%;
	height:auto;
	
	
}



#testimonials {
	padding:120px 0;
	background-color: rgba(9,144,233,0.1);
}

#testimonials .cycle-quotes {
	margin:0 -30px;
}

#testimonials .col-quote   {
		font-size:20px;
	
	line-height:1.5;
		margin: 60px 0 0 0 ;
		padding:30px;
		width:33.3%;white-space: normal;vertical-align: top;
		
		
	}
	
	#testimonials .col-quote p:first-child {
		font-style:italic;
	}
	
	#testimonials .col-quote img {
		display:block;
		margin-bottom:15px;
		width:100px;
		border:5px solid #0990e9;
		border-radius:50%;
		
	}
@media (min-width: 768px) {
	

#testimonials .container {
	padding: 0 60px;
}
#testimonials .row {
	margin: 0 -90px;
}
#testimonials .row > div {
	padding: 0 60px;
}
	
	#testimonials .quote {

	margin: 60px 30px 0 30px ;

}


}
#testimonials .person {
	font-size:18px;
	text-align:right;
	margin:30px 0 0 0;
}

#testimonials .person strong {
	color:#0990e9;
}



@media (min-width: 1200px) {
.parallax {
	background-attachment: fixed;
}
}

#social {
	padding:110px 0;background-color: rgba(9,144,233,0.1);
}

.twitter-icon {
	position: relative;
top: -3px;
width: 30px;

}

.tweet {
	width:100%;
	overflow:hidden;
}

ul.tweet_list {
	list-style:none;
	margin:0 -15px;
	padding:0;
	width:100%;
	overflow:hidden;
}

ul.tweet_list li {
	list-style:none;
	
	margin:0;
	padding:15px;
	float:left;
}

@media (min-width: 992px) {
	ul.tweet_list li {
	width:20%;
	}
}

ul.tweet_list li  img {
	width:48px;
	height:48px;
	display:block;
}

.tweet_time {
	color:rgba(153,153,153,1);
	font-style:italic;
	display:block;
} 

.social-links ul, .social-links ul li {
	list-style:none;
	margin:0;
	padding:0;
}

.social-links ul  li {
	display:inline-block;
}

.social-links ul  li a {
	display:inline-block;
	width:22px;
	height:22px;
	text-indent:999em;
	background-position: center center;
	background-size:contain;
	background-repeat:no-repeat;
	
	margin:15px 5px;
	
}



.social-links ul  li.facebook a {
	background-image:url(/core/images/svg/facebook.svg)
}
.social-links ul  li.twitter a {
	background-image:url(/core/images/svg/twitter.svg)
}
.social-links ul  li.linkedin a {
	background-image:url(/core/images/svg/linkedin.svg)
}

#coffee {
	background-image:url(/local/images/home/butterfly.jpg?v=2);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	height:50vh;
}

#whatnext {
	padding:60px 0;
}

.angus-book {
	width:50%;
	margin:0 auto 30px auto;
}

@media (min-width: 992px) {
	.angus-book {
		position:absolute;
		width:30%;
		bottom:30px;
		right:0;
		margin:0 ;
	}
}
@media (min-width: 1200px) {
	.angus-book {
		width:40%;
	}
}