/* globals */

body {
  font-family: 'Open Sans', Arial, sans-serif;
  font-weight: 400;
  background: #fafafa;
  text-rendering: optimizeLegibility;
  -ms-overflow-style: scrollbar;
}

h1, h2, h3 {
  font-family: 'Open Sans', Arial, sans-serif;
  font-weight: 300;
  letter-spacing: -1px;
  color: #535353;
}

h1:first-child, 
h2:first-child, 
h3:first-child {
  margin-top: 0;
  padding-top: 0;
}

p {
  line-height: 27px;
}
a {
  color: #87b926;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #87b926;
  text-decoration: underline;
}
a:focus {
  outline:none;
}
.no-scroll {
  overflow: hidden;
}

/* icons */

.material-icons {
  vertical-align: middle;
}

/* buttons */

.btn {
  background: transparent;
  border-radius: 4px;
  border: 2px solid transparent;
  box-shadow: none;
  padding: 9px 12px 7px;
  transition: .5s all ease-in-out;
}
.btn-primary {
  background: #87b926;
  border: 2px solid transparent;
  box-shadow: none;
  text-shadow: none;
}
.btn-info {
  background: transparent;
  border-color: #fff;
}
.btn-link {
  color: #656565;
  text-decoration: underline;
}
.btn-primary:hover, 
.btn-primary:focus,
.btn-primary:active,
.btn-primary:active:focus,
.btn-primary.focus,
.btn-primary.active,
.btn-primary:active:hover,
.btn-primary.active:hover, 
.open > .dropdown-toggle.btn-primary:hover, 
.btn-primary:active:focus, 
.btn-primary.active:focus, 
.open > .dropdown-toggle.btn-primary:focus, 
.btn-primary:active.focus, 
.btn-primary.active.focus, 
.open > .dropdown-toggle.btn-primary.focus {
  background: #a6d844;
  border: 2px solid transparent;
  box-shadow: none;
  text-shadow: none;
  color: #fff;
}
.btn-info:hover, 
.btn-info:focus, 
.btn-info:active,
.btn-info:active:focus,
.btn-info.focus, 
.btn-info.active,
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover, 
.btn-info:active:focus, 
.btn-info.active:focus, 
.open > .dropdown-toggle.btn-info:focus, 
.btn-info:active.focus, 
.btn-info.active.focus, 
.open > .dropdown-toggle.btn-info.focus {
  background: #fff;
  border-color: #fff;
  color: #535353;
}
.btn-link:hover, 
.btn-link:focus,
.btn-link:active,
.btn-link:active:focus,
.btn-link.focus,
.btn-link.active,
.btn-link:active:hover,
.btn-link.active:hover {
  background: transparent;
  border: 2px solid transparent;
  box-shadow: none;
  text-shadow: none;
  color: #656565;
}

/* navbar */

.navbar {
  border: none;
}
.navbar.navbar-fixed-top{
  background: rgba(0,0,0,.5);
  height: 72px;
}
.navbar.navbar-fixed-top ul {
  margin-top: 4px;
}

.nav li a {
  font-size: 14px;
}


/* toggle navbar */

.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
  background-color: #87b926;
}
.navbar-toggle .menu-label {
  color: #fff;
  position: absolute;
  right: 15px;
  top: 25px;
  transition: .5s all;
  z-index: 10;
}
.navbar-toggle .menu-label.label-open {
  opacity: 1;
}
.navbar-toggle.active .menu-label.label-open {
  opacity: 0;
}
.navbar-toggle .menu-label.label-close {
  opacity: 0;
}
.navbar-toggle.active .menu-label.label-close {
  opacity: 1;
}
.touch-nav--backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000;
  transition: .5s all;
  visibility:hidden;
  opacity: 0;
}
.navbar-toggle.active ~ .touch-nav--backdrop {
  visibility: visible;
  opacity: .5;
  transition: .5s all;
}

/* responsive items */

.responsive-item {
  width: 100%;
  position: relative;
  background-size: cover;
  background-position: 50% 50%;
}
.img-figure {
  opacity: 0;
  width: 100%;
  height: 100%;
}
.responsive-4-3 {
  padding-top: 75%;
}

.responsive-3-2 {
  padding-top: 66%;
}

.responsive-2-1 {
   padding-top: 62%;
}

.responsive-1-1 {
   padding-top: 100%;
}
.responsive-item > img,
.responsive-item > .responsive-wrapper {
  position: absolute;
  top: 0;
  left: 0;
}

.row-locations h3 {
  margin-top: 40px;
}
.attractions--row--heading,
.booking--heading,
.locations--row--heading,
.activity--item--heading
{
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 20px;
}
.activity--item--heading {
   text-align: center;
   font-size: 35px;
}
.attractions--row--heading::after,
.locations--row--heading::after {
  position: absolute;
  border-bottom:#f8d406 3px solid;
  content:"";
  bottom: 0;
  left: 33%;
  width: 33%;
}
.booking--heading::after {
  position: absolute;
  /* border-bottom:#f8d406 3px solid; */
  content:"";
  bottom: 0;
  left: 25%;
  width: 50%;
}

