/************Reset**************/
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }


html, body, div, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, ol, ul, li, form, fieldset, legend, label, table, header, footer, nav, section { 
	margin: 0; 
	padding: 0;
	border: 0;
} 
ol, ul { 
	list-style: none; 
}
header, footer, nav, section, article, hgroup, figure {
	display: block;	
}
legend {
	display: none;
}
/************End Reset**************/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&display=swap');

html, body { 
	margin:0;
	padding:0;
	background:#fff;
	line-height:1.4;
	font-size:16px;	
	-webkit-font-smoothing: antialiased;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"
}
h1, h2, h3, .logo {
	
	font-family: 'Poppins', sans-serif;
}
h2, h3 { 
    font-weight: 700;
    color: #9faa96;
    font-size: 34px;
    line-height: 1;
    margin-bottom: 20px;
}
h3 { 
color: #7d705f;}

h2 span{    font-size: 16px;
    display: block;
    text-transform: uppercase;}
h2 span.price{   
font-size: 60px;
    letter-spacing: -.2rem;}

a { 
color: #9faa96;}
a:hover { 
color: #7d705f;}


.center { text-align:center;}
/* SENSIBLE RESETS*/
  
  
p { margin-bottom:15px; line-height:1.45;}

ul { 
   list-style-type: disc; 
   margin: 5px 0 5px 15px; 
}
ol { 
   list-style-type: decimal; 
   margin: 5px 0 5px 15px; 
}
ul ul, ol ul { 
   list-style-type: circle; 
   margin: 5px 0px 5px 15px; 
}
ol ol, ul ol { 
   list-style-type: lower-latin; 
   margin: 5px 0px 5px 15px; 
}
li {
       margin: 0 0 5px;
    padding: 0;
	 }
	 


sup { line-height:0}


img { max-width:100%; height:auto;}


.visible { opacity:1}	

.wrap { padding:30px; position: relative; z-index: 2;}

section[class*="-panel"] {
	position:relative;
	overflow:hidden;
}


.panel {
	position: relative;
}


.grid:after, section:after  {
content: "";
display: table;
clear: both;
}



.intro-wrap {
	height: 100vh;
	position: relative;
}
.intro {
	background: url("../images/hilltop_bg.jpg") no-repeat center center;
	background-size: cover;
	position: absolute;
	    display: flex;
    align-items: center;
    text-align: center;
    flex-direction: column;
    justify-content: center;
	color: #fff;
	height: 100%;
	padding: 1rem;
}
.intro:before {
	content: '';
	background-color: rgba(0,0,0,0.4);
	position: absolute;
	height: 100%;
	width: 100%;
}
.intro-content {
	position: relative;
}
.intro h1 {
	   font-size: 5rem;
    line-height: 1;
}
.intro h1:after {
	content: '';
    display: block;
    height: 10px;
    width: 50px;
    background: #fff;
    margin: 30px auto 30px;
}
.intro-content p {font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, "serif";
    font-style: italic;
    font-size: 1.5rem;}

.btn, input.wpcf7-submit { 
	color: #fff;
    text-transform: uppercase;
    padding: 10px 20px;
    display: inline-block;
    background: #9faa96;
    border: none;
    border-radius: 0;
    outline: none;
    font-size: inherit;
    line-height: inherit;
    font-family: 'Poppins', sans-serif;
    font-weight: bold;
}

.intro-content .btn {   
    border: 2px solid #fff;
	background: transparent;
}
.intro-content .btn:hover {   
    color: #fff;
	background: #7d705f;
}





.img-group {line-height: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	margin: 0 -5px;
}
.img-group div {
    padding: 5px;
}

ul.keylines {    margin: 0;
    padding: 0;
    list-style: none;
border-top: 1px solid #e5e5e5;}
ul.keylines li {
	padding: 15px 0;
    border-bottom: 1px solid #e5e5e5;
    text-transform: uppercase;
    margin: 0;
}
.panel.snowdon {
}
.panel.snowdon:before {
	    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.7);
    left: 0;
    display: block;
    z-index: 2;
}

.panel.snowdon:after {
	content: '';
    background: url(../images/snowdonia.jpg) no-repeat center center;
    background-attachment: fixed;
    background-size: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}
    

.w50, .w33 {
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    display: flex;
}

.w50>div {
    width: 50%;
}
.w33>div {
    width: 33.333%;
}
.medium-zoom-overlay {
	z-index: 3;
}
.medium-zoom-image {
	z-index: 4;
}

.summary  [class*='col-'] {
	margin-bottom: 5px;
}

.summary  [class*='col-']>div {
	text-align: center;
	padding: 10px;
	background: #eae9e3;
}
.summary  [class*='col-']>div {
	background: #cfd4ca;
}
.summary  [class*='col-']:last-child>div {
	background: #9faa96;
	color: #fff;
}
.summary  [class*='col-']:last-child>div a {
	color: #fff;
}
.summary .icon {
	font-size: 70px;
	line-height: 1;
}
.summary h2 {
	margin-bottom: 10px;
	color: #fff;
	font-size:30px;
}
.grid.botpad>div {
	padding-bottom: 20px;
}


.thing-block {    background: #fff;
    box-shadow: 5px 3px 20px rgba(0,0,0,0.1);
 }
.thing-block .thing-pic {}
.thing-block .thing-pic a {    
	display: block;
	height: 140px;
    padding: 20px;
    position: relative;
overflow: hidden;}
.thing-block .thing-pic a .pic {
    background-size: cover;
	transition: all .5s;
	position: absolute;
	width: 100%;
	height: 100%;
	display: block;
	top: 0;
    left: 0;
	cursor: pointer;
}
.thing-block .thing-pic a:hover .pic {
	transform: scale(1.1);
}
.mins, .cats span {
    background: #7d705f;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 50px;
}
.cats span {background: #fff;
    color: #000;
	margin: 0 8px 0 0;
}
.thing-block .thing-pic .mins {    position: absolute;
z-index: 2;}
.thing-block .thing-pic .cats {bottom: 20px;
z-index: 2;
    position: absolute;}
.thing-block .thing-dtls {padding: 20px;}
.thing-block .thing-dtls a { display: block;}
.thing-block .thing-dtls .location {}



.grid.gallery .gallery-img {
	line-height: 0;
	background-size: cover;
}	

.grid.gallery .gallery-img a {
	display: block;
    position: relative;
    color: #fff;
    text-decoration: none;
	
}	
.grid.gallery .gallery-img a:after {
	content: '';
	position: absolute;
	left: 0;
	opacity: 0.6;
	width: 0%;
	height: 100%;
	top:0;
	background: #00affc;	
	transition: all .2s;
}	
.grid.gallery .gallery-img a:hover:before {	
    transform: translate(-50%,-50%) scale(1.3);
	opacity: 1;
}		
.grid.gallery .gallery-img a:hover:after {
	width: 100%;	
}	
.gallery-img a:before { content: '\e805';position: absolute;
    font-size: 70px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    margin: 0;
opacity: 0.8;
z-index: 2;	
	transition: all .4s;}
.pdf .gallery-img a:before { content: '\e806'; }
.video .gallery-img a:before { content: '\f16a'; }







@font-face {
  font-family: 'hilltop';
  src: url('../fonts/hilltop.eot?51148404');
  src: url('../fonts/hilltop.eot?51148404#iefix') format('embedded-opentype'),
       url('../fonts/hilltop.woff2?51148404') format('woff2'),
       url('../fonts/hilltop.woff?51148404') format('woff'),
       url('../fonts/hilltop.ttf?51148404') format('truetype'),
       url('../fonts/hilltop.svg?51148404#hilltop') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'hilltop';
    src: url('../font/hilltop.svg?51148404#hilltop') format('svg');
  }
}
*/
 
 [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "hilltop";
  font-style: normal;
  font-weight: normal;
  speak: none;
 
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}
 
.icon-beach:before { content: '\e800'; } /* '' */
.icon-bed:before { content: '\e801'; } /* '' */
.icon-hills:before { content: '\e802'; } /* '' */
.icon-bath:before { content: '\e803'; } /* '' */
.icon-games:before { content: '\e804'; } /* '' */
.icon-people:before { content: '\e805'; } /* '' */



/* form styles */

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
    color: #666;
    border: 1px solid #ccc;
    border-radius: 0;
    padding: 10px;
	transition: all .2s;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"], input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus {
    border-bottom: 3px solid #9faa96;
	outline: none;
}
textarea {  max-height: 120px;}


/* calendar styles */

.page-booking [class^="dopbsp-row"]>div {
        border: none!important;
    padding: 10px 0 10px 30px;
    background: none;
    margin: 0;
}

.page-booking [class^="dopbsp-row"]>div h4 {
    font-weight: 700!important;
    color: #9faa96!important;
    text-transform: uppercase;
    font-size: 18px;
    font-family: 'Poppins', sans-serif !important;
    padding-bottom: 10px!important;
}


.page-booking .DOPBSPCalendar-navigation {
    border: none;
    background: none;
    margin: 0;
}
.page-booking .DOPBSPCalendar-month {
    border: 0;
    background: none;
}
.page-booking .DOPBSPCalendar-month-year {
    font-weight: 700!important;
    color: #9faa96;
    text-transform: uppercase;
    /* font-size: 18px; */
    font-family: 'Poppins', sans-serif !important;
    text-align: center;
    border: 0;
    padding: 10px 0 0;
    background: 0;
    border-top: 1px solid #e5e5e5;
    border-radius: 0;
}

.page-booking .DOPBSPCalendar-navigation .dopbsp-month-year {
    font-weight: 700!important;
    color: #9faa96;
    text-transform: uppercase;
    font-family: 'Poppins', sans-serif !important;
}
.page-booking span.dopbsp-no-available-text {
    text-transform: uppercase;
    font-size: 9px!important;
    font-weight: 700;
}
.page-booking .DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-booked, .page-booking .DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-booked {
    background-color: #a00000!important;
    border-color: #a00000!important;
}
.DOPBSPCalendar-day.dopbsp-booked .dopbsp-bind-middle .dopbsp-body .dopbsp-available {
    color: #a00000!important;
}

.page-booking .DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-day, .page-booking .DOPBSPCalendar-day.dopbsp-available .dopbsp-head .dopbsp-day {
    font-weight: 700!important;
    font-family: 'Poppins', sans-serif !important;
}

.page-booking .DOPBSPCalendar-navigation .dopbsp-week .dopbsp-day {
    color: #9faa96;
	text-transform: uppercase;
    font-weight: 700;
	font-size: 10px!important;
    font-family: 'Poppins', sans-serif !important;

}

.DOPBSPCalendar-navigation {
    background-color: #eae9e3;
    border: 0;
	margin: 0 0 -5px 0;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}
.DOPBSPCalendar-day.dopbsp-available .dopbsp-head, .DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-available, .DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-available, .DOPBSPCalendar-day .dopbsp-bind-left.dopbsp-extended.dopbsp-available .dopbsp-head {
    background-color: #9faa96 !important;
    border-color: #9faa96 !important;
}
.DOPBSPCalendar-navigation .dopbsp-month-year {
    color: #7d705f;
	font-weight: 700;
}
.DOPBSPCalendar-day.dopbsp-available .dopbsp-body, .DOPBSPCalendar-day .dopbsp-body .dopbsp-co.dopbsp-available, .DOPBSPCalendar-day .dopbsp-body .dopbsp-ci.dopbsp-available, .DOPBSPCalendar-day .dopbsp-bind-left.dopbsp-extended.dopbsp-available .dopbsp-body {
    border-color: #9faa96 !important;
}

.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-info {
    display: none;
}

.DOPBSPCalendar-day.dopbsp-selected .dopbsp-head, .DOPBSPCalendar-day.dopbsp-selected .dopbsp-head .dopbsp-co, .DOPBSPCalendar-day.dopbsp-selected .dopbsp-head .dopbsp-ci, .DOPBSPCalendar-day.dopbsp-selected .dopbsp-bind-left.dopbsp-extended .dopbsp-head {
    background-color: #7d705f !important;
    border-color: #7d705f !important;
}

.DOPBSPCalendar-day.dopbsp-selected.dopbsp-first .dopbsp-head .dopbsp-co.dopbsp-available, .DOPBSPCalendar-day.dopbsp-selected.dopbsp-last .dopbsp-head .dopbsp-ci.dopbsp-available, .DOPBSPCalendar-day.dopbsp-selected.dopbsp-first .dopbsp-bind-left.dopbsp-available.dopbsp-extended .dopbsp-head, .DOPBSPCalendar-day.dopbsp-available.dopbsp-selected.dopbsp-last .dopbsp-bind-right .dopbsp-head {
    background-color: #9faa96 !important;
    border-color: #9faa96 !important;
}
.DOPBSPCalendar-month {
    border: 2px solid #eae9e3;
    background: #fff;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.DOPBSPCalendar-sidebar .dopbsp-module, .DOPBSPCalendar-outer-sidebar .dopbsp-module {
    border: none !important;
    background-color: #f2f2ee;
    border-radius: 5px;
}
.DOPBSPCalendar-day.dopbsp-booked .dopbsp-head, .DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-booked, .DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-booked {
    background-color: #e5e5e5 !important;
    border-color: #e5e5e5 !important;
}
.DOPBSPCalendar-day.dopbsp-booked .dopbsp-body, .DOPBSPCalendar-day .dopbsp-body .dopbsp-co.dopbsp-booked, .DOPBSPCalendar-day .dopbsp-body .dopbsp-ci.dopbsp-booked {
    border-color: #e5e5e5 !important;
}
.DOPBSPCalendar-month-year {
        color: #7d705f;
    background-color: #eae9e3;
    border: 0;
    margin: 20px 0 -5px 0;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    text-align: center;
    font-weight: 700;
}



.terms-strip {
	
}
.terms-strip .wrap {
	background: #9faa96;
    padding: 1rem;
    text-align: center;
    color: #fff;
	max-width: 100%;
}
.terms-strip .wrap p {
	margin: 0;
}
.terms-strip a {
	color: rgba(255,255,255,0.5);
}

/*hiding php error text on booking page - remove when fixed*/
.terms-strip+.panel {
    font-size: 0;
}