/*!

bootstrap ref
sm 576
md  768
lg  992
xl  1200

colors
brown   111111
dark brown 253b42
orange   41444B
dark blue 111111
*/

html {
  scroll-behavior: smooth;
}

body {
	font-family: 'Montserrat',Helvetica,Arial;
	color:#111111;
	background:#f7f4ed;

    font-size: 1.04rem;
    line-height: 1.4;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


*::-webkit-media-controls-panel
{
  display: none!important;
  -webkit-appearance: none;
}

*::--webkit-media-controls-play-button
{
  display: none!important;
  -webkit-appearance: none;
}

*::-webkit-media-controls-start-playback-button
{
  display: none!important;
  -webkit-appearance: none;
}

.clear
{
	clear:both;
}

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

a
{
	color:#41444B;
	text-decoration:none;
}

a:hover
{
	color:#111111;
	text-decoration:none;
}

.bg-light
{
	background:#ffffff !important;
}

#main
{
	min-height:300px;
	padding-bottom:44px;
}

.bg
{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    color: #FFFFFF;
    padding: 250px 120px;

}

section
{
	margin:48px auto;
}


h1,
h2,
h3,
h4,
h5,
h6 {
	margin:0 0 18px;
	line-height:1.45;
	padding:0;
	color:#ea8e21;
	font-family:'Montserrat';
	font-weight:800;
}

h1
{
	font-size:2.2rem;
	margin:0 auto 24px;
}

h1 span
{
	color:#41444B;
}

h2
{
	font-size:1.8rem;
	color:#41444B;
}

h3
{
	font-size:1.5rem;
}

h4
{
	font-size:1.3rem;
	color:#41444B;
}

.light-panel h2,
.light-panel h3,
.light-panel h4,
.light-panel h5
{
	color:#111111;
}

p+h2,
p+h3
{
	margin-top:44px;
}

.tapbox .inside
{
	text-transform:uppercase;
    transition: all .3s ease-in-out 0s;
	padding:52px 0;
	background:rgba(142, 170, 195, 0.74);
	color:#111111;
	font-size:20px;
}

.tapbox.skinny .inside
{
	padding:7px 0;
	font-size:16px;
}

.tapbox:hover .inside
{
	background:rgba(142, 170, 195, 1);
	color:#111111;
}

.tapbox.opt2 .inside
{
	background:rgba(155, 186, 213, 0.74);
}

.tapbox.opt2:hover .inside
{
	background:rgba(155, 186, 213, 1);
}

.tapbox.opt3 .inside
{
	background:rgba(211, 227, 238, 0.74);
}

.tapbox.opt3:hover .inside
{
	background:rgba(211, 227, 238, 1);
}

.tapbox.opt4 .inside
{
	background:rgba(226, 237, 240, 0.74);
}

.tapbox.opt4:hover .inside
{
	background:rgba(226, 237, 240, 1);
}

/*--------------------------------------------------------------
# Misc
--------------------------------------------------------------*/

.dark-panel,
.light-panel
{
	background:rgba(226, 237, 240, 0.34);
}

.clouds-panel
{

	background: url(/wp-content/uploads/bg-clouds.jpg) no-repeat center center fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	color:#253b42;
}

@media only screen and (max-width: 720px)
{
	/* NOT FIXED FOR MOBILE */
	.dark-panel,
	.clouds-panel
	{
		background: url(/wp-content/uploads/bg-clouds.jpg) no-repeat center center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}

.slider-testimonials
{
	background:#111111;
}

.light-panel a
{
	color:#837872;
}

.light-panel a:hover
{
	color:#000000;
}

.btn, .container-fluid, .entry-img, .navbar, .overlay, .wpcf7 input[type=submit], a, img {
    transition: all .5s ease-in-out 0s;
}


/*--------------------------------------------------------------
# Gravity Forms
--------------------------------------------------------------*/

.gform_wrapper div.validation_error {
    color: #c02b0a !important;
    font-size: 1em;
    font-weight: 600;
    margin-bottom: 25px;
    border-top: 2px solid #343463 !important;
    border-bottom: 2px solid #343463 !important;
}

.gform_wrapper .validation_message,
.gform_wrapper.gravity-theme .gform_validation_errors>h2,
.gform_wrapper.gravity-theme .gform_validation_errors>ol a
{
    color: #c02b0a !important;
    font-size: 1rem !important;
}

.gform_required_legend
{
	font-size:0.9rem;
	margin:11px 0 18px;
}

.gform_wrapper.gravity-theme .gform_fields
{
    grid-column-gap: 5% !important;
    grid-row-gap: 24px !important;
}

.gform_wrapper.gravity-theme .gsection
{
	margin-top:24px;
    background: #ea8e21 !important;
    padding:11px 24px 6px 24px !important;
    color: #ffffff !important;
    border-bottom: 0px solid #ccc;
}

.gform_wrapper.gravity-theme .gsection h3
{
    color: #ffffff !important;
    line-height:1.2;
    margin:0;
    padding:0;
}

.gform_wrapper.gravity-theme .gsection.clm-spacing-block
{
	margin-top:24px;
    background: transparent !important;
    padding:0px 0px !important;
    color: #000000 !important;
    border-bottom: 0px solid #ccc;
}
.gform_wrapper.gravity-theme .gsection.clm-spacing-block h3
{
	display:none;
}

.gform_wrapper.gravity-theme .gsection.clm-content-block
{
    background: transparent !important;
    padding:0px 0px !important;
    color: #000000 !important;
    border-bottom: 1px solid #ccc;
}

.gform_wrapper.gravity-theme .gsection.clm-content-block h3
{
    color: #000000 !important;
    line-height:1.2;
    margin:0;
    padding:0;
}


.gform_wrapper.gravity-theme .top_label .gsection_description
{
    margin-bottom: 8px !important;
    padding-bottom:0px !important;
    width: 100%;
}

.gform_wrapper.gravity-theme .field_description_above .gfield_description
{
	padding-bottom:4px !important;
	padding-top:4px !important;
}

.gfield_consent_label
{
    display: inline-block;
    max-width: calc(100% - 32px);
    vertical-align: top;
}

.hide_price_option .ginput_price,
.hide_on_form
{
	display:none;
}

.instrux
{
    border-bottom: 1px solid #343463;
    padding: 0 0px 8px 0;
	color:#343463;
    font-size:18px;
    font-weight:600;
}

.gform_wrapper.gravity-theme .gfield .ginput_quantity
{
	max-width:44px;
}

.gform_wrapper.gravity-theme .gfield_radio .gchoice
{
	margin-bottom:11px; !important;
}

.gform_wrapper.gravity-theme .gfield_radio label
{
	line-height:1rem !important;
}

.gpecf-order-summary tfoot
{
	/*
	display:none !important;
	*/
}


/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
input[type="submit" i],
input[type="button"],
.btn
{
    color: #ffffff !important;
    background: #41444B !important;
	font-size:1.24rem;
	text-transform:uppercase;
	font-weight:normal;
	margin-bottom:14px;
	line-height:1.6;
	padding: 0.65rem 1.25rem 0.45rem;
	border-radius:5px;
	cursor:pointer;
}

.btn.subbtn
{
    color: #ffffff !important;
    background: #4b4b4b !important;
	font-size:0.84rem;
	margin-bottom:0px;
	line-height:1rem;
	padding: 0.5rem 1rem 0.32rem;
	text-transform:none;
}

input[type="submit" i]:hover,
input[type="button"]:hover,
.btn:hover
{
    color: #ffffff !important;
    background: #212121 !important;
}

.site-header .btn
{
	margin:0;
	line-height:1.0;
	padding: 0.45rem 1.25rem 0.35rem;
}

.site-title img
{
	width:100px;
	max-width:100%;
	height:auto;
}

/*--------------------------------------------------------------
# Top panel on home detail pages
--------------------------------------------------------------*/
.showcase
{
	height:40vw;
}

.showcase-overlay
{
	height:100%;
	background:rgba(0,0,0,0.4);
}

.showcase i
{
	font-size:48px;
}

.reviewblock
{
	color:#253b42;
	padding:24px;
	margin:0 0 32px;
}

.review
{
	font-style:italic;
}

.reviewer
{
	margin:18px 0 0 0;
}

.box
{
	padding:20px 24px 24px;
	border:3px solid #41444B;
	border-radius:14px;
}

/*--------------------------------------------------------------
# Cards
--------------------------------------------------------------*/
.card-deck
{
	margin:24px 0 0;
}

.cards-services .flip-card-front .card-img-overlay
{
/*
	background-color: rgba(0,0,0,0.5);
*/
}

.cards-services .item-title
{
	color:#ffffff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.9);
	font-size:28px;
}

/* The flip card container - set the width and height to whatever you want. We have added the border property to demonstrate that the flip itself goes out of the box on hover (remove perspective if you don't want the 3D effect */
.flip-card {
  background-color: transparent;
  width: 100%;
  height: 40vh;
  border:0px;
  /*  border: 1px solid #f1f1f1;  */
  perspective: 1000px; /* Remove this if you don't want the 3D effect */
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
/*
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}
*/
/* Position the front and back side */
.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
/*
  background-color: #bbb;
  color: black;
*/
}

/* Style the back side */
.flip-card-back {
  background-color: #111111;
  color: white;
  transform: rotateY(180deg);
}

/*--------------
*  home details
-----------------*/
/*
#002f4b,#dc4225
Convert HEX to RGBA - http://hex2rgba.devoth.com/
*/
.img-gradient:after {
  content:'';
  position:absolute;
  left:0; top:0;
  width:100%; height:100%;
  display:inline-block;
  background: -moz-linear-gradient(top, rgba(72,72,72,0.5) 0%, rgba(24,24,24, 0.74) 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(24,24,24, 0.74)), color-stop(100%,rgba(72,72,72,0.5))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* IE10+ */
  background: linear-gradient(to bottom, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002f4b', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}

.card-img-overlay h1,
.card-img-overlay a
{
	color:#ffffff;
}

/*
*
* ==========================================
* ACCORDION STUFF
* ==========================================
*
*/
/* Horizontal line */
.collapsible-link::before {
  content: '';
  width: 14px;
  height: 2px;
  background: #333;
  position: absolute;
  top: calc(50% - 1px);
  right: 1rem;
  display: block;
  transition: all 0.3s;
}

/* Vertical line */
.collapsible-link::after {
  content: '';
  width: 2px;
  height: 14px;
  background: #333;
  position: absolute;
  top: calc(50% - 7px);
  right: calc(1rem + 6px);
  display: block;
  transition: all 0.3s;
}

.collapsible-link[aria-expanded='true']::after {
  transform: rotate(90deg) translateX(-1px);
}

.collapsible-link[aria-expanded='true']::before {
  transform: rotate(180deg);
}

/*--------------------------------------------------------------
# Overlay / Popup
--------------------------------------------------------------*/
#overlay,
#overlay-content,
.modal {
    z-index: 9999999 !important;
}

.modal-dialog,
.modal-content
{
	z-index:99999;
}

.modal-dialog
{
	max-width: 80%;
}

@media (min-width: 1200px)
{
	.modal-dialog {
		max-width: 900px;
		margin: 1.75rem auto;
	}
}

#overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 2;
  cursor: pointer;
}

#overlay-content
{
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 18px;
	transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	text-align:center;
	border:6px solid #f9d20c;
	border-radius:4px;
	background:#FFFFFF;
	color:#000000;
	width:98%;
	padding:40px 1%;
	max-width:640px;
}


/*--------------------------------------------------------------
# Tables
--------------------------------------------------------------*/

table, th, td {
  border: 0px solid #111111;
}

table
{
	margin:0 0 24px;
}

th, td {
  padding: 11px;
  text-align: left;
}

th {
  background-color: #ea8e21 !important;
  color: white;
}

tr:nth-child(even)
{
	background-color: #f2f4f4;
}

/*--------------------------------------------------------------
# Bullets / list style
--------------------------------------------------------------*/
ul.nobullet
{
	padding:5px 0 0 0;
    list-style-type: none;
}

ul.nobullet li
{
    list-style-type: none;
    display:block;
/*
	background:url(images/li-wings.png) no-repeat 2px 2px;
*/
	padding:0px 0 11px 0px;
	margin:0 0 14px 0;

}


/*--------------------------------------------------------------
# Social Media
--------------------------------------------------------------*/
.social-icons
{
	margin: 3px auto 3px;
	padding: 0px 0 0 0;
	font-size:32px;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer-cards
{
	margin:64px 0 0;
}

.footer-cards .card-footer
{
	background:#e7dad2;
	color:#ffffff !important;
	font-size:1.35rem;
	line-height:1;
	text-decoration:none !important;
}

.footer-cards .card:hover .card-footer
{
	background:#045691;
}

.footer-area
{
    margin: 0px auto 0;
    /*
	background - using clouds-panel
	*/

	line-height:1.1em;
	font-size:1rem;
	padding:11px 0 11px 0px;
	color:#253b42;
}

.footer-area ul {
	display: block;
	text-align:inherit;
	list-style: none;
	margin: 0 auto;
	padding-left: 0;
}

.footer-area .menu li {
	display:block;
	text-align:inherit;
	position: relative;
	padding:0 0px;
	margin:0 0 3px 0;
}

.footer-area .menu li .nav-link
{
	display:inline-block;
}

.footer-area .menu ul ul{
	margin-left:12px;
}

.footer-area .menu li li:before
{
	color:#253b42; /* set color to white */
	content:"\2022"; /* /2022 is the numerical unicode for &bull; */
	font-size:1em; /* set the font-size of the bullet if necessary. Make sure to use em or %*/
	padding-right:4px; /* give the bullet some padding from the text Make sure to use em*/
	position:relative;
	top:.1em; /* set the vertical position of the bullet if necessary. Make sure to use em or % */
	font-size:12px;
}

.footer-area a,
.footer-area .menu li a
{
	text-decoration:none;
	color:#253b42;
}

.footer-area a:hover,
.footer-area .menu li a:hover,
.footer-area .nav-link:hover
{
	color:#111111;
}

.footer-area .nav-link,
.footer-copyright .nav-link
{
    padding: 0rem 1rem 0.5rem;
}

.footer-copyright {
	padding:11px 0 20px;
	line-height: 18px;
	font-size:13px;
	color: #111111;
	background-color: #ffffff;
	margin:0 0;
}

.footer-copyright a
{
	color:#111111;
}

.footer-copyright a:hover
{
	color:#ea8e21;
}

.footer-copyright ul
{
	display: block;
	text-align:inherit;
	list-style: none;
	margin: 0px auto;
	padding-left: 0;
}

.footer-copyright .menu li {
	display:inline-block;
	text-align:inherit;
	position: relative;
	padding:0 0px;
	margin:0 0 0px 0;
}

.footer-copyright .logos
{
	text-align:inherit;
	margin-bottom:14px;
}


/*
*  responsive embeds
*/
.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media only screen and (max-width: 980px)
{
	.flex-viewport
	{
		max-height: 300px !important;
	}

	.container
	{
		max-width: 95%;
	}
}


@media only screen and (max-width: 600px)
{
	.container-md.booking
	{
		padding-left:0;
		padding-right:0;
	}

	.alignright,
	.alignleft
	{
		float:none;
		display:block;
		margin:0 auto 28px;
	}

	.panelblock
	{
		padding:34px;
		margin:34px;
	}

	.flex-viewport
	{
		max-height: 60vw !important;
	}

}