.img-caption {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 5px 10px;
  background: #f8d406;
  font-size: 14px;
}
.numbers {
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background-color: #f8d406;
  display: block;
  padding-top: 30px;
  text-align: center;
  line-height: 0;
  position: absolute;
  left: calc(50% - 30px);
  bottom: -30px;
  z-index: 10;
}

/* hero */

#hero {
  background: #222;
  background-position: center 30%;
  background-size: cover;
  position: relative;
  height: auto;
}
.overlay {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 2;
  background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 50%, rgba(0,0,0,0) 100%);
  background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 50%,rgba(0,0,0,0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.7) 50%,rgba(0,0,0,0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000',GradientType=0 );
}
#hero--article {
  color: white;
  max-width: 1000px;
  width: 100%;
  text-align: center;
  position: relative;
  font-weight: 300;
  z-index: 3;
}
h1.hero--heading {
  color: #fff;
  margin: 0 0 8px 0;
  text-shadow: 0 0 20px #072a58;
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 45px;
}
.hero--heading::before {
  content: '';
  background-image: url(assets/hottub--leaves.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  margin: auto;
  height: 50px;
  position: absolute;
  left: 0;
  right: 0;
  top: -45px;
  width: 50px;
  padding: 20px;
}
#hero--article p {
  line-height: 1.6;
  margin: 0 auto 10px auto;
  width: 75%;
  text-shadow: 0 0 20px #0a0a0a;
}
#hero--article p a {
  color: white;
  text-decoration: underline;
  font-weight: 300; 
}
.hero--cta .btn {
  font-size: 18px;
  padding: 14px 40px 13px 20px;
  letter-spacing: -.3px;
}
.hero--cta .material-icons {
  position: absolute;
  top: calc(50% - 15px);
  right: 25px;
}

.hero--cta {
  margin-top: 60px;
}

#hero-strapline {
  background: #535f6d;
  text-align: center;
}

#hero-strapline ul {
  padding: 0;
  margin: 0;
}

.hero-strapline-item {
  display: inline-block;
  list-style: none;
  padding: 10px 20px 15px;
  margin: 0;
  color: #fff;
}

.hero-strapline-item::before {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  content: "\E5CA";
  color: #71a445;
  vertical-align: bottom;
  margin-right: 7px;
}

/* main content */

#main-content {
  position: relative;
}

.breadcrumb {
  position: absolute;
  padding: 8px 12px;
  margin-bottom: 12px;
  list-style: none;
  background-color: #fafafa;
  border-radius: 0 4px 0 0;
  font-size: 15px;
  z-index: 2;
}

.container-fluid {
  overflow: hidden;
}

.block {
  padding: 60px 0;
}

.block h2 {
  color: #535353;
}

/* intro */

#intro {
  background: #efefef;
}

/* booking */

#booking, 
#booking-repeated {
  position: relative;
  padding-top: 120px;
  background-size: cover;
  background-repeat: repeat;
  padding-bottom: 120px;
}

.booking--overlay, 
.booking-repeated--overlay {
  position: absolute;
  top:0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,.5);
}

.booking--overlay, 
.booking-repeated--overlay {
  position: absolute;
  top:0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,.5);
}

p.booking--description {
  color: #fff;
  font-size: 25px;
}

/* activities and testimonial */
#testimonials {
  padding-bottom: 0;
}
.row.testimonials--row {
  background: #f2f2f2;
}

.activity--item--description {
  text-align: center;
  padding-bottom: 20px;
  margin-bottom: 15px;
}

.testimonial--item--description {
  /* letter-spacing: -.33px; */
  color: #646464;
  position: relative;
}

.testimonial--item--title {
  text-align: right;
  font-style: italic;
  color: #646464;
  margin-top: 4px;
}
.testimonial--item--description:first-child::before {
  content: "\f10d ";
  font-family: "FontAwesome";
  position: absolute;
  left: -30px;
  top: -5px;
  font-size: 20px;
  color:#f1a51e;
  line-height: 0;
}
.testimonial--item--description .quotation-mark {
  position: relative;
  display: inline-block;
}
.testimonial--item--description .quotation-mark::after {
  content: "\f10e";
  font-family: "FontAwesome";
  position: absolute;
  right: -30px;
  bottom: -5px;
  font-size: 20px;
  color:#f1a51e;
  line-height: 0;
}

/* regions */



#regions .btn-link {
  font-size: 22px;
  text-decoration: none;
  border-bottom: 1px solid #656565;
  display: inline-block;
  padding: 0;
  width: auto;
  margin-top: 20px;
}

/* attractions */

/* social */

#social {
  background: #316029;
  padding-top: 20px;
  padding-bottom: 20px;
}
#social h3 {
  text-align: center;
  padding: 0;
  margin: 0;
}

#social article {
  opacity: 1;
  position: relative;
  right: -30px;
  margin: auto;
  color: white
}
#social article p {
  font-weight: 300;
  font-size: 16px;
  margin: 5px auto 20px;
  text-align: center;
}
#social--btns {
  margin-left: 10px;
}
#social article .btn--white {
  color: #fff;
  border-color: #fff;
  font-weight: 300;
  width: 35px;
  border-radius: 0;
  margin: 0 3px;
  border: 1px solid white;
  text-align: center;
  padding: 6px 0 4px;
  display: inline-block;
  margin-top: -3px;
}
#social article .btn--white .fa {
  margin: 0 0 0 0;
  font-size: 20px;
}
#social article .btn--white:hover {
  background: #fff;
  color: #4a5a7b;
}
#social article {
  right: 0!important;
  opacity: 1!important;
  -webkit-transition: 1.2s cubic-bezier(.4, 0, .2, 1);
  -moz-transition: 1.2s cubic-bezier(.4, 0, .2, 1);
  -ms-transition: 1.2s cubic-bezier(.4, 0, .2, 1);
  -o-transition: 1.2s cubic-bezier(.4, 0, .2, 1);
  transition: 1.2s cubic-bezier(.4, 0, .2, 1)
}

/* abta */

#abta{
  position: relative;
  width: 100%;
  padding: 40px 20px;
  background: #fff;
  text-align: center;
}
#abta img{
  display: inline-block;
  vertical-align: middle;
}

#abta p{
  display: inline-block;
  vertical-align: middle;
  max-width: 600px;
  margin: 0;
}

#abta p a{
  color: #359AF1;
}
#photo-credit {
  background: #fff7ee;
  color: #777;
  margin: auto;
  padding: 7px 0;
  text-align: center;
  font-size: 12px;
  font-family: Helvetica, Arial, sans-serif;
}
.award-img {
  width: 290px;
  max-width: 100%;
}


/* media queries */

@media screen and (min-width: 0) {
  .container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 0;
    padding-right: 0;
}
.hero--cta {
    width: 100%;
    margin: 0 auto;
}
h2, .h2 {
    font-size: 30px;
    margin-bottom: 30px;
}
h1.hero--heading {
    font-size: 30px;
    width: 100%;
}
.hero--heading::before {
    display: none;
}
#hero--article p {
    font-size: 17px;
    width: 95%;
    margin-bottom: 30px;
}
#hero--article {
    width: 100%;
    margin: 100px auto 30px;
}
.hero--cta .btn {
    margin-bottom: 10px
}
a.navbar-brand {
    max-width: 180px;
    min-height: 70px;
}
.hero--cta .material-icons {
    position: absolute;
    top: calc(50% - 11px);
    right: 25px;
}
.navbar-toggle {
    position: fixed;
    top: 0;
    margin-right: 0;
    padding: 29px 20px;
    margin-top: 0px;
    margin-bottom: 0px;
    border: none;
    border-radius: 0;
    background: #87b926;
    width: 105px;
    z-index: 10;
    right: 0px;
    transition: all .4s;
}
#navbar {
    margin-top: 0;
    position: fixed;
    background: rgba(34, 34, 34, 0.9);
    border-left: #87b926 3px solid;
    padding: 0 15px;
    top: 0;
    right: -200px;
    width: 200px;
    z-index: 10;
    transition: all .5s;
    bottom: 0;
}
.navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 25px;
    line-height: 12px;
}
#close-side-menu a::before {
    font-family: 'Material Icons';
    content: "\E5CD";
    position: absolute;
    left: 5px;
}
.navbar-toggle.active {
    right: 200px;
    transition: all .5s;
}
.navbar-toggle.active + #navbar {
    right: 0;
    transition: all .4s;
}
.navbar-toggle .icon-bar {
    opacity: 1;
    transform: rotate(0) translate(0);
    transition: .2s all ease-out;
}
.navbar-toggle.active > .icon-bar:nth-child(4) {
    transition: .2s all ease-out;
    opacity: 0;
}
.navbar-toggle.active > .icon-bar:nth-child(3) {
    transition: .2s all ease-out;
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
    transform: rotate(45deg) translateX(5px) translateY(2px);
}
.navbar-toggle.active > .icon-bar:nth-child(5) {
    transition: .2s all ease-out;
    transform-origin: top left;
    -ms-transform: rotate(-45deg); /* IE 9 */
    -webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
    transform: rotate(-45deg) translateX(2px) translateY(4px);
}
#activities.block {
    padding-bottom: 0;
}
h2.booking--heading {
    color: #fff;
    font-size: 40px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
p.booking--description {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.4;
    font-weight: 300;
}
.booking--description a {
    color: #fff;
    text-decoration: underline;
}
.booking--cta {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.booking--cta .btn {
    margin-top: 20px
}
.block {
    padding-top: 45px;
    padding-bottom: 45px;
}
#booking, #booking-repeated {
    padding-top: 90px;
    padding-bottom: 90px
}
.activity--item .responsive-wrapper {
    padding: 45px;
}
.activity--item {
    background: #f2f2f2;
}
.locations--row--description,
.attractions--row--description,
.intro--description,
.intro--title {
    padding-left: 24px;
    padding-right: 24px;
}
.testimonial--item .responsive-wrapper {
    padding: 45px;
}
.regions--cta {
    width: 75%;
    margin: 0 auto;
}
#social h3 {
    font-size: 20px;
}
span.social--a--wrapper {
    display: block;
    margin-top: 12px
}
.testimonial--item--img {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    margin-left: 20px;
    margin-top: 21px;
    margin-bottom: 20px;
}
.testimonial--item--name {
    text-align: right;
    font-weight: 600;
    font-style: italic;
    margin-top: 57px;
    color: #646464;
    margin-bottom: 0;
}
h4, .h4 {
    font-size: 15px
}  

.breadcrumb {
    display: none;
}
.touch-nav--backdrop {
    display: block;
}
}

@media screen and (min-width: 375px) {
  .booking--cta {
    width: 80%;
}
}

@media screen and (min-width: 425px) {
  .hero--cta {
    width: 80%;
    margin: 0 auto;
}
.booking--cta {
    width: 75%;
}
}

@media screen and (min-width: 768px) {
  h2, .h2 {
    font-size: 35px;
    margin-bottom: 35px;
}
.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 12px;
    padding-right: 12px;
}
#navbar {
    margin-top: 15px;
    position: static;
    width: auto;
}
.navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 12px;
    padding-left: 10px;
}
.hero--cta {
    width: 100%;
    margin: 0 auto;
}
h1.hero--heading {
    font-size: 36px;
    width: 100%;
}
.hero--heading::before {
    display: block;
}
#hero--article p {
    font-size: 20px;
    width: 90%;
}
#hero--article {
    width: 100%;
    margin: 160px auto 50px;
}
.hero--cta .material-icons {
    position: absolute;
    top: calc(50% - 16px);
    right: 25px;
}
h2.booking--heading {
    padding-bottom: 0;
    margin-bottom: 20px;
}
#locations .row {
    margin-left: -24px;
    margin-right: -24px;
}
#attractions .row > div[class^="col-"] {
    margin-bottom: 45px;
}
.breadcrumb {
    display: block;
    top:-24px;
}
p.attractions--row--description {
    margin-left: 24px;
    margin-right: 24px;
}
.booking--cta {
    width: 90%;
}
h2.booking--heading {
    /* width: 100%; */
}
p.booking--description {
    /* width: 100% */
}
.activity--item:nth-child(odd) .activities--numbers {
    left: calc(100% - 30px);
    bottom: calc(50% - 30px);
}
.activity--item:nth-child(even) .activities--numbers {
    left: -30px;
    bottom: calc(50% - 30px);
}
.col-sm-6.activity--item:nth-child(even),
.col-sm-6.testimonial--item:nth-child(even) {
    padding-left: 0;
}
.col-sm-6.activity--item:nth-child(odd),
.col-sm-6.testimonial--item:nth-child(odd) {
    padding-right: 0;
}
.locations--row--description {
    widht: 100%;
}
.locations--row--description, .attractions--row--description {
    padding-left: 0;
    padding-right: 0;
}
.activity--item {
    background: transparent;
}
.testimonial--item .responsive-wrapper {
    padding: 60px;
}
#social h3 {
    font-size: 24px;
}
span.social--a--wrapper {
    display: inline;
    margin-top: 0;
    margin-left: 3px;
}
.testimonial--item--img {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    margin-left: 20px;
    margin-top: 20px;
    margin-bottom: 0;
}
.testimonial--item--name {
    margin-top: 77px;
}
h4, .h4 {
    font-size: 18px
}
.touch-nav--backdrop {
    display: none;
}
#locations .col-sm-4,
#locations .col-md-4 {
    padding-left: 24px;
    padding-right: 24px;
    border-right: 1px solid #d7d7d7;
}
}
@media screen and (min-width: 992px) {
  #locations .col-sm-6:nth-child(2) {
    border-right: 1px solid #d7d7d7;
}
}
@media screen and (min-width: 1024px) {
  .navbar-nav > li > a {
    padding-left: 25px;
}
h1.hero--heading {
    font-size: 45px;
}
.testimonial--item .responsive-wrapper {
    padding: 60px 45px;
}
p.attractions--row--description {
    margin-left: 12px;
    margin-right: 12px;
}
.booking--cta {
    width: 66%;
}
}
@media only screen and (min-width: 1440px) {
  .booking--cta .btn {
    margin-top: 20px
}
.block {
    padding-top: 60px;
    padding-bottom: 60px
}
#booking, #booking-repeated {
    padding-top: 120px;
    padding-bottom: 120px
}
.activity--item .responsive-wrapper {
    padding: 60px;
}
.hero--cta {
    width: 100%;
    margin-top: 10px;
}
h2.booking--heading {
    font-size: 50px;
}
.booking--cta {
    width: 50%
}
.regions--cta {
    width: 50%;
    margin: 0 auto;
}
.breadcrumb {
    top:0;
}
}
@media only screen and (min-width: 1920px) {
  #activities, #attractions, #testimonials {
    max-width: 1920px;
    margin:auto;
}
}

/* MOBILE HERO */
#hero--article-alt {
  display: none;
}
@media only screen and (max-width: 480px) {
  #hero {
    height: auto;
    overflow: visible;
    padding-bottom: 5px;
    background-position: 72%;
}
#hero--article {
    margin: 130px auto 60px;
}
#hero .hero--description,
#hero .hero--cta {
    display: none;
}
#hero--article-alt {
    padding: 30px;
    text-align: center;
    display: none;
    position: relative;
    display: block;
}
#hero--article-alt::before {
    content: "";
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #fafafa;
    display: block;
    padding-top: 30px;
    text-align: center;
    line-height: 0;
    position: absolute;
    left: calc(50% - 30px);
    top: -30px;
    z-index: 10;
    background-image: url(assets/leaf-black-new.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 60%;
}
#hero--article-alt h1.hero--heading::before {
    display: none;
}
#hero--article-alt p.hero--description {
    color: #444;
    text-shadow: none;
    margin-bottom: 20px;
}
#hero--article-alt a.btn.btn-block.btn-info {
    color: #87b926;
    border-color: #87b926;
}
}
/* Hoseasons Footer Control styles */

.wrapper {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}
/*NEW GRIDS*/
.s-1-2 {
  margin-left: 1.6%;
  width: 46%;
}
.s-2-2 {
  margin-left: 0;
  width: 100%;
}
.grid.s-1-2 {
  margin-left: 0;
}
.grid.s-1-2:nth-child(2n+2) {
  margin-left: 1.6%;
}
@media only screen and (min-width: 30em) {
  .m-1-4 {
    margin-left: 1.6%;
    width: 23.8%;
}
.m-2-4 {
    margin-left: 1.6%;
    width: 49.2%;
}
.m-3-4 {
    margin-left: 1.6%;
    width: 74.6%;
}
.m-4-4 {
    margin-left: 0;
    width: 100%;
}
.grid.s-1-2 {
    margin-left: 1.6%;
}
.grid.m-2-4:nth-child(2n+3),
.m-nm,
.grid.m-4-4 {
    margin-left: 0;
}
}
@media only screen and (min-width: 40em) {
  .l-1-12 {
    margin-left: 1.6%;
    width: 6.86%;
}
.l-2-12 {
    margin-left: 1.6%;
    width: 15.33%;
}
.l-3-12 {
    margin-left: 1.6%;
    width: 23.8%;
}
.l-4-12 {
    margin-left: 1.6%;
    width: 32.26%;
}
.l-5-12 {
    margin-left: 1.6%;
    width: 40.73%;
}
.l-6-12 {
    margin-left: 1.6%;
    width: 49.2%;
}
.l-7-12 {
    margin-left: 1.6%;
    width: 57.66%;
}
.l-8-12 {
    margin-left: 1.6%;
    width: 66.13%;
}
.l-9-12 {
    margin-left: 1.6%;
    width: 74.6%;
}
.l-10-12 {
    margin-left: 1.6%;
    width: 83.06%;
}
.l-11-12 {
    margin-left: 1.6%;
    width: 91.53%;
}
.l-12-12 {
    margin-left: 0;
    width: 100%;
}
.grid.m-2-4:nth-child(n),
.grid.m-2-4:nth-child(2n+2) {
    margin-left: 1.6%;
}
.grid.m-2-4:nth-child(1),
.grid.l-3-12:nth-child(4n+5),
.grid.l-4-12:nth-child(3n+4),
.grid.l-6-12:nth-child(2n+3),
.l-nm,
.col.l-12-12:nth-child(n) {
    margin-left: 0;
}
}
@media only screen and (min-width: 50em) {
  .w-1-12 {
    margin-left: 1.6%;
    width: 6.86%;
}
.w-2-12 {
    margin-left: 1.6%;
    width: 15.33%;
}
.w-3-12 {
    margin-left: 1.6%;
    width: 23.8%;
}
.w-4-12 {
    margin-left: 1.6%;
    width: 32.26%;
}
.w-5-12 {
    margin-left: 1.6%;
    width: 40.73%;
}
.w-6-12 {
    margin-left: 1.6%;
    width: 49.2%;
}
.w-7-12 {
    margin-left: 1.6%;
    width: 57.66%;
}
.w-8-12 {
    margin-left: 1.6%;
    width: 66.13%;
}
.w-9-12 {
    margin-left: 1.6%;
    width: 74.6%;
}
.w-10-12 {
    margin-left: 1.6%;
    width: 83.06%;
}
.w-11-12 {
    margin-left: 1.6%;
    width: 91.53%;
}
.w-12-12 {
    margin-left: 0;
    width: 100%;
}
.grid.l-3-12:nth-child(4n+5),
.grid.l-4-12:nth-child(3n+4),
.grid.l-6-12:nth-child(2n+3),
.col.l-12-12:nth-child(n) {
    margin-left: 1.6%;
}
.grid.w-3-12:nth-child(4n+5),
.grid.w-4-12:nth-child(3n+4),
.grid.w-6-12:nth-child(2n+3),
.w-4-12 + .grid.w-8-12,
.w-8-12 + .grid.w-8-12,
.grid.w-12-12,
.col.w-12-12:nth-child(n),
.w-nm,
.grid.l-3-12:nth-child(1),
.grid.l-4-12:nth-child(1),
.grid.l-6-12:nth-child(1),
.col.l-12-12:nth-child(1) {
    margin-left: 0;
}
}
@media only screen and (min-width: 70em) {
  .xw-1-12 {
    margin-left: 1.6%;
    width: 6.86%;
}
.xw-2-12 {
    margin-left: 1.6%;
    width: 15.33%;
}
.xw-3-12 {
    margin-left: 1.6%;
    width: 23.8%;
}
.xw-4-12 {
    margin-left: 1.6%;
    width: 32.26%;
}
.xw-5-12 {
    margin-left: 1.6%;
    width: 40.73%;
}
.xw-6-12 {
    margin-left: 1.6%;
    width: 49.2%;
}
.xw-7-12 {
    margin-left: 1.6%;
    width: 57.66%;
}
.xw-8-12 {
    margin-left: 1.6%;
    width: 66.13%;
}
.xw-9-12 {
    margin-left: 1.6%;
    width: 74.6%;
}
.xw-10-12 {
    margin-left: 1.6%;
    width: 83.06%;
}
.xw-11-12 {
    margin-left: 1.6%;
    width: 91.53%;
}
.xw-12-12 {
    margin-left: 0;
    width: 100%;
}
.xw-7-12 + .grid.xw-5-12 {
    margin-left: 0;
}
}
/* Column */

.col {
  display: inline-block;
  vertical-align: top;
}
.col:first-of-type,
.col:first-child {
  margin-left: 0;
}
.clearCol {
  clear: both;
  margin-left: 0;
}
.lt-ie9 .col,
.lt-ie9 .col.grid {
  margin-right: .5%;
  margin-left: .5%;
}
.lt-ie8 .col,
.lt-ie8 .col.grid {
  margin-right: .5%;
  margin-left: 0;
}
.lt-ie9 .section.col {
  clear: none;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
/* IE COLUMNS */

.gridTest .col {
  background: #efefef;
  margin-bottom: 10px;
}
.lt-ie9 .s-1-2 {
  width: 49%;
}
.lt-ie8 .col {
  float: left;
}
@media only screen and (min-width: 30em) {
  .lt-ie9 .m-1-4 {
    width: 24%;
}
.lt-ie9 .m-2-4 {
    width: 49%;
}
.lt-ie9 .m-3-4 {
    width: 74%;
}
.lt-ie9 .m-4-4 {
    width: 100%;
}
}
@media only screen and (min-width: 40em) {
  .lt-ie9 .l-1-12 {
    width: 7.33%;
}
.lt-ie9 .l-2-12 {
    width: 15.65%;
}
.lt-ie9 .l-3-12 {
    width: 24%;
}
.lt-ie9 .l-4-12 {
    width: 32.33%;
}
.lt-ie9 .l-5-12 {
    width: 40.67%;
}
.lt-ie9 .l-6-12 {
    width: 49%;
}
.lt-ie9 .l-7-12 {
    width: 57.33%;
}
.lt-ie9 .l-8-12 {
    width: 65.67%;
}
.lt-ie9 .l-9-12 {
    width: 74%;
}
.lt-ie9 .l-10-12 {
    width: 82.35%;
}
.lt-ie9 .l-11-12 {
    width: 90.67%;
}
}
@media only screen and (min-width: 50em) {
  .lt-ie9 .w-1-12 {
    width: 7.33%;
}
.lt-ie9 .w-2-12 {
    width: 15.65%;
}
.lt-ie9 .w-3-12 {
    width: 24%;
}
.lt-ie9 .w-4-12 {
    width: 32.33%;
}
.lt-ie9 .w-5-12 {
    width: 40.67%;
}
.lt-ie9 .w-6-12 {
    width: 49%;
}
.lt-ie9 .w-7-12 {
    width: 57.33%;
}
.lt-ie9 .w-8-12 {
    width: 65.67%;
}
.lt-ie9 .w-9-12 {
    width: 74%;
}
.lt-ie9 .w-10-12 {
    width: 82.35%;
}
.lt-ie9 .w-11-12 {
    width: 90.67%;
}
}
@media only screen and (min-width: 30em) {
  /* Column */
}
/* Section */

.section {
  clear: both;
  margin: 0 auto 10px;
  padding: 10px 3%;
  font-family: helvetica, arial, "sans serif";
}
.section:after {
  clear: both;
  content: '';
  display: block;
}
.sectionW {
  clear: both;
  (;
    float: left;
    );
  (;
    clear: none;
    );
  margin: 0 auto;
  padding: 0;
}
.sectionCol {
  clear: both;
  (;
    float: right;
    );
  (;
    clear: none;
    );
  margin: 0 0 30px 1.6%;
  padding: 0;
}
@media only screen and (max-width: 50em) {
  .sectionW {
    (;
      width: 100%;
      );
}
.no-results-found,
.other-brand-search {
    padding: 20px;
}
}
.visually-hidden {
  display: none;
}
@media only screen and (max-width: 350px) {
  #hero--article-alt p.hero--description {
    padding: 0 30px; 
}
#hero--article-alt {
    padding: 30px 5px 
}
}

/* PLACE PAGE SPECIFIC STYLES HERE */
#hero {
  background-image: url('/assets/lgbt-beach-header.jpg?v=12a013dd6b0750494d2c710ff71a5a45');
}
#activities h4 {
  text-align: center;
}
#activities .cta-button {
  position: relative;
  text-align: center;
}
.xl-container {
  max-width: 1650px;
  margin: auto;
  text-align: center;
}
.top-pick {
  width: 22%;
  height: 270px;
  display: inline-block;
  margin: 3% 1%;
  background-size: cover;
  background-position: center;
  position: relative;
  transition: .5s all;
  vertical-align: top;
}
.pick-link {
  display: block;
  position: absolute;
  bottom: 0;
  color: #fff;
  width: 100%;
  text-align: left;
  background-color: #61616a;
  padding: .5em 1em;
}
.pick-link h3 {
  color: #fff;
  margin-bottom: 3px;

}
.pick-link .material-icons {
  position: absolute;
  right: 5px;
  bottom: 7px;
  font-size: 30px;
}
.top-pick img {
  max-width: 100%;
}
.top-picks--heading.text-center {
  margin-bottom: 0;
  padding-bottom: 25px;
}
.top-picks--heading:after {
  border-bottom: #f8d406 3px solid;
  content: "";
  position: absolute;
  bottom: 0;
  left: 42.5%;
  width: 15%;
}
@media only screen and (min-width: 640px) {
  .top-pick:hover {
    transform: scale(1.1);
}
}
/* media queries */
@media only screen and (min-width: 960px) and (max-width: 1024px) {
  .pick-link .material-icons {
    right: 0;
}
.top-pick {
    height: 205px;
}
.top-picks--heading:after {
    left: 35%;
    width: 30%;
}
}
@media only screen and (min-width: 640px) and (max-width: 959px) {
  .top-pick {
    width: 41%;
    height: 250px;
}
h2.top-picks--heading {
    padding: 20px 0;
}
.top-picks--heading:after {
    left: 30%;
    width: 40%;
}
.xl-container {
    margin-top: 15px;
}
}
@media only screen and (max-width: 639px) {
  .top-pick {
    width: 90%;
}
h2.top-picks--heading {
    padding: 20px 0;
}
.block {
    padding-top: 25px;
}
#activities h4 {
    font-size: 20px;
    line-height: 1.3;
}
#activities.block {
    padding-top: 0;
}
.xl-container {
    margin-top: 20px;
}
.top-picks--heading:after {
    width: 70%;
    left: 15%;
}
}
@media only screen and (max-width: 350px) {
  .top-pick {
    height: 245px;
}
}
@media only screen and (min-width: 0) {
  h1.hero--heading {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.row-flex {
    display: flex; 
    flex-wrap: wrap; 
    align-items: stretch;
}
.row-padding {
    padding-left: 24px;
    padding-right: 24px;
}
.cta-button {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.attractions--row--heading, .booking--heading, .locations--row--heading, .activity--item--heading {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 0px;
}
.attractions--row--heading::after, .locations--row--heading::after {
    position: absolute;
    border-bottom: #f8d406 0px solid;
    content: "";
    bottom: 0;
    left: 33%;
    width: 33%;
}
.locations {
    padding-top: 45px;
    padding-bottom: 0;
}
#locations .row > div[class^="col-"], #attractions .row > div[class^="col-"] {
    margin-bottom: 70px;
}
.locations--row--description, .attractions--row--description {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 75px;
}
}
@media only screen and (min-width: 375px) {
  h1.hero--heading {
    max-width: 100%;
}
}
@media only screen and (min-width: 960px) {
  .sml-device-text {
    display: none;
}
}
@media only screen and (max-width: 959px) {
  .lrg-device-text {
    display: none;
}
}

/*background positions*/
.figure-7 {
  background-position: 50% 95%;  
}
@media only screen and (min-width: 640px) and (max-width: 959px) {
  .figure-7 {
    background-position: 48% 95%;
}
}
@media only screen and (max-width: 800px) {
  #abta p a {
    display: inline;
}
}
@media only screen and (max-width: 640px) {
  .activity--item .responsive-wrapper {
    padding: 33px;
}
.row {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}
}
/*Footer*/
.social-footer {
  background: #fff;
  color: #555;
  border-top: 1px solid #e3e3e3;
  clear: both;
  margin: 0;
}
.social-footer .wrapper {
  padding: 20px 0;
  overflow: hidden;
}
.social-footer ul {
  margin-top: 0;
  text-align: left;
  display: inline-block;
}
.social-footer ul li {
  display: inline-block;
  margin: 0 5px;
  position: relative;
  vertical-align: middle;
}
.social-footer .connect-with-us-container {
  display: inline-block;
  float: left;
}
.social-footer ul li.connect-with-us {
  padding: 10px 15px 10px 0;
}
.social-footer ul li > h3 {
  border: none;
  width: 100%;
  padding: 0;
}
.social-footer h3 {
  font-size: 18px;
  font-weight: 600;
  text-align: left;
  display: inline-block;
  color: #555;
}
.social-footer li a {
  border: none;
  width: 100%;
  height: 100%;
  padding: 10px;
  color: #fff;
  font-size: 20px;
  line-height: 34px;
  text-align: center;
  text-indent: 0;
  display: block;
  overflow: hidden;
  white-space: nowrap;
}
.social-footer a svg {
  -webkit-transition: all .15s ease;
  -moz-transition: all .15s ease;
  -o-transition: all .15s ease;
  -ms-transition: all .15s ease;
  transition: all .15s ease;
  vertical-align: top;
}
.visually-hidden {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  position: absolute!important;
  width: 1px;
}
.social-footer .back-to-top-container {
  display: inline-block;
  float: right;
}
.social-footer .back-to-top-anchor h3 {
  padding-right: 15px;
}
.social-footer .back-to-top-anchor svg {
  vertical-align: middle;
}
#chevron-back-to-top-icon-svg .st0 {
  fill: none;
  stroke: #555555!important;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.mobile-divider {
  display: none;
}
.cookie-container {
  position: fixed;
  z-index: 999999;
  display: none;
  width: 100%;
  background: rgba(22, 33, 39, 1);
  bottom: 0;
}
#footerBottom {
  height: auto;
  padding: 25px 0;
  background-color: #333;
  color: #fff;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  margin: auto;
  text-align: center;
  width: 100%;
}
#footerBottom .section {
  margin: 0 auto;
  padding: 0;
}
#footerBottom p {
  font-size: 13px;
  line-height: 1.7;
  margin: 0 1em;
}
.footerLinks {
   width: 100%;
   margin: 0 auto;
   padding: 0;
}
#footer, #footerBottom {
   font-family: "Open Sans", Helvetica, Arial, sans-serif
}
#footer {
   background-color: #000;
   border-bottom: 0;
   clear: both;
   color: #4a4a4a;
   padding: 0 0 20px;
}
#footer a, #footer h3, #footerBottom {
   color: #fff;
}
#footer h3 {
   font-size: 20px;
   font-weight: 600;
   margin-bottom: 25px;
   margin-top: 2em;
}
#footer a {
   font-size: 15px;
   line-height: 1.4;
}
#footer a:active, #footer a:focus, #footer a:hover, #footer a:visited {
   color: #fff;
   text-decoration: underline;
}
#footer li {
   padding-bottom: 15px;
   font-size: 15px;
   list-style-type: none;
}
#footerBottom {
   height: auto;
   padding: 25px 0;
   background-color: #333;
}
#footerBottom p {
   font-size: 13px;
   line-height: 1.7;
}
#footer .col, #footer ul {
  padding-left: 0;
}
.contact, .address {
  margin-left: 0;
}
#footer .partners.w-3-12 {
  width: 22.8%;
}
#footer .customers .col {
  width: 48.2%;
}
@media only screen and (max-width:1200px) {
   .footerLinks.section {
     padding: 0 25px;
 }
}
@media only screen and (max-width:992px) {
   #footerBottom p {
     text-align: left;
     margin: 0 25px;
 }
}
@media only screen and (max-width: 959px) {
  #footer .company.col, #footer .partners.col {
    margin-left: 0;
}
}
/*mobile footer*/
@media only screen and (max-width: 767px){
  .social-footer {
    border: 0;
}
.social-footer .wrapper {
    padding: 5px 0;
}
.social-footer-content-container {
    display: flex!important;
    flex-direction: column;
}
.social-footer-content-container .connect-with-us-container {
    order: 2;
}
.mobile-divider {
    display: inline-block;
    background: #e3e3e3;
    height: 1px;
    width: 100%;
    margin-left: calc(100% - 100vw);
    padding-right: calc(100% + 100vw);
}
.social-footer .wrapper ul {
    margin: 0;
}
.connect-with-us-container ul {
    margin-bottom: 15px!important;
    width: 100%;
}
.social-footer ul li.connect-with-us {
    width: 100%;
    padding: 10px 15px;
}
.connect-with-us-container ul li {
    width: 19%;
    margin: 0!important;
}
.social-footer ul li.connect-with-us h3 {
    text-align: center;
    margin: 15px 0;
}
.social-footer-content-container .back-to-top-container {
    order: 1;
    text-align: center;
    margin: 0;
}
.social-footer-content-container .back-to-top-container ul {
    margin-top: 0!important;
}
.social-footer .wrapper ul {
    margin: 0;
    padding: 0;
}
.social-footer .back-to-top-anchor h3 {
    vertical-align: initial;
}
#footer .customers .col {
    width: 100%;
}
}