/*
  This file loads all core SCSS files from main-parts file
*/
/* ------------------------------------------------------------------------- */
/* 1. SETUP */
/* ------------------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css?family=Muli:300,300i,400,400i&display=swap");

/* ------------------------------------------------------------------------- *
/*  WORDPRESS DEFAULTS OVERRIDES  */
/* ------------------------------------------------------------------------- */
/* Hero carousel stuff to move */

.holder {
  position: relative;
}

.carousel-item-background {
  height: 100vh;
  width: 100vw;
  object-fit: cover;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 1;
}

.carousel-item-background:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: rgba(0, 0, 0, 0.15);
}

.carousel-content {
  display: flex;
  flex-direction: column;
  position: absolute;
  bottom: 22%;
  left: calc(12%);
  z-index: 3;
}

.carousel-content h2 {
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 200;
  letter-spacing: 1px;
}

.carousel-content h1 {
  text-transform: uppercase;
  font-size: 2.5rem;
  font-weight: 400;
  color: white;
  line-height: 3.2rem;
  width: 40%;
  min-width: 500px;
  margin-top: -7px;
}

.carousel-content p {
  color: white;
  margin: 3px;
  width: 55%;
  font-size: 1.2rem;
  line-height: 1.5rem;
  font-weight: 200rem;
}

.carousel-content .btns {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 5px;
  margin-left: -1.5rem;
}

.carousel-content .btns .button {
  margin: 1.5rem;
}

.carousel-content .btns>.button:nth-child(odd) {
  background-color: white;
  color: grey;
  border: 1px solid white;
  outline: none;
  text-transform: uppercase;
  padding: .7rem 1.3rem;
}

.carousel-content .btns>.button:nth-child(even) {
  background: transparent;
  color: white;
  border: .5px solid white;
  outline: none;
  text-transform: uppercase;
  padding: .7rem 1.3rem;
}

.nav-btns {
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  bottom: 3rem;
  right: 2.5rem;
}

.nav-btns .nav-count {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  width: 40px;
  height: 40px;
  color: white;
  border-radius: 50%;
  margin: 0 auto;
  background-color: #1c1c1c;
}

.nav-btns .nav {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  background-color: white;
  border-radius: 50%;
}

.next {
  margin: 1.5rem 0;
}

.icon {
  width: 20px;
  height: 20px;
}

@media (max-width: 575px) {
  .carousel-content {
    left: calc(6%);
    bottom: 26%;
  }

  .carousel-content h2 {
    font-size: .7rem;
  }

  .carousel-content h1 {
    font-size: 2rem;
    min-width: 350px;
  }

  .carousel-content p {
    margin-top: -5px;
    font-size: .9rem;
    min-width: 350px;
  }

  .carousel-content .btns .button-1 {
    font-size: .9rem;
    padding: .4rem .9rem;
  }

  .carousel-content .btns .button-2 {
    font-size: .9rem;
    padding: .4rem .9rem;
  }

  .nav-btns .nav {
    width: 50px;
    height: 50px;
  }

  .next {
    margin: 1rem 0;
  }

  .nav-btns {
    bottom: 2rem;
    right: 1.5rem;
  }

  .icon {
    width: 13px;
    height: 13px;
  }
}

/* Map stuff to move */

.map_container {
  display: flex;
  justify-content: center;
  padding: 50px;
  margin-bottom: 100px;
}

#map {
  width: 1200px;
  height: 550px;
  scroll-margin-top: 120px;
}

.gm-style-iw div {
  display: flex;
  flex-direction: column;
  padding: 2px;
  overflow: auto;
}

.gm-ui-hover-effect {
  top: 1px !important;
  right: 1px !important;
  transform: scale(1.5);
}

.gm-style-iw h1 {
  font-size: 21px;
  width: 100%;
  margin-bottom: 10px;
}

.gm-style-iw img {
  height: 150px;
  min-height: 150px;
  min-width: 150px;
  max-width: 300px;
  object-fit: cover;
}

.gm-style-iw p {
  width: 300px;
  white-space: initial;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  height: 1.9rem;
  overflow: hidden;
  margin: 10px 0;
}

.gm-style-iw a {
  border: 1px solid #5f5f5f;
  background-color: transparent;
  text-align: center;
  color: #3A4032;
  overflow: hidden;
  font-size: 14px;
  padding: .3rem 0;
  width: 130px;
  height: 30px;
  white-space: nowrap;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.gm-style-iw a:hover {
  background-color: #37454f;
  color: #fff;
}

html {
  scroll-behavior: smooth;
}

/******** wp-admin ********/
#wpadminbar {
  top: -38px !important;
  opacity: 0.5;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

#wpadminbar .quicklinks ul {
  pointer-events: none;
}

#wpadminbar:hover {
  top: 0px !important;
  opacity: 1;
}

#wpadminbar:hover .quicklinks ul {
  pointer-events: initial;
}

@media (min-width: 992px) {
  #wpadminbar {
    top: -28px !important;
  }
}

/******** Searchforms ********/
.searchform>div {
  position: relative;
  width: 100%;
  max-width: 500px;
  margin: 40px auto 0;
}

.searchform .searchbar {
  width: 100%;
}

.searchform [type="submit"] {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  border-radius: 0 3px 3px 0;
  background-color: #333;
  color: #fff;
}

#scroll-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  border-radius: 0.25rem;
  background-color: rgba(0, 0, 0, 0.3);
  font-size: 14px;
  line-height: 40px;
  text-align: center;
  opacity: 0;
}

#scroll-to-top.active {
  opacity: 1;
}

/******** Gallery ********/
.wp_gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 1rem;
  margin-left: -0.8rem;
  margin-right: -0.8rem;
  padding: 0 1rem;
}

.wp_gallery>figure {
  width: 50%;
  /*on mobile all gallery images go to 50%*/
  padding: 0.4rem;
  height: 16vw;
}

@media (max-width: 991px) {
  .wp_gallery>figure {
    height: 20vw;
  }
}

@media (max-width: 600px) {
  .wp_gallery>figure {
    height: 30vw;
  }
}

.wp_gallery>figure>a {
  width: 100%;
  display: inline-block;
  height: 100%;
}

.wp_gallery>figure>a>img {
  object-fit: cover;
  width: 100% !important;
  height: 100%;
}

@media (max-width: 991px) {
  .wp_gallery>figure>a>img {
    height: 20vw;
  }
}

@media (max-width: 600px) {
  .wp_gallery>figure>a>img {
    height: 30vw;
  }
}

@media (min-width: 576px) {
  .wp_gallery>figure {
    padding: 5px;
  }
}

@media (min-width: 768px) {

  .gallery-columns->figure,
  .gallery-columns-3>figure {
    width: calc(100% / 3);
  }

  .gallery-columns-4>figure {
    width: calc(100% / 4);
  }

  .gallery-columns-5>figure {
    width: calc(100% / 5);
  }

  /* you can add higher column divisions but does not really make sense to go any higher unless necessary */
}

@media (min-width: 992px) {
  .wp_gallery {
    margin-top: 1.4rem;
  }
}

/* ------------------------------------------------------------------------- *
/* BOOTSTRAP OVERRIDES */
/* ------------------------------------------------------------------------- */
.close {
  color: inherit;
  text-shadow: none;
  border-radius: 50%;
}

.close:hover {
  color: inherit !important;
}

.btn {
  border: none;
  border-radius: 32px;
  background-color: #411900;
  padding: 12px 30px;
  color: #F2F2ED;
  font-size: 18px;
  font-family: "Terfens", sans-serif;
  letter-spacing: 3px;
  white-space: nowrap;
  text-transform: uppercase;
  margin: 0.5rem 0.8rem;
  min-width: 250px;
  min-height: 40px;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}


.btn.white {
  background-color: #F2F2ED;
  color: #411900;
}

.btn.primary {
  background-color: #F2F2ED;
  border: 1px solid #411900;
  color: #411900;
}

@media (max-width: 992px) {
  .btn {
    min-width: 180px;
    min-height: 35px;
    padding: 0.2rem 0.5rem;
    font-size: 16px;
  }
}

.btn:focus {
  box-shadow: none;
}

.btn:hover {
  background-color: #3A4032;
  color: #F2F2ED;
}

.btn-link {
  text-transform: uppercase;
  color: #3A4032;
  font-size: 1rem;
  padding: 0 1rem;
}

.btn-holder {
  text-align: center;
}

.btn-holder>.btn:first-child {
  margin-left: 0 !important;
}

.btn-holder>.btn:last-child {
  margin-right: 0 !important;
}

.btn-holder>.btn:last-child:not(:first-child) {
  background-color: transparent;
  color: #5f5f5f;
}

.border {
  border: 1px solid #5f5f5f !important;
}

.bg-primary,
.bg-primary a:not(.btn),
.bg-primary a:hover,
.bg-dark,
.bg-dark a:not(.btn),
.bg-dark a:hover {
  color: #151515;
}

.carousel-control-prev,
.carousel-control-next {
  width: 8%;
}

.floorplan .carousel-control-prev,
.floorplan .carousel-control-next {
  width: 15%;
}

.carousel-control-prev-icon {
  background-image: url("../../images/icons/controls-arrow-left.svg");
}

.carousel-control-next-icon {
  background-image: url("../../images/icons/controls-arrow-right.svg");
}

.carousel-control-prev {
  cursor: url('../../images/left-chevron-white.svg'), auto;
}

.carousel-control-next {
  cursor: url('../../images/left-chevron-white.svg'), auto;
}

.carousel-item {
  background-color: #999;
}

.carousel-inner>.item {
  -webkit-transition: 1s ease-in-out left;
  -moz-transition: 1s ease-in-out left;
  -o-transition: 1s ease-in-out left;
  transition: 1s ease-in-out left;
}

/* ------------------------------------------------------------------------- *
/* UMIBASE */
/* ------------------------------------------------------------------------- */
body,
html,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
form,
address,
dl,
dir,
menu,
blockquote,
article,
figure {
  margin: 0;
  padding: 0;
}

body {
  /* font-family: "Muli", sans-serif; */
  font-family: "Warbler", sans-serif;
  font-size: 16px;
  line-height: 23px;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  background: #F2F2ED;
  color: #3A4032;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Terfens", sans-serif;
}

#no-hero {
  margin-top: 150px;
}

#spacer {
  margin-top: 152px;
}

#small-spacer {
  margin-top: 104px;
}

.body-font {
  font-family: "Muli", sans-serif;
  letter-spacing: normal;
}

h1 {
  margin: 1.5rem 0;
  letter-spacing: 3px;
  line-height: 1.25;
  font-family: "TerfensThin";
}

@media (max-width: 768px) {
  h1 {
    font-size: 2rem;
  }
}

h2 {
  margin: 1.5rem 0;
  letter-spacing: 3px;
  line-height: 1;
}

@media (max-width: 768px) {
  h2 {
    font-size: 1.5rem;
  }
}

h3 {
  margin: 1rem 0;
  line-height: 1;
  letter-spacing: 3px;
}

h4 {
  letter-spacing: 3px;
  line-height: 1;
}

h5 {
  letter-spacing: 3px;
  line-height: 1.5;
}

p {
  margin: 1.5rem 0;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
p:first-child {
  margin-top: 0 !important;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child {
  margin-bottom: 0 !important;
}

a {
  color: #3A4032;
  -webkit-transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -ms-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}

a:focus,
a:hover {
  color: #3A4032;
  text-decoration: none;
}

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

address {
  font-style: normal;
}

ul.horizontal>li {
  display: inline-block;
}

input[type="text"],
input[type="number"],
input[type="email"],
textarea {
  width: 100%;
  padding: 10px;
  border: none;
  -webkit-appearance: none;
  background-color: #F2F2ED;
}

:focus {
  outline: none !important;
}

iframe {
  max-width: 100%;
  height: 100%;
}

.contain {
  /* max-width: 1600px; */
  margin: auto;
}

.bg-default {
  background-size: cover;
  background-repeat: no-repeat;
}

.bg-center {
  background-position: center;
}

.flex-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.animate {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

/******** IE Fix for Object fit ********/
.object-fit-container {
  width: 100%;
  height: 100%;
}

.object-fit-container>img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.IE-object-fit {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.IE-object-fit>img {
  opacity: 0;
}

/******** Youtube Embeds in WYSIWYG's ********/
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 1200px;
  margin: 1rem auto;
}

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

@media (min-width: 992px) {
  .video-container {
    margin: 1.5rem auto;
  }
}

/******** Section Padding ********/
.p-default,
.pl-default,
.px-default {
  padding-left: 1.5rem;
}

.p-default,
.pr-default,
.px-default {
  padding-right: 1.5rem;
}

.p-default,
.pt-default,
.py-default {
  padding-top: 1.25rem;
}

.p-default,
.pb-default,
.py-default {
  padding-bottom: 1.25rem;
}

.p-new {
  padding-top: 2.5rem;
}

.p-end {
  padding-bottom: 2.5rem;
}

@media (min-width: 576px) {

  .p-sm-default,
  .pl-sm-default,
  .px-sm-default {
    padding-left: 1.5rem;
  }

  .p-sm-default,
  .pr-sm-default,
  .px-sm-default {
    padding-right: 1.5rem;
  }

  .p-sm-default,
  .pt-sm-default,
  .py-sm-default {
    padding-top: 1.25rem;
  }

  .p-sm-default,
  .pb-sm-default,
  .py-sm-default {
    padding-bottom: 1.25rem;
  }

  .p-sm-new {
    padding-top: 2.5rem;
  }

  .p-sm-end {
    padding-bottom: 2.5rem;
  }
}

@media (min-width: 768px) {

  .p-md-default,
  .pl-md-default,
  .px-md-default {
    padding-left: 1.5rem;
  }

  .p-md-default,
  .pr-md-default,
  .px-md-default {
    padding-right: 1.5rem;
  }

  .p-md-default,
  .py-md-default,
  .pt-md-default {
    padding-top: 1.25rem;
  }

  .p-md-default,
  .py-md-default,
  .pb-md-default {
    padding-bottom: 1.25rem;
  }

  .p-md-new {
    padding-top: 2.5rem;
  }

  .p-md-end {
    padding-bottom: 2.5rem;
  }
}

@media (min-width: 992px) {

  .p-default,
  .pl-default,
  .px-default,
  .p-sm-default,
  .pl-sm-default,
  .px-sm-default,
  .p-md-default,
  .pl-md-default,
  .px-md-default,
  .p-lg-default,
  .pl-lg-default,
  .px-lg-default {
    padding-left: 10%;
  }

  .p-default,
  .pr-default,
  .px-default,
  .p-sm-default,
  .pr-sm-default,
  .px-sm-default,
  .p-md-default,
  .pr-md-default,
  .px-md-default,
  .p-lg-default,
  .pr-lg-default,
  .px-lg-default {
    padding-right: 10%;
  }

  .p-default,
  .py-default,
  .pt-default,
  .p-sm-default,
  .py-sm-default,
  .pt-sm-default,
  .p-md-default,
  .py-md-default,
  .pt-md-default,
  .p-lg-default,
  .py-lg-default,
  .pt-lg-default {
    padding-top: 1.25rem;
  }

  .p-default,
  .py-default,
  .pb-default,
  .p-sm-default,
  .py-sm-default,
  .pb-sm-default,
  .p-md-default,
  .py-md-default,
  .pb-md-default,
  .p-lg-default,
  .py-lg-default,
  .pb-lg-default {
    padding-bottom: 1.25rem;
  }

  .p-new,
  .p-lg-new {
    padding-top: 2.5rem;
  }

  .p-end,
  .p-lg-end {
    padding-bottom: 2.5rem;
  }
}

@media (min-width: 1200px) {

  .p-xl-default,
  .pl-xl-default,
  .px-xl-default {
    padding-left: 12%;
  }

  .p-xl-default,
  .pr-xl-default,
  .px-xl-default {
    padding-right: 12%;
  }

  .p-xl-default,
  .py-xl-default,
  .pt-xl-default {
    padding-top: 2.5rem;
  }

  .p-xl-default,
  .py-xl-default,
  .pb-xl-default {
    padding-bottom: 2.5rem;
  }

  .p-xl-new {
    padding-top: 5rem;
  }

  .p-xl-end {
    padding-bottom: 5rem;
  }
}

/* ------------------------------------------------------------------------- *
/* 2. BASE */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */
/* HEADER */
/* ------------------------------------------------------------------------- */
/* header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 2;
  background: #fff;
  border-bottom: 1px solid #EEEEEE; }
  header .navbar {
    min-height: 104px;
    max-width: 1360px; }
    header .navbar .header-logo {
      width: 72px;
      min-width: 197px;
      margin-left: 20px;
      text-align: left; }
      @media (max-width: 1300px) {
        header .navbar .header-logo {
          min-width: 72px; } }
      @media (max-width: 991px) {
        header .navbar .header-logo {
          margin: 0;
          min-width: unset;
          position: absolute;
          left: 50%;
          top: 15px;
          transform: translate(-50%); } }
    header .navbar .navbar-toggler {
      width: 90px;
      max-height: 104px;
      padding: 0 20px;
      border-radius: 0;
      font-size: 1.5rem;
      line-height: 104px;
      color: #5F5F5F; }
    header .navbar #mainMenu > ul {
      justify-content: center;
      text-transform: uppercase;
      letter-spacing: 2px; }
      @media (max-width: 991px) {
        header .navbar #mainMenu > ul {
          border-top: 1px solid #EEEEEE; } }
      header .navbar #mainMenu > ul li {
        margin: 0 30px; }
        @media (max-width: 1250px) {
          header .navbar #mainMenu > ul li {
            margin: 0 10px; } }
        @media (max-width: 991px) {
          header .navbar #mainMenu > ul li {
            margin: 20px; } }
        header .navbar #mainMenu > ul li a {
          padding: 5px 0px;
          position: relative; }
          header .navbar #mainMenu > ul li a:after {
            content: "";
            position: absolute;
            height: 1px;
            background-color: #37454F;
            width: 0;
            left: 50%;
            bottom: 0;
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: translateX(-50%);
            -webkit-transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all;
            transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all; }
          header .navbar #mainMenu > ul li a:hover:after {
            width: 100%; }
          header .navbar #mainMenu > ul li a:hover {
            color: #37454F; }
    header .navbar #book-now {
      margin-right: 20px;
      margin-left: 0;
      text-transform: uppercase; }
      @media (max-width: 1200px) {
        header .navbar #book-now {
          min-width: 220px; } }
      @media (max-width: 991px) {
        header .navbar #book-now {
          margin-right: 10px;
          top: 28px;
          position: absolute;
          right: 0; } }
      @media (max-width: 575px) {
        header .navbar #book-now {
          border: none;
          min-width: unset;
          font-size: 24px;
          margin-right: 20px; } }
      @media (max-width: 575px) {
        header .navbar #book-now:hover {
          background: unset;
          color: #5F5F5F; } }
      @media (max-width: 575px) {
        header .navbar #book-now span {
          display: none; } }
      header .navbar #book-now i {
        display: none; }
        @media (max-width: 575px) {
          header .navbar #book-now i {
            display: block; } }
  header.show {
    top: 0 !important; }

.home-nav {
  display: none;
  color: #E9E2DE; }
  .home-nav .contain {
    max-width: 1360px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    min-height: 104px;
    z-index: 2; }
    .home-nav .contain .header-logo {
      width: 72px;
      min-width: 72px;
      margin-left: 20px;
      text-align: left; }
      @media (max-width: 1300px) {
        .home-nav .contain .header-logo {
          min-width: 72px; } }
      @media (max-width: 991px) {
        .home-nav .contain .header-logo {
          margin: 0;
          min-width: unset;
          position: absolute;
          left: 50%;
          top: 15px;
          transform: translate(-50%); } }
    .home-nav .contain #homeMenu {
      flex: 1; }
      .home-nav .contain #homeMenu > ul {
        display: flex;
        flex-direction: row;
        line-height: 104px;
        justify-content: center;
        align-items: center;
        text-transform: uppercase;
        letter-spacing: 2px; }
        .home-nav .contain #homeMenu > ul li {
          margin: 0 20px; }
          @media (max-width: 1296px) {
            .home-nav .contain #homeMenu > ul li {
              margin: 0 5px; } }
          @media (max-width: 991px) {
            .home-nav .contain #homeMenu > ul li {
              margin: 20px; } }
          .home-nav .contain #homeMenu > ul li:first-child {
            margin-left: 0; }
          .home-nav .contain #homeMenu > ul li a {
            padding: 5px 0px;
            margin: 0px 15px;
            position: relative; }
            .home-nav .contain #homeMenu > ul li a:after {
              content: "";
              position: absolute;
              height: 1px;
              background-color: #E9E2DE;
              width: 0;
              left: 50%;
              bottom: 0;
              -webkit-transform: translateX(-50%);
              -ms-transform: translateX(-50%);
              transform: translateX(-50%);
              -webkit-transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all;
              transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all; }
            .home-nav .contain #homeMenu > ul li a:hover:after {
              width: 100%; }
    .home-nav .contain #book-now-home {
      margin-right: 20px;
      margin-left: 0;
      text-transform: uppercase;
      max-height: 48px;
      background-color: rgba(55, 69, 79, 0.5);
      color: #E9E2DE; }
      .home-nav .contain #book-now-home:hover {
        color: #37454F;
        background-color: #E9E2DE;
        border-color: #37454F; }

.home > header {
  transition: all .3s ease-in-out;
  top: -104px; }
  @media (max-width: 1191px) {
    .home > header {
      top: 0; } }

.home .home-nav {
  display: block; }
  @media (max-width: 1191px) {
    .home .home-nav {
      display: none; } } */

header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10 !important;
  background: #F2F2ED;
  border-bottom: 1px solid #eeeeee;
}

header .navbar {
  min-height: 104px;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-around;
  gap: 50px;
}

header .navbar .header-links-left,
header .navbar .header-links-right {
  gap: 3.0rem;
  display: flex;
  width: 350px;
}

header .navbar .header-links-left {
  justify-content: space-between;
}

header .navbar .header-links-right {
  justify-content: space-between;
  position: relative;
}

header .navbar .header-links-right .searchandfilter {
  position: absolute;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out, transform 0.3s ease-in-out;
}

header .navbar .header-links-right .searchandfilter.appear {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

header .navbar .header-links-right .searchandfilter input {
  border: 1px solid #411900;
  color: #3A4032;
  margin-top: 35px;
  min-width: 190px;
  font-size: 1rem;
  text-align: center;
  border-radius: 0;
}

header .navbar .header-links-right .open-search img {
  max-width: unset;
  width: 35px;
  z-index: 10;
  position: relative;
}

header .navbar .header-links-left span,
header .navbar .header-links-right span {
  font-size: 18px;
  color: #3A4032;
  font-family: "Terfens", sans-serif;
}

header .navbar .header-logo {
  display: flex;
  justify-content: flex-start;
  width: 72px;
  min-width: 197px;
  margin-left: 20px;
  text-align: left;
}

@media (max-width: 1150px) {
  header .navbar .header-links-left,
  header .navbar .header-links-right,
  header .navbar .telephone {
    display: none;
  }

  header .navbar .header-icons,
  header .navbar .navbar-toggler {
    display: block !important;
  }
}

@media (max-width: 1300px) {
  header .navbar .header-logo {
    min-width: 72px;
  }
}

@media (max-width: 768px) {
  header .navbar .header-logo {
    display: none;
  }
}

header .contain .centre-header-logo img,
.home-nav .contain .centre-header-logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 70px;
  /* z-index: -1; */
}

header .navbar .header-icons,
header .navbar .navbar-toggler {
  display: none;
}

header .navbar .header-icons .mob-only {
  display: none;
}

header .navbar .navbar-toggler,
.home-nav .contain .navbar-toggler {
  margin-right: 20px;
}

header .navbar .navbar-toggler,
.home-nav .contain #book-now,
/* header .navbar .open-avail, */
header .navbar .telephone,
header .navbar .open-search,
.home-nav .contain .navbar-toggler,
.home-nav .contain #book-now,
/* .home-nav .contain .open-avail, */
.home-nav .contain .telephone,
.home-nav .contain .open-search {
  border: none;
  background-color: transparent;
  padding: 0;
  min-width: unset;
}

header .navbar .navbar-toggler img,
header .navbar #book-now img,
/* header .navbar .open-avail svg, */
header .navbar .telephone img,
header .navbar .open-search img,
.home-nav .contain .navbar-toggler img,
.home-nav .contain #book-now img,
/* .home-nav .contain .open-avail img, */
.home-nav .contain .telephone img,
.home-nav .contain .open-search img {
  width: 42px;
  max-height: 104px;
  padding: 0 6px;
  border-radius: 0;
  font-size: 1.5rem;
  color: #5f5f5f;
}

header #mainMenu,
.home-nav #homeMenu {
  position: fixed;
  top: 0;
  right: 0.5rem;
  z-index: 99;
  background-color: #F2F2ED;
  text-transform: uppercase;
  padding: 1rem;
  box-shadow: -3px 3px 6px 3px rgba(21, 21, 21, 0.2) !important;
  width: 420px;
  /* padding-bottom: 4rem; */
}

header #mainMenu li,
.home-nav #homeMenu li {
  margin: 0.5rem 0;
}

header #mainMenu>ul,
.home-nav #homeMenu>ul {
  justify-content: center;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/*
@media (max-width: 991px) {
  header #mainMenu>ul {
    border-top: 1px solid #eeeeee;
  }
} */

header #mainMenu>ul li,
.home-nav #homeMenu>ul li {
  margin: 0 30px;
}

@media (max-width: 1250px) {

  header #mainMenu>ul li,
  .home-nav .contain #homeMenu>ul li {
    margin: 0 10px;
  }
}

header #mainMenu>ul li,
.home-nav #homeMenu>ul li {
  margin: 20px;
}

header #mainMenu>ul li a,
.home-nav #homeMenu>ul li a {
  padding: 5px 0px;
  position: relative;
  color: #411900;
  font-size: 19px;
}

@media(max-width: 999px) {

  header .navbar .header-icons,
  .home-nav .contain .header-icons {
    margin-right: 0px;
    margin-left: 67px;
  }
}

@media (max-width: 575px) {

  header #mainMenu,
  .home-nav #homeMenu {
    width: auto;
  }

  header #mainMenu>ul li,
  .home-nav #homeMenu>ul li {
    margin: 14px 20px;
  }

  header #mainMenu>ul li a,
  .home-nav #homeMenu>ul li a {
    font-size: 14px;
  }
}

header #mainMenu>ul li a:after,
.home-nav #homeMenu>ul li a:after {
  content: "";
  position: absolute;
  height: 1px;
  background-color: #37454f;
  width: 0;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all;
  transition: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) all;
}

header #mainMenu>ul li a:hover:after,
.home-nav #homeMenu>ul li a:hover:after {
  width: 100%;
}

header #mainMenu>ul li a:hover,
.home-nav #homeMenu>ul li a:hover {
  color: #fff;
}

header.show {
  top: 0 !important;
}

.home-nav {
  display: none;
  color: #e9e2de;
}

.home-nav .contain {
  max-width: 1360px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  min-height: 104px;
  z-index: 2;
}

.home-nav .contain .header-logo {
  width: 72px;
  min-width: 72px;
  margin-left: 20px;
  text-align: left;
}

@media (max-width: 1300px) {
  .home-nav .contain .header-logo {
    min-width: 72px;
  }
}

@media (max-width: 991px) {
  .home-nav .contain .header-logo {
    margin: 0;
    min-width: unset;
    position: absolute;
    left: 50%;
    top: 15px;
    transform: translate(-50%);
  }
}

.home-nav .contain #book-now-home {
  margin-right: 20px;
  margin-left: 0;
  text-transform: uppercase;
  max-height: 48px;
  background-color: rgba(55, 69, 79, 0.5);
  color: #e9e2de;
}

.home-nav .contain #book-now-home:hover {
  color: #37454f;
  background-color: #e9e2de;
  border-color: #37454f;
}

/* .home > header {
  transition: all 0.3s ease-in-out;
  top: -104px;
} */

@media (max-width: 1191px) {
  .home>header {
    top: 0;
  }
}

/* .home .home-nav {
  display: block; */
/* } */

@media (max-width: 1191px) {
  .home .home-nav {
    display: none;
  }
}

/* header .navbar .header-icons .open-search>span, */
header .navbar .header-icons .telephone>span,
.home-nav .contain .header-icons .open-search>span,
.home-nav .contain .header-icons .telephone>span {
  display: none;
}

header .navbar .header-icons .searchandfilter,
header .navbar .header-icons .open-search>span.reveal,
header .navbar .header-icons .telephone>span.reveal,
.home-nav .contain .header-icons .searchandfilter,
.home-nav .contain .header-icons .open-search>span.reveal,
.home-nav .contain .header-icons .telephone>span.reveal {
  display: inline-flex;
}

header .navbar .header-icons .searchandfilter,
.home-nav .contain .header-icons .searchandfilter {
  width: 0;
  overflow: hidden;
  transition: 0.3s all ease-out;
}

header .navbar .header-icons .searchandfilter.appear,
.home-nav .contain .header-icons .searchandfilter.appear {
  width: 205px;
}

header .navbar .header-icons .searchandfilter li,
.home-nav .contain .header-icons .searchandfilter li {
  padding: 0 !important;
}

header .navbar .header-icons .searchandfilter input,
.home-nav .contain .header-icons .searchandfilter input {
  min-width: 190px;
  font-size: 1rem;
  text-align: center;
  border-radius: 0;
}

header .navbar .header-icons .searchandfilter input {
  border: 1px solid #411900;
  color: #3A4032;
}

header .navbar .header-icons .searchandfilter input::placeholder {
  color: #3A4032;
}

.home-nav .contain .header-icons .searchandfilter input {
  border: 1px solid #fff;
  color: #fff;
  background-color: transparent;
}

.home-nav .contain .header-icons .searchandfilter input::placeholder {
  color: #fff;
}

@media (max-width: 1150px) {

  header .navbar .telephone {
    display: none;
  }

  /* header .navbar .header-icons .searchandfilter.appear,
  header .navbar .header-icons .telephone > span.reveal {
    position: fixed;
    right: 10px;
    top: 72px;
  }

  header .navbar .header-icons .searchandfilter.appear {
    width: 160px;
    height: 50px;
  } */
  header .navbar .header-icons .searchandfilter input {

    margin-top: 90px;
    /* height: 30px;
    padding: 0;
    width: 160px;
    min-width: 160px; */
    /* display: none; */
  }

  .navbar .open-search img {
    position: absolute;
    top: 50px;
    right: 60px;
  }

  .header-logo {
    order: 2;
  }

  header .navbar .navbar-toggler {
    margin-right: 16px;
  }

  .home header .header-content .book,
  header .header-content .book.show {
    border: none;
    margin: 0;
  }

  /* header .contain .centre-header-logo {
    display: none;
  } */
  /* Fix search box position on mobile */
  header .navbar {
    transition: all 0.5s ease-out;
    justify-content: end;
    gap: 0;
    margin: unset;
  }

  header .contain .centre-header-logo img,
  .home-nav .contain .centre-header-logo img {
    left: 0;
    transform: translate(50%, -50%);
    max-height: 43px;
  }


  header .navbar .header-icons .searchandfilter,
  .home-nav .contain .header-icons .searchandfilter {
    transition: unset;
  }

  header .navbar .searchandfilter.appear {
    position: unset;
    bottom: unset;
  }
}

.show-on-scroll {
  transform: translateY(-100%);
}

.show-on-scroll.scroll-down {
  transform: translateY(0);
}

.mobile-menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  display: none;
}

.mobile-menu .searchbox form {
  max-width: 220px;
}

.mobile-menu .searchbox .searchandfilter label {
  font-size: 20px;
}

.mobile-menu .searchbox .searchandfilter input {
  width: calc(100% - 40px);
  margin: 14px;
}

.mobile-menu .searchandfilter ul li {
  padding: 0;
  margin: 0;
}

.mobile-menu .telephone {
  font-size: 20px;
  /* padding: 16px 0px; */
  position: relative;
  color: #EAE3DF;
  width: 208px;
  margin: 14px;
}

.mobile-menu .telephone img {
  max-height: 32px;
}

.mobile-menu .telephone span {
  margin-left: 0.5rem;
}

/* .mobile-menu .searchbox form {
  max-width: 220px;
}

.mobile-menu .searchbox .searchandfilter label {
  font-size: 20px;
} */

@media only screen and (min-width: 769px) {
  .mobile-menu {
    display: none;
  }
}

@media only screen and (max-width: 575px) {
  .mobile-menu .telephone {
    font-size: 16px;
  }

  .mobile-menu .telephone img {
    max-height: 28px;
  }
}

/* ------------------------------------------------------------------------- *
/* FOOTER */
/* ------------------------------------------------------------------------- */
#pre-footer {
  background-color: #F2F2ED;
  color: #3A4032;
  padding: 64px 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-bottom: 0.2px solid #411900;
}

#pre-footer .section-title {
  margin-bottom: 36px;
}

#pre-footer .section-title .title {
  color: #3A4032;
  /* font-weight: 600; */
  font-size: 24px;
  letter-spacing: 0.2em;
}

#pre-footer .section-title .text {
  font-size: 16px;
}

#pre-footer .form input:not([type='checkbox']) {
  border: 0.4px solid #3A4032;
  background-color: #F2F2ED !important;
  color: #37454F !important;
}

#pre-footer .form input[type='checkbox'] {
  /* -webkit-appearance: none; */
}

#pre-footer form input[type="checkbox"] {
  min-width: 16px;
  min-height: 16px;
  margin-top: 5px;
}

#pre-footer .form button {
  font-size: 16px;
  letter-spacing: 3px;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  color: #F2F2ED;
  font-family: "Terfens", sans-serif;
  &:hover {
    background-color: #3A4032;
    color: #F2F2ED;
  }
}

#pre-footer .form input::placeholder {
  color: #3A4032 !important;
  opacity: 1;
}

#pre-footer .form .ginput_container_consent {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

@media (max-width: 768px) {
  #pre-footer .form .ginput_container_consent {
    display: unset;
    text-align: left;
  }

  #pre-footer .form input[type='checkbox'] {
    float: left;
    margin-right: 5px;
  }

  #pre-footer .form .gfield_consent_label {
    display: block;
  }
}

footer {
  min-height: 166px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-top: 1px solid #eeeeee;
  background-color: #F2F2ED;
  color: #3A4032;
  padding: 64px 120px;
}

footer h2 {
  /* font-weight: 600; */
  font-size: 24px;
  /*letter-spacing: 0.2em;*/
  text-align: left;
  width: 100%;
}

@media (max-width: 575px) { 
  footer h2 {
    text-align: center;
  }
}

footer #footerMenu {
  margin: 20px;
  text-align: center;
  width: 100%;
}

@media (max-width: 992px) {
  footer #footerMenu {
    margin: 10px;
  }
}

footer #footerMenu #menu-footer-menu {
  text-transform: uppercase;
  letter-spacing: 2px;
  display: flex;
  gap: 3rem;
  cursor: pointer;
}

footer #footerMenu #menu-footer-menu li {
  display: flex;
  flex-direction: column;
  align-items: start;
  /* margin: 5px 20px; */
  text-align: left;
  flex: 1;
}

footer #footerMenu #menu-footer-menu>li>a {
  /* font-weight: 600; */
  margin-bottom: 24px;
  font-size: 16px;
  font-family: "Terfens", sans-serif;
}

footer #footerMenu #menu-footer-menu li .sub-menu {
  display: flex;
  flex-direction: column;
  align-items: start;
  text-align: start;
  font-size: 14px;
  gap: 12px;
  text-transform: capitalize;
}

footer #footerMenu #menu-footer-menu li .sub-menu a {
  font-size: 14px;
  color: #3A4032;
  letter-spacing: 0;
}

footer #footerMenu #menu-footer-menu li a:hover {
  color: #3A4032;
}

footer>div {
  margin: 12px 20px 16px;
}

footer>div span {
  font-size: 14px;
}

footer>div .footer-logo {
  display: block;
  text-align: center;
  /* margin-bottom: 16px; */
}

footer>div .footer-logo .site-logo {
  max-height: 60px;
}

@media (max-width: 1200px) {

  footer #footerMenu #menu-footer-menu>li>a,
  footer #footerMenu #menu-footer-menu li {
    margin: 5px 10px;
  }
}

@media (max-width: 992px) {
  footer>div {
    margin: 10px;
  }

  footer #footerMenu #menu-footer-menu {
    flex-wrap: wrap;
  }

  footer #footerMenu #menu-footer-menu li {
    display: block;
    font-size: 16px;
  }
}

@media (max-width: 768px) {

  footer #footerMenu #menu-footer-menu {
    padding: 0 32px;
    flex-direction: column;
    gap: 8px;
    align-items: center;
  }

  footer #menu-footer-menu li {
    position: relative;
    width: 190px;
    margin: 0.25rem 0;
    padding-bottom: 8px;
  }

  footer #menu-footer-menu li ul {
    display: flex;
    flex-direction: column;
    height: 0;
    opacity: 0;
    max-height: 0;
    transition: all 0.3s ease-in-out;
    overflow: hidden;
    border: none;
    padding: 0;
    padding-top: 0px;
    margin: 0;
  }

  footer #footerMenu #menu-footer-menu>li>a {
    margin: 0;
  }

  footer #menu-footer-menu>li>a::after {
    content: '';
    background-image: url(../../images/arrowdown.svg);
    width: 10px;
    height: 7px;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    top: 9px;
    right: 2px;
  }

  footer #menu-footer-menu li ul.active-sub {
    height: auto !important;
    border: none;
    opacity: 1;
    padding-top: 1.3rem;
    max-height: 395px;
    overflow: visible;
    padding-top: 20px;
  }
}

@media (max-width: 575px) {
  #pre-footer {
    padding: 40px 20px;
  }

  #pre-footer form button {
    width: 100%;
  }

  footer {
    padding: 2.5rem 0;
  }

  footer h1 {
    font-size: 16px;
  }

  footer #footerMenu #menu-footer-menu>li {
    border-bottom: #3A4032 1px solid;
    width: 220px;
  }

  footer #footerMenu #menu-footer-menu>li>a {
    font-size: 15px;
    margin: 0;
  }
}

footer .post-footer {
  font-size: 14px;
}

footer .post-footer,
footer .post-footer .socials,
footer .post-footer #menu-post-footer-menu,
footer .post-footer .logo-section {
  display: flex;
  list-style: none;
  /* gap: 16px; */
  gap: 4.5rem;
  align-items: end;
}

footer .post-footer .socials {
  gap: 16px;
}

footer .post-footer {
  justify-content: space-between;
  width: 100%;
}

footer .post-footer .socials li a {
  font-size: 32px;
}

@media (max-width: 1200px) {

  footer .post-footer,
  footer .post-footer .socials,
  footer .post-footer #menu-post-footer-menu,
  footer .post-footer .logo-section {
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {

  footer .post-footer {
    margin-top: 32px;
  }

  footer .post-footer,
  footer .post-footer #menu-post-footer-menu,
  footer .post-footer .logo-section {
    flex-direction: column;
    align-items: center;
  }

  footer .post-footer .logo-section {
    flex-direction: column-reverse;
  }
}

@media (max-width: 575px) {
  footer .post-footer .text-center {
    margin: 36px 0;
    font-size: 14px;
  }
}

/* ------------------------------------------------------------------------- *
/* 3. INCLUDES */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */
/* SINGLE PAGINATION */
/* ------------------------------------------------------------------------- */
.pagination .h5 {
  font-weight: 200;
}

.pagination>div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  width: 100%;
  max-width: 1200px;
  padding: 2rem 0 1.5rem 0;
  margin: auto;
}

.pagination>div>div {
  flex: 1;
  max-width: 360px;
}

@media (max-width: 768px) {
  .pagination>div>div {
    flex: 100%;
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .pagination>div>div h5 {
    font-size: 0.75rem;
  }
}

.pagination .previous span .fa {
  margin-right: 11px;
}

.pagination .share-buttons>ul>li a {
  background-color: #f7f7f7;
  color: #b8b8b7;
  font-weight: bold;
  border: 2px solid #dddddd;
  width: 48px;
  height: 48px;
  line-height: 46px;
  border-radius: 50%;
  margin: 0 0.5rem;
}

.pagination .share-buttons>ul>li a:hover {
  background-color: #955763;
  color: #fff;
  border: 2px solid #955763;
}

.pagination .share-buttons>ul>li .fa-facebook:hover {
  background-color: #3b5998;
  color: #fff;
  border: 2px solid #3b5998;
}

.pagination .share-buttons>ul>li .fa-twitter:hover {
  background-color: #00aced;
  color: #fff;
  border: 2px solid #00aced;
}

.pagination .share-buttons>ul>li .fa-pinterest:hover {
  background-color: #cb2027;
  color: #fff;
  border: 2px solid #cb2027;
}

.pagination .share-buttons>ul>li .fa-linkedin:hover {
  background-color: #007bb6;
  color: #fff;
  border: 2px solid #007bb6;
}

@media (max-width: 768px) {
  .pagination .share-buttons {
    margin-bottom: 20px;
  }
}

.pagination .next .underline-title:after {
  left: unset;
  right: 0;
}

.pagination .next span .fa {
  margin-left: 11px;
}

.share-buttons>ul>li a {
  background-color: #f7f7f7;
  color: #b8b8b7;
  font-weight: bold;
  border: 2px solid #dddddd;
  width: 48px;
  height: 48px;
  line-height: 46px;
  border-radius: 50%;
  margin: 0 0.5rem;
}

.share-buttons>ul>li a:hover {
  background-color: #955763;
  color: #fff;
  border: 2px solid #955763;
}

.share-buttons>ul>li .fa-facebook:hover {
  background-color: #3b5998;
  color: #fff;
  border: 2px solid #3b5998;
}

.share-buttons>ul>li .fa-twitter:hover {
  background-color: #00aced;
  color: #fff;
  border: 2px solid #00aced;
}

.share-buttons>ul>li .fa-pinterest:hover {
  background-color: #cb2027;
  color: #fff;
  border: 2px solid #cb2027;
}

.share-buttons>ul>li .fa-linkedin:hover {
  background-color: #007bb6;
  color: #fff;
  border: 2px solid #007bb6;
}

@media (max-width: 768px) {
  .share-buttons {
    margin-bottom: 20px;
  }
}

/* ------------------------------------------------------------------------- *
/* 4. PARTIALS */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- */
/* HERO */
/* ------------------------------------------------------------------------- */
#hero {
  position: relative;
  height: 100vh;
  overflow: hidden;
  margin-top: 105px;
  background: #F2F2ED;
}

#hero>div {
  position: relative;
  width: 100%;
  height: 100%;
}

#hero>div .carousel-indicators {
  bottom: 28px;
  z-index: 1;
  display: none;
}

@media (max-width: 992px) {
  #hero>div .carousel-indicators {
    bottom: 10px;
  }
}

@media (max-width: 768px) {
  #hero {
    margin-top: 153px;
  }
}

@media (max-width: 576px) {
  #hero>div .carousel-indicators {
    bottom: 0;
  }
}

#hero>div .carousel-inner {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#hero>div .carousel-inner .carousel-item {
  width: 100%;
  height: 100%;
}

#hero>div .carousel-inner .carousel-item img {
  max-height: 100%;
  max-width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

#hero>div .carousel-inner .carousel-item:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
}

#hero>div .hero-caption {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 20px;
}

#hero>div .hero-caption ul li {
  display: inline-block;
  font-size: 20px;
}

@media (max-width: 768px) {
  #hero>div .hero-caption ul li {
    font-size: 18px;
  }
}

#hero>div .hero-logo {
  position: absolute;
  padding: 0 20px;
  top: calc(50% + 75px);
  left: 50%;
  transform: translate(-50%, -50%);
}

#hero.video-hero .video-container {
  position: relative;
  margin: 0;
  max-width: none;
}

#hero.video-hero .video-container:after {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  background-color: rgba(0, 0, 0, 0.3);
}

#hero.video-hero .hero-caption {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 20px;
}

#hero.video-hero .hero-caption ul li {
  display: inline-block;
  font-size: 20px;
}

#hero.video-hero .hero-caption ul li a span:hover {
  color: #000;
}

#hero.video-hero .hero-caption ul li a .divide:hover {
  color: #fff;
}

#hero.video-hero .hero-caption ul li:last-child .divide {
  display: none;
}

#hero.video-hero .hero-caption h1 {
  margin: 1rem 0;
}

@media (max-width: 1100px) {
  #hero.video-hero {
    height: unset;
  }
}

#hero.hero-cpt-carousel {
  height: calc(100vh - 12rem);
  margin-top: 172px;
}

.property-carousel-container {
  padding: 64px 120px;
  /* background: #411900 */
}

.property-carousel-container .section-heading {
  text-align: center;
  margin-bottom: 40px;
  max-width: 1165px;
  margin-left: auto;
  margin-right: auto;
  color: #3A4032;
}

.property-carousel-container .carousel-inner {
  margin-left: auto;
  margin-right: auto;
}


#hero.hero-cpt-carousel .carousel-item, .property-carousel-container .carousel-item {
  display: flex;
}

#hero.hero-cpt-carousel .slick-list,
#hero.hero-cpt-carousel .slick-list>*,
#hero.hero-cpt-carousel .property-content,
.property-carousel-container .slick-list,
.property-carousel-container .slick-list>*,
.property-carousel-container .property-content {
  height: 100%;
}

#hero.hero-cpt-carousel .property-image,
.property-carousel-container .property-image {
  width: 66vw;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 1;
}

#hero.hero-cpt-carousel .property-content,
.property-carousel-container .property-content {
  width: 34vw;
  background-color: #411900;
  color: #E9E2DE;
  z-index: 1;
  align-items: center;
  padding: 2rem;
}
.property-carousel-container .slick-slide {
  height: 60vh;
  min-height: 400px;
  max-height: 800px;
}
.property-carousel-container .property-image {
  width: calc((100vw - 240px) * 0.67);
  max-width: calc((100vw - 240px) * 0.67);

}

.property-carousel-container .property-content {
  width: calc((100vw - 240px) * 0.33);
  max-width: calc((100vw - 240px) * 0.33);

}

#hero.hero-cpt-carousel .property-content .btn,
.property-carousel-container .property-content .btn {
  font-size: 12px;
  text-align: center;
  min-width: unset;
  min-height: unset;
}

#hero.hero-cpt-carousel .property-content .title,
.property-carousel-container .property-content .title {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 17px;
  letter-spacing: 0.2em;
  font-family: "Terfens", sans-serif;
}

#hero.hero-cpt-carousel .property-content .excerpt,
.property-carousel-container .property-content .excerpt {
  letter-spacing: 0.1em;
  color: #FFFFFF;
  font-weight: 400;
  font-size: 12px;
  margin-bottom: 1.5rem;
}

.property-carousel-container .property-content .excerpt {
  text-transform: capitalize;
}

#hero.hero-cpt-carousel .property-content .excerpt>p,
.property-carousel-container .property-content .excerpt>p {
  margin: 0.7rem;
}

#hero.hero-cpt-carousel .property-content .excerpt .location,
.property-carousel-container .property-content .excerpt .location {
  /*font-style: italic;*/
  font-size: 15px;
  text-transform: capitalize;
  font-family: Warbler;
}

#hero.hero-cpt-carousel .property-content .excerpt .location .separator,
.property-carousel-container .property-content .excerpt .location .separator {
  font-style: normal;
}

#hero.hero-cpt-carousel .slick-arrow,
.property-carousel-container .slick-arrow {
  position: absolute;
  height: 40px;
  width: 40px;;
  left: 30px;
  top: calc(50% - 24px);
  color: transparent;
  background-image: url(../../images/left-chevron-white.svg);
  background-size: 18px;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid white;
  border-radius: 100px;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
}

#hero.hero-cpt-carousel .slick-arrow:hover,
.property-carousel-container .slick-arrow:hover {
  background-color: #3A4032;
}

#hero.hero-cpt-carousel .slick-next,
.property-carousel-container .slick-next {
  right: 20px;
  left: unset;
  transform: rotate(180deg);
}

@media (max-width: 992px) {
  .property-carousel-container .property-image {
    width: calc((100vw - 196px) * 0.5);
  }
  .property-carousel-container .property-content {
    width: calc((100vw - 196px) * 0.5);
  }
}

@media (max-width: 768px) {
  #hero.hero-cpt-carousel {
    margin-top: 105px;
  }

  .property-carousel-container {
    padding: 32px 20px;
  }

  #hero.hero-cpt-carousel .carousel-item,
  .property-carousel-container .carousel-item {
    flex-direction: column;
  }

  #hero.hero-cpt-carousel .property-content,
  #hero.hero-cpt-carousel .property-image {
    width: 100vw;
  }

  .property-carousel-container .property-content,
  .property-carousel-container .property-image {
    width: calc(100vw - 32px);
  }

  #hero.hero-cpt-carousel .property-image,
  .property-carousel-container .property-image {
    height: 54%;
    max-width: unset;
  }

  #hero.hero-cpt-carousel .property-content,
  .property-carousel-container .property-content {
    height: 46%;
    max-width: unset;
  }

  #hero.hero-cpt-carousel .property-content .title,
  .property-carousel-container .property-content .title {
    font-size: 15px;
    margin-bottom: 0.5rem;
  }

  #hero.hero-cpt-carousel .property-content .excerpt>p,
  .property-carousel-container .property-content .excerpt>p {
    margin: 0.3rem;
  }

  #hero.hero-cpt-carousel .property-content .excerpt .location,
  .property-carousel-container .property-content .excerpt .location {
    font-size: 13px;
  }

  #hero.hero-cpt-carousel .slick-arrow,
  .property-carousel-container .slick-arrow {
    display: none !important;
  }
}

@media (max-width: 575px) {
  /* #hero.hero-cpt-carousel .property-content .content {
    padding: 0 80px;
  }

  #hero.hero-cpt-carousel .property-content .content .title {
    font-weight: 700;
    font-size: 19px;
    line-height: 29px;
  }

  #hero.hero-cpt-carousel .property-content .content .excerpt {
    font-weight: 600;
    font-size: 15px;
    line-height: 29px;
  }

  #hero.hero-cpt-carousel .property-content .content .btn {
    width: 104px;
  }

  #hero.hero-cpt-carousel .slick-arrow {
    left: 16px;
  }

  #hero.hero-cpt-carousel .slick-next {
    right: 16px;
    left: unset;
  } */

  .property-carousel-container .section-heading {
    display: none;
  }

  .property-carousel-container .property-content,
  .property-carousel-container .property-image {
    width: calc(100vw - 32px);
  }
}


/* Single-property page hero */
.single-property #hero {
  max-height: 34rem;
  padding: unset;
}

.single-property #hero.video-hero {
  max-height: 34rem;
}

.single-property #hero.video-hero video {
  max-height: 34rem;
  object-fit: cover;
}

/* ------------------------------------------------------------------------- */
/* SIMPLE CONTENT */
/* ------------------------------------------------------------------------- */
.simple-content>.contain {
  max-width: unset;
  width: 100%;
  margin: auto;
  text-align: left;
}

.simple-content .contain .left h3 {
  color: #5F5F5F;
  padding-left: 0 !important;
  padding: 16px;
}

.simple-content p, .full-width-simple-content p {
  color: #3A4032;
  font-size: 1.25rem;
  line-height: 1.5;
}

.simple-content .btn, .full-width-simple-content .btn {
  min-width: 150px;
  padding: 6px 30px;
  min-height: 32px;
  margin-left: 0;
}

@media (max-width: 768px) {
  .simple-content>div {
    width: 100%;
    padding: 0 8px;
  }

  .simple-content p, .full-width-simple-content p {
    font-size: 1rem;
  }
}

.simple-content>div .left>h1,
.simple-content>div .left>h2,
.simple-content>div .left>h3,
.simple-content>div .left>h4,
.simple-content>div .left>h5,
.simple-content>div .left>h6,
.simple-content>div .left>p,
.simple-content>div .left>ul,
.simple-content>div .right>h1,
.simple-content>div .right>h2,
.simple-content>div .right>h3,
.simple-content>div .right>h4,
.simple-content>div .right>h5,
.simple-content>div .right>h6,
.simple-content>div .right>p,
.simple-content>div .right>ul {
  margin: 1rem 0;
}

.simple-content>div .left p,
.simple-content>div .right p {
  font-size: 16px;
  line-height: 1.5;
  text-align: justify;
  text-align-last: center;
}

.simple-content>div .left h1,
.simple-content>div .right h1 {
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

.simple-content>div .left h2,
.simple-content>div .right h2 {
  font-size: 2.5rem;
  padding-right: 20px;
  padding-bottom: 1rem;
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

@media (max-width: 768px) {

  .simple-content>div .left h2,
  .simple-content>div .right h2 {
    font-size: 2rem;
  }
}

.simple-content>div .left figure,
.simple-content>div .right figure {
  padding-right: 20px;
  padding-bottom: 2rem;
}

@media (max-width: 575px) {

  .simple-content>div .left figure,
  .simple-content>div .right figure {
    padding-right: 0px;
  }
}

.simple-content>div .left figure img,
.simple-content>div .right figure img {
  width: 260px;
  height: 260px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}

.simple-content>div .left :not(li)>a:not(.btn),
.simple-content>div .right :not(li)>a:not(.btn) {
  text-decoration: underline;
}

.simple-content>div .left .video-container,
.simple-content>div .right .video-container {
  max-width: 600px;
}

.simple-content>div .right .btn-holder {
  /* text-align: left; */
}

@media (min-width: 992px) {
  .simple-content>div {
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .simple-content>div .left .video-container,
  .simple-content>div .right .video-container {
    max-width: none;
  }

  .simple-content>div .left {
    width: 40%;
  }

  .simple-content>div .left h1 {
    letter-spacing: 3px;
    font-weight: 100;
    text-transform: uppercase;
  }

  .simple-content>div .right {
    width: 60%;
  }
}

.full-width-simple-content {
  padding: 64px 120px;
  background: #F2F2ED;
}

@media (max-width: 768px) {
  .full-width-simple-content {
    padding: 40px 20px;
  }
}

.full-width-simple-content .simple-content{
  max-width: 976px;
  margin: auto;
}

@media (max-width: 575px) {
  .full-width-simple-content .simple-content p .btn-solid {
    border-top: none;
    border-left: none;
    border-right: none;
  }

  .full-width-simple-content .simple-content p {
    font-size: 14px;
    line-height: 16px;
  }

  .full-width-simple-content .simple-content h3 {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 29px;
  }
}

/* New Styled Content */

.full-width-simple-content.styled {
  padding: 64px 120px;
}

@media (max-width: 768px) {
  .full-width-simple-content.styled {
      padding: 40px 20px;
  }
}

.full-width-simple-content.styled .contain {
  width: 60%;
  margin: unset;
}

.full-width-simple-content.styled .btn {
  margin-left: 0;
}

@media (max-width: 992px) {
  .full-width-simple-content.styled .contain {
    width: 100%;
  }
}

/* ------------------------------------------------------------------------- */
/* FEATURE BOARD */
/* ------------------------------------------------------------------------- */
.features-block .feature-row {
  margin: auto;
  background-color: #F2F2ED;
  margin-bottom: 40px;
  width: 100%;
}

@media (min-width: 769px) {
  .features-block .feature-row {
    width: 75%;
    display: flex;
    flex-wrap: wrap;
  }
}

@media (min-width: 992px) {
  .features-block .feature-row {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
}

.features-block .feature-row .ft-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: center;
  padding: 2rem 0;
  font-size: 18px;
}

@media (min-width: 576px) {
  .features-block .feature-row .ft-content {
    padding: 2.5rem;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .features-block .feature-row .ft-content {
    padding: 0px 0px 0px 16px;
    width: 50%;
    margin-left: 5%;
  }
}

@media (min-width: 1300px) {
  .features-block .feature-row .ft-content {
    margin-left: 10%;
  }
}

.features-block .feature-row .ft-content>div p>a:not(.btn) {
  text-decoration: underline;
}

.features-block .feature-row .ft-content>div .btn-holder {
  text-align: initial;
}

@media (max-width: 576px) {
  .features-block .feature-row .ft-content>div .btn-holder a {
    white-space: pre-wrap;
  }
}

.features-block .feature-row .ft-content>div .btn-holder>.btn:last-child:not(:first-child) {
  color: #5f5f5f;
}

.features-block .feature-row .ft-content>div .btn-holder>.btn:last-child:not(:first-child):hover {
  color: #fff;
  background-color: #5f5f5f;
}

.features-block .feature-row .ft-content>div blockquote {
  font-size: 16px;
  margin: 0 16px 16px;
}

@media (max-width: 992px) {
  .features-block .feature-row .ft-content>div blockquote {
    margin: 0 32px 32px;
  }
}

.features-block .feature-row .ft-content>div blockquote p {
  display: inline;
}

.features-block .feature-row .ft-content>div blockquote:before {
  content: "";
  background-image: url(../../images/quotation-gry.svg);
  background-repeat: no-repeat;
  height: 16px;
  width: 31px;
  background-size: contain;
  display: inline-block;
  margin-left: -31px;
  opacity: 0.3;
}

.features-block .feature-row .ft-content>div blockquote:after {
  content: "";
  background-image: url(../../images/quotation-gry.svg);
  background-repeat: no-repeat;
  height: 16px;
  width: 31px;
  background-size: contain;
  display: inline-block;
  margin-left: 0px;
  opacity: 0.3;
  transform: rotate(180deg);
}

.features-block .feature-row .sq-contain {
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .features-block .feature-row .sq-contain {
    width: 60%;
    margin: 0;
  }
}

@media (min-width: 992px) {
  .features-block .feature-row .sq-contain {
    margin: auto;
    width: 45%;
  }
}

@media (min-width: 1300px) {
  .features-block .feature-row .sq-contain {
    width: 40%;
  }
}

.features-block .feature-row .sq-contain:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.features-block .feature-row .sq-contain .ft-image {
  position: absolute;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.features-block .feature-row .sq-contain .ft-image .carousel-inner {
  height: 100%;
}

@media (min-width: 992px) {
  .features-block .feature-row:nth-child(2n) {
    flex-direction: row-reverse;
  }
}

@media (min-width: 992px) {
  .features-block .feature-row:nth-child(2n) .ft-content {
    padding: 0px 16px 0px 0px;
    margin-left: 0%;
    margin-right: 5%;
  }
}

@media (min-width: 1300px) {
  .features-block .feature-row:nth-child(2n) .ft-content {
    margin-right: 10%;
  }
}

.features-block .feature-row:last-child {
  margin-bottom: 0px;
}

/* ------------------------------------------------------------------------- */
/* list-content */
/* ------------------------------------------------------------------------- */
.list-content {
  background-color: #E6C5A9;
  padding: 64px 120px;
}

.list-content>h2 {
  margin-bottom: 24px;
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
  text-align: left !important;
  color: #411900;
}
.list-content .caption {
  color: #411900;
  font-size: 1.25rem;
  max-width: 824px;
}

.list-content ul {
  display: flex;
  gap: 20px;
  list-style: none;
  text-align: left;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.list-content ul li h1, .list-content ul li p {
  color: #411900;
}



.list-content ul li {
  flex: 1;
}

@media (max-width: 768px) {
  .list-content ul li {
    flex-basis: 25%;
  }
}

@media (max-width: 575px) {
  .list-content ul li {
    flex-basis: 50%;
  }
}

.list-content ul li h2 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

.list-content h3 {
  text-align: left;
  color: #411900;
}

/* ------------------------------------------------------------------------- */
/* TILES */
/* ------------------------------------------------------------------------- */
.link-tiles {
  /* margin-top: -1rem;
  margin-bottom: -1rem; */
  padding: 64px 120px;
  overflow: hidden;
  background: #F2F2ED;
}

@media (max-width: 992px) {
  .link-tiles {
    padding: 40px 20px;
  }
}

.link-tiles .mob-tile {
  display: none;
}

.link-tiles .simple-content {
  text-align: left;
  padding-bottom: 1.25rem;
}

.link-tiles .simple-content .section-subtitle.styled {
  font-family: kepler-std, serif;
  font-style: italic;
  letter-spacing: 1px;
}

.link-tiles .simple-content .section-heading {
  color: #3A4032;
}

.link-tiles>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style-type: none;
  width: 100%;
  gap: 32px;
}

.link-tiles .tile {
  /* margin: 1rem 0; */
  width: calc(calc(100% / 3) - 22px);
  box-sizing: border-box;
}

/* 2 tiles */
.link-tiles.by-2 .tile {
  width: calc(50% - 1rem) !important;
}

/* 3+ tiles */
.link-tiles.by-3 .tile {
  width: calc(33.333% - 1rem) !important;
}

.link-tiles .tile a {
  position: relative;
}

.link-tiles .tile .tile-container {
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.link-tiles .tile .tile-container .explore-btn {
  min-width: 120px;
  margin-left: 0;
  margin-right: 0;
  width: fit-content;
}

.link-tiles .tile a .image-holder {
  position: relative;
  aspect-ratio: 1/1;
}

.link-tiles .tile a .image-holder img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

/* .link-tiles .tile a:after {
  content: "";
  display: block;
  padding-bottom: 100%;
} */

.link-tiles .tile a .image-holder::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.3);
  display: block;
  content: "";
  transition: all 0.3s ease-in-out;
}

.link-tiles .tile a:hover .image-holder::before {
  background-color: rgba(0, 0, 0, 0.5);
}

.link-tiles .tile .tile-image {
  width: 100%;
}

.link-tiles .tile p {
  color: #3A4032;
  margin: 0;
  font-family: Warbler;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%; /* 30px */
  text-align: left;
}

.link-tiles .tile h2 {
  font-size: 21px;
  color: #3A4032;
  text-transform: uppercase;
  margin: 0;
  font-weight: 300;
  text-align: left;
  line-height: 100%;
  letter-spacing: 3px;
}

.page-id-144 .link-tiles .tile h2 {
  padding-top: 16px;
}

.link-tiles .btn-mob {
  display: none;
}

.link-tiles .btn:not(.btn-mob) {
  font-size: 14px;
  line-height: 27px;
  letter-spacing: 0.08em;
}

@media (max-width: 768px) {
  .link-tiles .tile p {
    font-size: 12px;
    line-height: 150%; /* 18px */
  }

  .link-tiles .tile h2 {
    font-size: 16px;
    line-height: 140%; /* 19.6px */
    letter-spacing: 0.84px;
  }
}

@media (max-width: 575px) {
  .link-tiles .btn-mob {
    display: block;
    font-size: 16px;
    min-width: 150px;
    padding: 6px 30px;
    min-height: 32px;
    margin-left: 0;
  }

  .link-tiles .simple-content {
    padding: 0 0 1.25rem;
    font-size: 14px;
    line-height: 16px;
  }

  .link-tiles .simple-content h3 {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 29px;
    margin-bottom: 0;
  }

  .link-tiles p:last-child {
    margin-bottom: 1.25rem !important;
  }

  .link-tiles>ul {
    gap: 8px;
  }

  .link-tiles .tile {
    padding: 0;
    margin: 0;
    width: calc(50% - 4px);
  }

  .link-tiles .tile:nth-child(5),
  .link-tiles .tile:nth-child(6) {
    display: none;
  }

  .link-tiles .btn {
    border: none;
    font-size: 12px;
    letter-spacing: 3px !important;
    width: fit-content;
    min-width: unset;
    min-height: unset;
    line-height: 1.5 !important;
  }

  /* HIDE THIRD PROPERTY TILE ON SINGLE PROPERTY MOBILE */
  .single-property .link-tiles .tile:nth-child(3) {
    display: none;
  }

  /* LINK TILE STYLING NOT ON SINGLE PROPERTY */
  /* body:not(.single-property) .link-tiles > ul {
    column-gap: 28px;
    row-gap: 48px;
  }
  body:not(.single-property) .link-tiles .tile {
    display: none;
  } */

  /* body:not(.single-property) .link-tiles .mob-tile {
    display: flex;
    flex-direction: column;
    width: calc(50% - 14px);
    align-items: center;
  }
  .link-tiles .mob-tile h2 {
    color: #37454F;
    text-transform: capitalize;
    font-size: 12px;
    letter-spacing: 0.02em;
    position: initial;
    font-size: 16px;
  }

  .link-tiles .mob-tile a {
    font-size: 10px;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    border-bottom: 1px solid #5F5F5F;
  }
  .link-tiles .mob-tile a:hover {
    color: #5f5f5f6e;
    border-bottom: 1px solid #5f5f5f6e;
  }
  .link-tiles .mob-tile .tile-image {
    height: 112px;
    width: 100%;
  } */
}

/* 4.15 TAB CONTENT */
.tabs div {
  text-align: left;
}

.tabs div ul {
  padding-left: 1.3rem;
}

@media (max-width: 768px) {
  .tabs div {
    text-align: left;
  }
}

.tabs div h5 {
  color: #5f5f5f;
}

.tabs div .input-tab {
  display: none;
}

.tabs div label,
.tabs div .input-tab-book-now {
  display: inline-block;
  margin: 0;
  padding-bottom: 4px;
  position: relative;
  text-align: center;
  font-size: 16px;
}

@media (max-width: 575px) {

  .tabs div label,
  .tabs div .input-tab-book-now {
    font-size: 14px;
  }
}

.tabs div input+label {
  letter-spacing: 2px;
}

.tabs div .input-tab-book-now {
  margin-left: 45px;
  letter-spacing: 2px;
}

@media (max-width: 1350px) {
  .tabs div input+label {
    margin-right: 40px;
  }

  .tabs div .input-tab-book-now {
    margin-left: 40px;
  }
}

@media (max-width: 1300px) {
  .tabs div input+label {
    margin-right: 15px;
  }

  .tabs div .input-tab-book-now {
    /* margin-left: 40px; */
    margin-left: 15px;
  }
}

@media (max-width: 1150px) {
  .tabs div input+label {
    margin-right: 15px;
  }

  .tabs div .input-tab-book-now {
    /* margin-left: 30px; */
    margin-left: 15px;
  }
}

@media (max-width: 1100px) {

  .tabs div input+label,
  .tabs div .input-tab-book-now {
    font-size: 18px;
  }
}

@media (max-width: 1030px) {
  .tabs div input+label {
    margin-right: 20px;
    font-size: 16px;
  }

  .tabs div .input-tab-book-now {
    margin-left: 20px;
    font-size: 16px;
  }
}

@media (max-width: 850px) {
  .tabs div input+label {
    margin-right: 10px;
  }

  .tabs div .input-tab-book-now {
    margin-left: 10px;
  }
}

@media (max-width: 768px) {

  .tabs div input+label,
  .tabs div .input-tab-book-now {
    /* font-size: 18px;
    margin: 0 20px; */
    font-size: 16px;
    /* margin: 0 5px; */
  }
}

@media (max-width: 575px) {

  .tabs div input+label,
  .tabs div .input-tab-book-now {
    font-size: 14px;
    /* margin: 0 5px; */
  }
}

.tabs div input+label:after,
.tabs div .input-tab-book-now:after {
  position: absolute;
  left: 0;
  width: 100%;
  bottom: 0;
  display: inline-block;
  content: "";
  height: 1px;
  /* background-color: #eeeeee; */
}

.tabs div input+label:last-of-type {
  /* margin-left: 50%; */
  margin-right: 0;
}

@media (max-width: 768px) {
  .tabs div input+label:first-of-type {
    /* margin: 0 25px 0 0; */
  }
}

@media (max-width: 575px) {
  .tabs div input+label:first-of-type {
    /* margin: 0 5px 0 0; */
  }
}

/* .tabs div label:hover {
  cursor: pointer;
}

.tabs div input:checked+label {
  color: unset;
}

.tabs div input:checked+label:after,
.tabs div input:hover+label:after {
  background-color: #5f5f5f;
} */

.tabs div .tab-item {
  /* display: none; */
  /* padding: 40px 0 0; */
  height: 0;
  overflow: hidden;
}

.tabs div .tab-item .left {
  flex: 50%;
}

.tabs div .tab-item .left .sq-contain {
  position: relative;
  width: 90%;
}

.tabs div .tab-item .left .sq-contain #map {
  position: absolute !important;
  width: 100%;
  height: 100%;
}

@media (max-width: 768px) {
  .tabs div .tab-item .left .sq-contain {
    width: 100%;
  }
}

@media (max-width: 575px) {
  .tabs div .tab-item .left .sq-contain {
    width: 100%;
  }
}

.tabs div .tab-item .left .sq-contain:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.tabs div .tab-item .left .sq-contain .ft-image {
  position: absolute;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner {
  height: 100%;
}

.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner .carousel-control-prev,
.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner .carousel-control-next {
  opacity: 1;
}

.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner .carousel-control-prev-icon {
  position: absolute;
  height: 32px;
  width: 19px;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: transparent;
  background-image: url(../../images/arrow-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner .carousel-control-next-icon {
  position: absolute;
  top: calc(50% - 16px);
  height: 32px;
  width: 19px;
  right: 16px;
  transform: rotate(180deg);
  color: transparent;
  background-image: url(../../images/arrow-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.tabs div .tab-item .left .sq-contain .ft-image .carousel-inner .carousel-item:before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0);
  display: block;
  content: "";
}

.tabs div .tab-item .right {
  flex: 50%;
  font-size: 16px;
  text-align: left;
}

.tabs div .tab-item .right h2,
.tabs div .tab-item .right h3,
.tabs div .tab-item .right h4,
.tabs div .tab-item .right h5 {
  margin-top: 2rem;
}

.tabs div .tab-item .right h2:first-child,
.tabs div .tab-item .right h3:first-child,
.tabs div .tab-item .right h4:first-child,
.tabs div .tab-item .right h5:first-child {
  margin-top: 0;
}

.tabs div .tab-item .right p {
  text-align: justify;
  text-align-last: left;
}

@media (max-width: 768px) {
  .tabs div .tab-item .right {
    margin: 40px 0;
  }
}


.tabs div .tab-item .mobile-features.features {
  display: none;
}

@media (max-width: 768px) {
  .tabs div .tab-item.tab-1 .mobile-features.features {
    display: block;
    margin-top: 2rem;
  }
}

/*
.tabs div #tab-1:checked~.tab-1,
.tabs div #tab-2:checked~.tab-2,
.tabs div #tab-3:checked~.tab-3,
.tabs div #tab-4:checked~.tab-4,
.tabs div #tab-5:checked~.tab-5,
.tabs div #tab-6:checked~.tab-6,
.tabs div #tab-7:checked~.tab-7,
.tabs div #tab-8:checked~.tab-8 {
  display: flex;
}

@media (max-width: 768px) {

  .tabs div #tab-1:checked~.tab-1,
  .tabs div #tab-2:checked~.tab-2,
  .tabs div #tab-3:checked~.tab-3,
  .tabs div #tab-4:checked~.tab-4,
  .tabs div #tab-5:checked~.tab-5,
  .tabs div #tab-6:checked~.tab-6,
  .tabs div #tab-7:checked~.tab-7,
  .tabs div #tab-8:checked~.tab-8 {
    flex-direction: column;
  }
} */

/* ------------------------------------------------------------------------- */
/* GALLERY */
/* ------------------------------------------------------------------------- */
.slick-gallery {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  padding-bottom: 3rem;
}

.slick-gallery .slick-slide {
  position: relative;
  margin: 0 0.25rem;
}

.slick-gallery .slick-slide :hover {
  opacity: 0.6;
}

.slick-gallery .slick-slide:hover::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "+";
  display: block;
  font-size: 2rem;
  background-color: #151515;
  color: #fff;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  text-align: center;
  line-height: 3rem;
  width: 3rem;
}

.slick-gallery .slick-prev,
.slick-gallery .slick-next {
  position: absolute;
  bottom: 0;
  left: 50%;
  cursor: pointer;
}

.slick-gallery .slick-prev {
  padding-right: 1rem;
  transform: translateX(-100%);
}

.slick-gallery .slick-next {
  padding-left: 1rem;
}

.slick-gallery img {
  object-fit: cover;
  height: 21vw;
  width: 100%;
}

@media (max-width: 600px) {
  .slick-gallery img {
    height: 30vw;
  }
}

@media (min-width: 992px) {
  section:not(.simple-content) .slick-gallery {
    padding-bottom: 13rem;
  }
}

.simple-content .slick-gallery img {
  object-fit: cover;
  height: 16vw;
}

@media (max-width: 991px) {
  .simple-content .slick-gallery img {
    height: 20vw;
  }
}

@media (max-width: 600px) {
  .simple-content .slick-gallery img {
    height: 30vw;
  }
}

/* ------------------------------------------------------------------------- */
/* PARTNERS */
/* ------------------------------------------------------------------------- */
.partners>div {
  display: flex;
  flex-wrap: wrap;
}

.partners>div .partner {
  width: 50%;
  padding: 2rem;
}

.partners>div .partner>img {
  width: 100%;
}

@media (min-width: 768px) {
  .partners>div .partner {
    width: 25%;
  }
}

/* ------------------------------------------------------------------------- */
/* POST SLIDER*/
/* ------------------------------------------------------------------------- */
.post-slider {
  padding: 64px 120px;
  background: #F2F2ED;
}

.post-slider .post-slider-title {
  margin: auto;
  /* max-width: 1165px; */
  text-align: left;
  padding: 20px 0 70px 0;
}

.post-slider .post-slider-title h2 {
  padding: 0;
  text-align: left;
  font-size: 1.5rem;
  text-transform: capitalize;
  color: #3A4032;
  font-family: Terfens;
  letter-spacing: 3px;
  font-weight: 500;
  margin-bottom: 15px;
}

.post-slider .post-slider-title h3 {
  text-transform: uppercase;
  font-size: 1rem;
  color: #5F5F5F;
  font-weight: 400;
  letter-spacing: 2px;
  font-family: Warbler;
}

.post-slider .slick-post {
  width: 100%;
  margin: auto;
  padding: 0;
}

.post-slider .slick-post .slick-arrow {
  position: absolute;
  height: 40px;
  width: 40px;
  left: 20px;
  top: calc(50% - 84px);
  color: transparent;
  background-image: url(../../images/arrow.svg);
  background-size: 13px 18px;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid #411900;
  border-radius: 100px;
  background-color: #F2F2ED;
  transition: all 0.3s ease-out;
}

.post-slider .slick-post .slick-arrow:hover {
  opacity: 0.5;
}

@media (max-width: 992px) {
  .post-slider {
    padding: 40px 20px;
  }
}

@media (max-width: 575px) {
  .post-slider .slick-post .slick-arrow {
    top: calc(50% - 64px);
  }
}

.post-slider .slick-post .slick-next {
  right: 20px;
  left: unset;
  transform: rotate(180deg);
}

.post-slider .slick-post .text-center .slide {
  margin: 0 8px;
}

@media (max-width: 575px) {
  .post-slider .slick-post .text-center .slide {
    max-width: 350px;
    margin: auto;
  }
}

@media (max-width: 480px) {
  .post-slider .slick-post .text-center .slide {
    max-width: 250px;
  }
}

.post-slider .slick-post .text-center .slide .title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 5%;
  border: 1px solid #5f5f5f;
  font-size: 18px;
  text-transform: uppercase;
  min-width: fit-content;
}

@media (max-width: 575px) {
  .post-slider .slick-post .text-center .slide .title {
    padding: 5px 17%;
    min-height: 60px;
    font-size: 16px;
  }
}

.post-slider .slick-post .text-center .slide .img {
  display: block;
  position: relative;
  margin: auto;
  margin-bottom: 40px;
}

.post-slider .slick-post .text-center .slide .img:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

/* ------------------------------------------------------------------------- */
/* CONTACT DETAILS */
/* ------------------------------------------------------------------------- */
.contact-details .underline-title {
  max-width: 75%;
  margin: auto;
}

.contact-details .contact {
  border-left: 1px solid #bbc1bf;
  border-right: 1px solid #bbc1bf;
  min-width: 25%;
  max-width: 400px;
  margin: auto;
}

@media (min-width: 992px) {
  .contact-details .underline-title {
    max-width: 54%;
  }

  .contact-details .contact {
    max-width: inherit;
  }

  .contact-details>div>.contact:last-child {
    border-right: none;
  }
}

/* ------------------------------------------------------------------------- */
/* CALL TO ACTION (CTA) */
/* ------------------------------------------------------------------------- */
.CTA.padded {
  margin: auto;
  width: calc(100% - 40px);
  max-width: 1200px;
}

.CTA {
  padding: 1.5rem;
}

.CTA .caption div {
  max-width: 650px;
  padding-left: 1rem;
  padding-right: 1rem;
}

.CTA .btn-holder>.btn:last-child:not(:first-child) {
  border-color: #151515;
  background-color: transparent;
  color: #151515;
}

.CTA .btn-holder>.btn:last-child:not(:first-child):hover {
  border-color: #fff;
  background-color: transparent;
  color: #151515;
}

@media (min-width: 992px) {
  .CTA {
    padding: 5rem;
  }
}

.CTA.bg-image {
  color: #fff;
  background-size: cover;
}

.CTA.bg-image .btn-holder>.btn {
  border-color: #fff;
  background-color: #151515;
  color: #fff;
}

.CTA.bg-image .btn-holder>.btn:hover {
  border-color: #151515;
  background-color: #151515;
  color: #fff;
}

.CTA.bg-image .btn-holder>.btn:last-child:not(:first-child) {
  border-color: #fff;
  background-color: transparent;
  color: #fff;
}

.CTA.bg-image .btn-holder>.btn:last-child:not(:first-child):hover {
  border-color: #151515;
  background-color: transparent;
  color: #fff;
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  .CTA>.content {
    padding: 5rem 0;
    min-height: auto;
  }
}

/* ------------------------------------------------------------------------- */
/* INSTAGRAM */
/* ------------------------------------------------------------------------- */
.feed-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 640px;
  margin: auto;
}

.feed {
  width: 33.3333%;
  padding: 0.5rem;
}

.social-feed figure {
  position: relative;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
}

.social-feed figcaption {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0.5rem;
  color: #fff;
  line-height: 1.4;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.social-feed figcaption:hover {
  opacity: 1;
}

.likes {
  position: absolute;
  bottom: 20px;
  right: 20px;
}

@media (min-width: 1600px) {
  .social-feed figcaption {
    font-size: 1em;
  }
}

@media (min-width: 993px) and (max-width: 1400px) {
  .social-feed figcaption {
    background-image: none;
  }
}

@media (min-width: 992px) {
  .feed-row {
    max-width: 100%;
  }

  .social-feed figcaption {
    display: flex;
  }

  .feed {
    width: 25%;
    padding: 1rem;
  }
}

/* ------------------------------------------------------------------------- */
/* TESTIMONIALS */
/* ------------------------------------------------------------------------- */
.testimonials {
  background-attachment: fixed !important;
}

@media (max-width: 768px) {
  .testimonials {
    background-attachment: unset !important;
  }
}

.testimonials .carousel {
  max-height: 550px;
  height: 60vh;
}

.testimonials .carousel .carousel-indicators {
  display: none;
}

.testimonials .carousel .carousel-inner {
  height: 100%;
}

.testimonials .carousel .carousel-inner .carousel-item {
  height: 100%;
  background: transparent;
}

.testimonials .carousel .carousel-inner .carousel-item>div {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  width: 60%;
  margin: auto;
  text-align: center;
  font-size: 32px;
  line-height: 39px;
  font-style: italic;
}

.testimonials .carousel .carousel-inner .carousel-item>div blockquote:before {
  content: "";
  background-image: url(../../images/quotation.svg);
  height: 28px;
  width: 38px;
  background-size: contain;
  display: inline-block;
  margin-bottom: 10px;
  margin-right: 8px;
}

.testimonials .carousel .carousel-inner .carousel-item>div blockquote:after {
  content: "";
  background-image: url(../../images/quotation.svg);
  height: 28px;
  width: 38px;
  background-size: contain;
  display: inline-block;
  margin-left: 8px;
  transform: rotate(180deg);
}

.testimonials .carousel .carousel-inner .carousel-item>div img {
  margin-top: 32px;
  max-width: 260px;
}

.testimonials .carousel .carousel-inner .carousel-item>div p {
  margin: 0;
  display: inline;
  color: #e9e2de;
  font-size: 28px;
  font-weight: 100;
}

@media (max-width: 768px) {
  .testimonials .carousel .carousel-inner .carousel-item>div p {
    font-size: 18px;
    line-height: 28px;
  }
}

@media (max-width: 768px) {
  .testimonials .carousel .carousel-inner .carousel-item>div {
    font-size: 18px;
    line-height: 28px;
  }
}

@media (max-width: 576px) {
  .testimonials .carousel .carousel-inner .carousel-item>div {
    width: 90%;
  }
}

/* ------------------------------------------------------------------------- */
/* MAP */
/* ------------------------------------------------------------------------- */
.map-area #map {
  height: 40vw;
  width: 100%;
  margin: auto;
}

@media (min-width: 1200px) {
  .map-area #map {
    height: 30vw;
    max-height: 500px;
    max-width: 1200px;
  }
}

/* ------------------------------------------------------------------------- */
/* Press Loop */
/* ------------------------------------------------------------------------- */
.press-loop>div {
  display: flex;
  flex-wrap: wrap;
}

.press-loop>div article {
  flex: 1;
  display: flex;
  align-items: flex-end;
  margin: 10px;
  justify-content: center;
}

.press-loop>div article .press-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.press-loop>div article .press-content img {
  max-width: 150px;
  margin-bottom: 20px;
}

.press-loop>div article .press-content .title {
  margin: 10px 0;
  text-align: center;
  max-width: 300px;
  min-height: 50px;
}

.press-loop>div article .press-content .img {
  height: 300px;
  width: 300px;
  display: block;
  border-radius: 50%;
  margin: 20px 0;
}

/* ------------------------------------------------------------------------- *
/* 5. POSTS */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- *
/* POST LOOP */
/* ------------------------------------------------------------------------- */
.post-loop {
  max-width: 1200px;
  margin: auto;
}

.post-loop article .post-content {
  margin: 3rem;
}

.post-loop article .post-image {
  height: 54vw;
  max-height: 370px;
}

@media (min-width: 992px) {
  .post-loop article {
    margin: 6rem 0;
    display: flex;
    flex-direction: row-reverse;
  }

  .post-loop article>div {
    flex: 1;
    padding: 0 1rem;
  }

  .post-loop article .post-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .post-loop article .post-content .btn-link {
    font-size: 1.125rem;
    color: #151515;
    padding: 0;
  }

  .post-loop article .post-image {
    height: 36vw;
  }
}

/* ------------------------------------------------------------------------- *
/* SINGLES */
/* ------------------------------------------------------------------------- */

/* .single-title {
  margin: auto;
  max-width: 1165px;
  text-align: center;
  padding: 65px 68px 55px 68px;
}

.single-title h2 {
  text-align: center;
  font-size: 2.7rem;
  letter-spacing: 1px;
  color: #5F5F5F;
  font-family: kepler-std, serif;
  font-weight: 500;
  font-style: italic;
  margin-bottom: 15px;
}

.single-title h3 {
  text-transform: uppercase;
  font-size: 1.05rem;
  color: #5F5F5F;
  font-weight: 400;
  letter-spacing: 2px;
} */

.single .image {
  padding-bottom: 0;
}

.single .image img {
  width: 100%;
}

.single .content p {
  margin: 1.5rem 0 !important;
  color: #3A4032;
}

.single .content figure img {
  width: 100%;
}

.single-property main .contain .top-bar {
  padding-bottom: 0px;
}

@media (max-width: 768px) {
  .single-property main .contain .top-bar {
    display: block;
  }
}

.single-property main .contain .top-bar .left {
  margin-bottom: 16px;
}

.single-property main .contain .top-bar .left h1,
.single-property main .contain .top-bar .left span {
  display: inline-block;
  margin: 0;
}

@media (max-width: 768px) {

  .single-property main .contain .top-bar .left h1,
  .single-property main .contain .top-bar .left span {
    display: block;
  }
}

.single-property main .contain .top-bar .left h1 {
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

@media (max-width: 992px) {
  .single-property main .contain .top-bar .left h1 {
    font-size: 2rem;
  }
}

@media (max-width: 768px) {
  .single-property main .contain .top-bar .left h1 {
    margin-bottom: 8px;
  }
}

.single-property main .contain .top-bar .left span {
  font-size: 18px;
  text-transform: uppercase;
  margin-left: 24px;
  letter-spacing: 2px;
}

@media (max-width: 768px) {
  .single-property main .contain .top-bar .left span {
    margin: 0;
  }
}

/* .single-property main .contain .top-bar .right {
  font-size: 16px;
} */

.single-property main .contain .top-bar .right .locations {
  display: flex;
  justify-content: center;
  gap: 6px;
}

.single-property main .contain .top-bar .right span {
  display: block;
  line-height: 2;
}

.single-property main .contain .prop-layout {
  padding-bottom: 8px;
}

.single-property main .contain .prop-layout>div {
  border: 1px solid #5f5f5f;
  padding: 20px;
}

.single-property main .contain .prop-layout>div h3 {
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.single-property main .contain .prop-layout>div>div {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.single-property main .contain .prop-layout>div>div .layout {
  text-align: center;
  flex: 1;
  min-width: 320px;
  margin: 16px 0px;
}

@media (max-width: 575px) {
  .single-property main .contain .prop-layout>div>div .layout {
    min-width: 250px;
  }
}

.single-property main .contain .prop-layout>div>div .layout span {
  text-transform: uppercase;
  letter-spacing: 2px;
}

.single-property main .contain .prop-layout>div>div .layout ul {
  list-style: none;
  margin-top: 16px;
}

.single-property main .contain .prop-layout>div>div .layout ul li {
  font-size: 16px;
}

/* .single-property main .contain .features>div {
  border: 1px solid #5f5f5f;
  padding: 20px;
} */

/* .single-property main .contain .features>div h3 {
  margin-bottom: 24px;
  text-transform: uppercase;
  letter-spacing: 2px;
} */

/* .single-property main .contain .features>div>div ul {
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20%;
  row-gap: 56px;
  gap: 36px;
} */

/* .single-property main .contain .features>div>div ul li {
  text-align: center;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  flex: 1;
  width: 210px;
  min-width: 150px;
  width: calc(20% - 5px);
  margin: 16px 5px;
}

@media (max-width: 992px) {
  .single-property main .contain .features>div>div ul li {
    width: 200px;
    gap: 32px;
  }
}

@media (max-width: 575px) {
  .single-property main .contain .features>div>div ul li {
    gap: 0;
  }
}

@media (max-width: 768px) {
  .single-property main .contain .features>div>div ul li {
    min-width: 100px;
    width: 150px;
  }
}

@media (max-width: 575px) {
  .single-property main .contain .features>div>div ul li {
    min-width: 100px;
    width: 125px;
  }
}

.single-property main .contain .features>div>div ul li>div {
  width: 80px;
  height: 80px;
  margin: auto;
  margin-bottom: 16px;
}

.single-property main .contain .features>div>div ul li>div img {
  display: block;
  height: 100%;
  width: 100%;
}

.single-property main .contain .features>div>div ul li span {
  font-size: 16px;
} */

.single-property main .contain .brochure>button {
  border: none;
  background-color: transparent;
  font-size: 24px;
  color: #5f5f5f;
  border-bottom: 1px solid #5f5f5f;
}

@media (max-width: 575px) {
  .single-property main .contain .brochure>button {
    font-size: 18px;
  }
}

@media (max-width: 360px) {
  .single-property main .contain .brochure>button {
    font-size: 14px;
  }
}

.single-property main .contain .brochure .form {
  transform: scale(0);
  transition: all 0.5s ease-in;
}

.single-property main .contain .brochure .form.show {
  display: block;
  transform: scale(1);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 3;
  transition: all 0.5s ease-in;
}

.single-property main .contain .brochure .form>div {
  position: absolute;
  background-color: #fff;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.single-property main .contain .brochure .form>div .close {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 36.5px;
  right: 27.5px;
  border: none;
  background-image: url(../../images/close.svg);
}

.single-property main .contain .booking h2 {
  font-size: 40px;
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

.page-template-properties-template main .contain .top-bar {
  padding-left: 2%;
  padding-right: 2%;
}

/* Our Collections Page has search bar open so shift elements down */
.page-template-properties-template.page-id-137 main .contain .top-bar {
  padding-top: 84px;
}

.page-template-properties-template main .contain .top-bar>div h1,
.page-template-properties-template main .contain .top-bar>div span {
  display: inline-block;
  margin: 0;
}

@media (max-width: 768px) {

  .page-template-properties-template main .contain .top-bar>div h1,
  .page-template-properties-template main .contain .top-bar>div span {
    display: block;
  }
}

.page-template-properties-template main .contain .top-bar>div h1 {
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .top-bar>div h1 {
    font-size: 2rem;
  }
}

.page-template-properties-template main .contain .top-bar>div span {
  font-size: 18px;
  text-transform: uppercase;
  margin-left: 24px;
  letter-spacing: 2px;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .top-bar>div span {
    font-size: 20px;
  }
}

@media (max-width: 768px) {
  .page-template-properties-template main .contain .top-bar>div span {
    margin: 0;
  }
}

.page-template-properties-template main .contain .property-loop {
  padding-left: 2%;
  padding-right: 2%;
  margin-bottom: 80px;
}

.page-template-properties-template main .contain .property-loop form {
  margin-bottom: 40px;
}

.page-template-properties-template main .contain .property-loop form ul li {
  display: inline-block;
}

@media (max-width: 575px) {
  .page-template-properties-template main .contain .property-loop form ul li {
    display: block;
  }
}

.page-template-properties-template main .contain .property-loop form ul li:last-of-type {
  margin-left: 35px;
}

@media (max-width: 575px) {
  .page-template-properties-template main .contain .property-loop form ul li:last-of-type {
    margin-left: 0px;
  }
}

.page-template-properties-template main .contain .property-loop form ul li label {
  position: relative;
}

.page-template-properties-template main .contain .property-loop form ul li label select {
  font-style: italic;
  color: #5f5f5f;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding-bottom: 8px;
  min-width: 180px;
}

.page-template-properties-template main .contain .property-loop form ul li label:before {
  content: "";
  background-image: url(../../images/arrowdown.svg);
  width: 17px;
  height: 9px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 13px;
  right: 0;
  z-index: -1;
}

.page-template-properties-template main .contain .property-loop .block {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(8, 5vw);
  grid-gap: 8px;
  margin: 8px 0;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block article {
    width: calc(50% - 8px);
    min-height: 350px;
    margin: 4px;
  }
}

@media (max-width: 575px) {
  .page-template-properties-template main .contain .property-loop .block article {
    width: calc(100% - 8px);
    min-height: 300px;
  }
}

.page-template-properties-template main .contain .property-loop .block article .property-content {
  position: relative;
  background-position: center;
  background-size: cover;
  height: 100%;
  width: 100%;
}

.page-template-properties-template main .contain .property-loop .block article .property-content .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: 0.5s ease;
  background-color: rgba(0, 0, 0, 0.6);
  color: #e9e2de;
}

@media (max-width: 768px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay {
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 1;
  }
}

.page-template-properties-template main .contain .property-loop .block article .property-content .overlay h2 {
  font-size: 40px;
  margin: 0;
  letter-spacing: 3px;
  font-weight: 100;
  text-transform: uppercase;
}

@media (max-width: 1400px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay h2 {
    font-size: 32px;
  }
}

@media (max-width: 1200px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay h2 {
    font-size: 24px;
  }
}

.page-template-properties-template main .contain .property-loop .block article .property-content .overlay p {
  font-size: 18px;
  margin: 8px 0;
  text-transform: uppercase;
  letter-spacing: 2px;
}

@media (max-width: 1400px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay p {
    margin: 4px 0;
  }
}

@media (max-width: 1200px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay p {
    font-size: 16px;
  }
}

.page-template-properties-template main .contain .property-loop .block article .property-content .overlay .btn {
  color: #e9e2de;
  border-color: #e9e2de;
}

.page-template-properties-template main .contain .property-loop .block article .property-content .overlay .btn:hover {
  color: #e9e2de;
  border-color: #e9e2de;
  background-color: transparent;
}

@media (max-width: 1400px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay .btn {
    margin: 4px 0;
  }
}

@media (max-width: 1200px) {
  .page-template-properties-template main .contain .property-loop .block article .property-content .overlay .btn {
    min-width: 150px;
    min-height: 35px;
    padding: 0.2rem 1rem;
    font-size: 18px;
  }
}

.page-template-properties-template main .contain .property-loop .block article .property-content:hover .overlay {
  opacity: 1;
}

.page-template-properties-template main .contain .property-loop .block article .property-content:active .overlay {
  opacity: 1;
}

.page-template-properties-template main .contain .property-loop .block.by-1,
.page-template-properties-template main .contain .property-loop .block.by-2 {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 5vw);
}

.page-template-properties-template main .contain .property-loop .block.by-1 article:first-child,
.page-template-properties-template main .contain .property-loop .block.by-2 article:first-child {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 6;
}

.page-template-properties-template main .contain .property-loop .block.by-1 article:nth-child(2),
.page-template-properties-template main .contain .property-loop .block.by-2 article:nth-child(2) {
  grid-column-start: 7;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 6;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block.by-1 article {
    width: calc(100% - 16px);
  }
}

.page-template-properties-template main .contain .property-loop .block.by-3 article:first-child,
.page-template-properties-template main .contain .property-loop .block.by-4 article:first-child {
  grid-column-start: 1;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}

.page-template-properties-template main .contain .property-loop .block.by-3 article:nth-child(2),
.page-template-properties-template main .contain .property-loop .block.by-4 article:nth-child(2) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 5;
}

.page-template-properties-template main .contain .property-loop .block.by-3 article:nth-child(3),
.page-template-properties-template main .contain .property-loop .block.by-4 article:nth-child(3) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 5;
  grid-row-end: 9;
}

.page-template-properties-template main .contain .property-loop .block.by-3 article:nth-child(4),
.page-template-properties-template main .contain .property-loop .block.by-4 article:nth-child(4) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block.by-3 article:nth-child(3) {
    width: calc(100% - 16px);
  }
}

.page-template-properties-template main .contain .property-loop .block.by-5 article:first-child {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.page-template-properties-template main .contain .property-loop .block.by-5 article:nth-child(2) {
  grid-column-start: 5;
  grid-column-end: 8;
  grid-row-start: 1;
  grid-row-end: 5;
}

.page-template-properties-template main .contain .property-loop .block.by-5 article:nth-child(3) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 5;
  grid-row-end: 9;
}

.page-template-properties-template main .contain .property-loop .block.by-5 article:nth-child(4) {
  grid-column-start: 8;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 5;
}

.page-template-properties-template main .contain .property-loop .block.by-5 article:nth-child(5) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 5;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block.by-5 article:nth-child(5) {
    width: calc(100% - 8px);
  }
}

/* Floorplan */
.single-property .tabs .floorplan {
  max-width: 1200px;
  width: 100%;
  margin: auto;
}

@media (min-width: 576px) {
  .single-property .tabs .floorplan {
    width: 80%;
  }
}

.single-property .tabs .floorplan .carousel-inner {
  box-shadow: 5px 8px 8px rgba(70, 70, 70, 0.3);
}

.single-property .tabs .floorplan .carousel-item>div {
  height: 40vw;
  max-height: 640px;
}

@media (min-width: 576px) {
  .single-property .tabs .floorplan .carousel-control-prev {
    transform: translateX(-100%);
  }

  .single-property .tabs .floorplan .carousel-control-next {
    transform: translateX(100%);
  }
}

/* ------------------------------------------------------------------------- *
/* 6. CPT */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- *
/* ROOM LOOP */
/* ------------------------------------------------------------------------- */
.room-loop {
  max-width: 1200px;
  margin: auto;
}

.room-loop article .room-gallery .carousel-inner {
  height: 54vw;
  max-height: 500px;
}

@media (min-width: 992px) {
  .room-loop article .room-gallery .carousel-inner {
    height: 36vw;
  }
}

.room-loop article .room-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex: 1;
  padding-top: 3rem;
  padding-bottom: 2rem;
}

.room-loop article .room-content h2 {
  margin: 0;
}

.room-loop article .room-content .btn-holder .btn {
  margin: 0 0.5rem;
}

@media (min-width: 992px) {
  .room-loop article {
    display: flex;
  }

  .room-loop article .room-gallery {
    flex: 2;
    margin-right: 2rem;
  }

  .room-loop article .room-content {
    flex: 1;
    align-items: initial;
    margin-left: 2rem;
  }
}

/* ------------------------------------------------------------------------- *
/* 7. PLUGINS */
/* ------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------- *
/* GRAVITY FORM */
/* ------------------------------------------------------------------------- */
.gform_wrapper form {
  text-align: center !important;
}

.gform_wrapper .gform_title {
  /* font-size: 2.5rem !important;
  text-align: center;
  font-weight: 100 !important;
  text-transform: uppercase; */

  font-style: normal !important;
  font-weight: 100 !important;
  font-size: 25px !important;
  line-height: 40px;
  text-align: center;
  letter-spacing: 0.03em;
  color: #5F5F5F;
}

.gform_wrapper .gform_description {
  text-align: center;
  width: 75% !important;
  margin: 1rem auto !important;
}

.gform_wrapper label {
  font-size: 14px !important;
  margin-bottom: 0px;
  color: #5f5f5f;
  font-weight: normal !important;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select {
  border: 1px solid #3A4032;
  border-radius: 0;
  background-color: #F2F2ED !important;
  font-size: 16px !important;
  height: 34px;
  color: #3A4032;
}

.gform_wrapper button[type="submit"] {
  background-color: #411900;
  font-family: "Terfens", sans-serif;
  border-radius: 32px;
  border: none;
  padding: 0.5rem 2rem;
  color: #F2F2ED;
  min-width: 250px;
  text-transform: uppercase;
  font-size: 20px;
  white-space: nowrap;
  margin: 0 auto;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.gform_wrapper .gform_footer {
  text-align: center;
}

.gform_wrapper form#gform_11 .gform_footer {
  text-align: left;
  margin-left: 0;
}

.gform_wrapper .gfield_required {
  color: #3A4032 !important;
}

.gform_wrapper button[type="submit"]:hover {
  color: #f2f2ed;
  background-color: #3A4032;
}

#gform_1 .gform_body {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}

#gform_1 .gform_body .top {
  flex-basis: 65%;
}

@media (max-width: 1100px) {
  #gform_1 .gform_body .top {
    flex-basis: 100%;
  }
}

#gform_1 .gform_body .desc {
  flex-basis: 33%;
}

@media (max-width: 1100px) {
  #gform_1 .gform_body .desc {
    flex-basis: 100%;
  }
}

#gform_1 .gform_body .desc textarea {
  height: 196px;
}

#gform_1 .gform_body #field_1_3,
#gform_1 .gform_body #field_1_13 {
  flex-basis: 100%;
  text-align: center;
}

@media (max-width: 575px) {

  #gform_1 .gform_body #field_1_3,
  #gform_1 .gform_body #field_1_13 {
    text-align: left;
  }

  #gform_1 .ginput_container.ginput_container_consent {
    display: flex;
    align-items: baseline;
  }

  #gform_1 .ginput_container.ginput_container_consent input[type='checkbox'] {
    margin-right: 10px;
  }
}

#gform_1 .gform_body #field_17_3 {
  width: 100%;
  text-align: center;
}

#gform_2 .gform_body {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
}

#gform_2 .gform_body .left {
  flex-basis: calc(50% - 16px);
}

#gform_2 .gform_body .left input[type="text"],
#gform_2 .gform_body .left input[type="email"],
#gform_2 .gform_body .left textarea,
#gform_2 .gform_body .left select {
  width: 100%;
}

@media (max-width: 1100px) {
  #gform_2 .gform_body .left {
    flex-basis: 100%;
  }
}

#gform_2 .gform_body .right {
  flex-basis: calc(50% - 16px);
}

#gform_2 .gform_body .right input[type="text"],
#gform_2 .gform_body .right input[type="email"],
#gform_2 .gform_body .right textarea,
#gform_2 .gform_body .right select {
  width: 100%;
}

@media (max-width: 1100px) {
  #gform_2 .gform_body .right {
    flex-basis: 100%;
  }
}

#gform_2 .gform_body .right textarea {
  height: 115px;
}

#gform_2 .gform_body #field_2_9 {
  margin-top: 12px;
}

#gform_2 .gform_body>h3 {
  text-align: center;
  flex-basis: 100%;
}

#gform_2 .gform_body #field_2_13 {
  flex-basis: 100%;
  text-align: center;
}

#gform_3 {
  margin: 50px 0;
}

#gform_3 .gform_body #field_3_1 label {
  width: calc(50% - 8px);
  text-align: left;
}

@media (max-width: 640px) {
  #gform_3 .gform_body #field_3_1 label {
    width: calc(100% - 8px);
  }
}

.single-property .hustle-group-content h2 {
  font-size: 32px;
  font-weight: 400;
  margin-top: 30px !important;
  margin-bottom: 15px !important;
}

.single-property .hustle-group-content p {
  font-size: 20px;
}

.single-property .hustle-group-content #gform_submit_button_3 {
  border: none;
  border-bottom: 1px solid #5f5f5f;
  text-transform: uppercase;
  padding: 5px 0;
}

#gform_4 h3 {
  font-size: 32px !important;
  font-weight: 400;
}

#gform_4 .gform_body label {
  width: calc(50% - 8px);
  font-size: 14px !important;
  margin-bottom: 0px;
  color: #3A4032;
  font-weight: normal !important;
  text-align: left;
}

@media (max-width: 640px) {
  #gform_4 .gform_body label {
    width: calc(100% - 8px);
  }
}

#gform_4 .gform_body #field_4_4 {
  display: flex;
  justify-content: center;
  align-items: center;
}

#gform_4 .gform_body #field_4_4 label {
  width: unset;
  padding-top: 7px;
}

#gform_4 .gform_body #field_4_4 .ginput_container_consent {
  width: unset;
  margin-left: 8px;
}

#gform_4 .gform_body .gform_wrapper ul.gform_fields li.gfield {
  padding-right: 0px !important;
}

#gform_confirmation_wrapper_4 {
  text-align: center !important;
}

#gform_5 h3 {
  font-size: 32px !important;
  font-weight: 400;
}

#gform_5 .gform_body label {
  width: calc(50% - 8px);
  font-size: 14px !important;
  margin-bottom: 0px;
  color: #3A4032;
  font-weight: normal !important;
  text-align: left;
}

@media (max-width: 640px) {
  #gform_5 .gform_body label {
    width: calc(100% - 8px);
  }
}

#gform_5 .gform_body #field_5_2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

#gform_5 .gform_body #field_5_2 label {
  width: unset;
  padding-top: 7px;
}

#gform_5 .gform_body #field_5_2 .ginput_container_consent {
  width: unset;
  margin-left: 8px;
}

#gform_5 .gform_body .gform_wrapper ul.gform_fields li.gfield {
  padding-right: 0px !important;
}

#gform_confirmation_wrapper_5 {
  text-align: center !important;
}

.hustle-ui.module_id_1 .hustle-layout .hustle-group-content ul li:before {
  display: none !important;
}

.hustle-ui .hustle-info .hustle-group-content * {
  font-family: minerva-modern !important;
}

.hustle-popup-content .hustle-info {
  position: relative;
}

.hustle-popup-content .hustle-info .hustle-button-close {
  position: absolute;
  top: 36px;
  right: 15px;
}

/* SEARCH RESULTS */
.search-results {
  margin-bottom: 80px;
}

.search-results .block {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(8, 5vw);
  grid-gap: 8px;
  margin: 8px 0;
}

@media (max-width: 992px) {
  .search-results .block {
    display: flex;
    flex-wrap: wrap;
  }
}

.search-results .block.by-1,
.search-results .block.by-2 {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 5vw);
}

.search-results .block.by-1 article:first-child,
.search-results .block.by-2 article:first-child {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 6;
}

.search-results .block.by-1 article:nth-child(2),
.search-results .block.by-2 article:nth-child(2) {
  grid-column-start: 7;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 6;
}

@media (max-width: 992px) {
  .search-results .block.by-1 article {
    width: calc(100% - 16px);
  }
}

.search-results .block.by-3 article:first-child,
.search-results .block.by-4 article:first-child {
  grid-column-start: 1;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}

.search-results .block.by-3 article:nth-child(2),
.search-results .block.by-4 article:nth-child(2) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 5;
}

.search-results .block.by-3 article:nth-child(3),
.search-results .block.by-4 article:nth-child(3) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 5;
  grid-row-end: 9;
}

.search-results .block.by-3 article:nth-child(4),
.search-results .block.by-4 article:nth-child(4) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .search-results .block.by-3 article:nth-child(3) {
    width: calc(100% - 16px);
  }
}

.search-results .block.by-5 article:first-child {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.search-results .block.by-5 article:nth-child(2) {
  grid-column-start: 5;
  grid-column-end: 8;
  grid-row-start: 1;
  grid-row-end: 5;
}

.search-results .block.by-5 article:nth-child(3) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 5;
  grid-row-end: 9;
}

.search-results .block.by-5 article:nth-child(4) {
  grid-column-start: 8;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 5;
}

.search-results .block.by-5 article:nth-child(5) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 5;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .search-results .block.by-5 article:nth-child(5) {
    width: calc(100% - 8px);
  }
}

@media (max-width: 992px) {
  .search-results .block article {
    width: calc(50% - 8px);
    min-height: 350px;
    margin: 4px;
  }
}

@media (max-width: 575px) {
  .search-results .block article {
    width: calc(100% - 8px);
    min-height: 300px;
  }
}

.search-results .block article .grid-tile,
.search-results .block article .property-content {
  position: relative;
  background-position: center;
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}

.search-results .block article .grid-tile .overlay,
.search-results .block article .property-content .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  padding: 2rem;
  transition: 0.5s ease;
  background-color: rgba(0, 0, 0, 0.6);
  color: #e9e2de;
}

@media (max-width: 768px) {

  .search-results .block article .grid-tile .overlay,
  .search-results .block article .property-content .overlay {
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 1;
  }
}

.search-results .block article .grid-tile .overlay h2,
.search-results .block article .property-content .overlay h2 {
  margin: 0;
  letter-spacing: 2px;
  font-size: 1.5rem;
  font-weight: 100;
  text-transform: uppercase;
}

.search-results .block article .grid-tile .overlay p,
.search-results .block article .property-content .overlay p {
  margin: 8px 0;
  letter-spacing: 1px;
}

@media (max-width: 1400px) {

  .search-results .block article .grid-tile .overlay p,
  .search-results .block article .property-content .overlay p {
    margin: 4px 0;
  }
}

.search-results .block article .grid-tile .overlay .btn,
.search-results .block article .property-content .overlay .btn {
  color: #e9e2de;
  border-color: #e9e2de;
  padding: 0.25rem;
  min-width: 150px;
  min-height: 0;
}

.search-results .block article .grid-tile .overlay .btn:hover,
.search-results .block article .property-content .overlay .btn:hover {
  color: #e9e2de;
  border-color: #e9e2de;
  background-color: transparent;
}

@media (max-width: 1400px) {

  .search-results .block article .grid-tile .overlay .btn,
  .search-results .block article .property-content .overlay .btn {
    margin: 4px 0;
  }
}

@media (max-width: 1200px) {

  .search-results .block article .grid-tile .overlay .btn,
  .search-results .block article .property-content .overlay .btn {
    min-width: 150px;
    min-height: 35px;
    padding: 0.2rem 1rem;
  }
}

.search-results .block article .grid-tile:hover .overlay,
.search-results .block article .property-content:hover .overlay {
  opacity: 1;
}

.search-results .block article .grid-tile:active .overlay,
.search-results .block article .property-content:active .overlay {
  opacity: 1;
}

/* GRID FOR SINGLE PROPERTY GALLERY TAB */

.grid,
.property-loop {
  width: 100%;
  margin-bottom: 80px;
  padding: 0 120px !important;
}



.grid .block,
.property-loop .block {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(6, 5vw);
  grid-gap: 8px;
  margin: 8px 0;
}

.property-template-default main .contain .gallery .block {
  grid-template-rows: repeat(8, 5vw);
}

@media (max-width: 992px) {

  .grid .block,
  .property-loop .block {
    display: flex;
    flex-wrap: wrap;
  }
}

.grid .block.by-1,
.grid .block.by-2,
.property-loop .block.by-1,
.property-loop .block.by-2 {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 5vw);
}

.grid .block.by-1 article:first-child,
.grid .block.by-2 article:first-child,
.property-loop .block.by-1 article:first-child,
.property-loop .block.by-2 article:first-child {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 6;
}

.grid .block.by-1 article:nth-child(2),
.grid .block.by-2 article:nth-child(2),
.property-loop .block.by-1 article:nth-child(2),
.property-loop .block.by-2 article:nth-child(2) {
  grid-column-start: 7;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 6;
}

@media (max-width: 992px) {

  .grid .block.by-1 article,
  .property-loop .block.by-1 article {
    width: calc(100% - 16px);
  }
}

.grid .block.by-3 article:first-child,
.grid .block.by-4 article:first-child,
.property-loop .block.by-3 article:first-child,
.property-loop .block.by-4 article:first-child {
  grid-column-start: 1;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}

.grid .block.by-3 article:nth-child(2),
.grid .block.by-4 article:nth-child(2),
.property-loop .block.by-3 article:nth-child(2),
.property-loop .block.by-4 article:nth-child(2) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 5;
}

.grid .block.by-3 article:nth-child(3),
.grid .block.by-4 article:nth-child(3),
.property-loop .block.by-3 article:nth-child(3),
.property-loop .block.by-4 article:nth-child(3) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 5;
  grid-row-end: 9;
}

.grid .block.by-3 article:nth-child(4),
.grid .block.by-4 article:nth-child(4),
.property-loop .block.by-3 article:nth-child(4),
.property-loop .block.by-4 article:nth-child(4) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 9;
}

@media (max-width: 992px) {

  .grid .block.by-3 article:nth-child(3),
  .property-loop .block.by-3 article:nth-child(3) {
    width: calc(100% - 16px);
  }
}

.grid .block.by-5 article:first-child,
.property-loop .block.by-5 article:first-child {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.grid .block.by-5 article:nth-child(2),
.property-loop .block.by-5 article:nth-child(2) {
  grid-column-start: 5;
  grid-column-end: 8;
  grid-row-start: 1;
  grid-row-end: 5;
}

.grid .block.by-5 article:nth-child(3),
.property-loop .block.by-5 article:nth-child(3) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 5;
  grid-row-end: 9;
}

.grid .block.by-5 article:nth-child(4),
.property-loop .block.by-5 article:nth-child(4) {
  grid-column-start: 8;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 5;
}

.grid .block.by-5 article:nth-child(5),
.property-loop .block.by-5 article:nth-child(5) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 5;
  grid-row-end: 9;
}

@media (max-width: 992px) {

  .grid .block.by-5 article:nth-child(5),
  .property-loop .block.by-5 article:nth-child(5) {
    width: calc(100% - 8px);
  }
}

@media (max-width: 992px) {

  .grid .block article,
  .property-loop .block article {
    width: calc(50% - 8px);
    min-height: 350px;
    margin: 4px;
  }
}

@media (max-width: 575px) {

  .grid .block article,
  .property-loop .block article {
    width: calc(100% - 8px);
    min-height: 300px;
  }
}

.grid .block article .grid-tile,
.grid .block article .property-content,
.property-loop .block article .grid-tile,
.property-loop .block article .property-content {
  position: relative;
  background-position: center;
  background-size: cover;
  display: block;
  height: 100%;
  width: 100%;
}

.grid .block article .grid-tile .overlay,
.grid .block article .property-content .overlay,
.property-loop .block article .grid-tile .overlay,
.property-loop .block article .property-content .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  padding: 2rem;
  transition: 0.5s ease;
  background-color: rgba(0, 0, 0, 0.6);
  color: #e9e2de;
}

@media (max-width: 1400px) and (min-width: 992px) {
  .property-loop .block.by-5 article:nth-child(2) .property-content .overlay {
    padding: 1rem;
  }

  .property-loop .block.by-5 article:nth-child(2) .property-content .overlay h2 {
    font-size: 20px !important;
  }

  .property-loop .block.by-5 article:nth-child(2) .property-content .overlay p {
    font-size: 12px !important;
  }
}

@media (max-width: 1200px) {
  .property-loop .block.by-5 article:nth-child(2) .property-content .overlay {
    padding: 0rem;
  }
}

@media (max-width: 768px) {

  .grid .block article .grid-tile .overlay,
  .grid .block article .property-content .overlay,
  .property-loop .block article .grid-tile .overlay,
  .property-loop .block article .property-content .overlay {
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 1;
  }
}

.grid .block article .grid-tile .overlay h2,
.grid .block article .property-content .overlay h2,
.property-loop .block article .grid-tile .overlay h2,
.property-loop .block article .property-content .overlay h2 {
  margin: 0;
  letter-spacing: 2px;
  font-size: 1.5rem;
  font-weight: 100;
  text-transform: uppercase;
}

.grid .block article .grid-tile .overlay p,
.grid .block article .property-content .overlay p,
.property-loop .block article .grid-tile .overlay p,
.property-loop .block article .property-content .overlay p {
  margin: 8px 0;
  letter-spacing: 1px;
}

@media (max-width: 1400px) {

  .grid .block article .grid-tile .overlay p,
  .grid .block article .property-content .overlay p,
  .property-loop .block article .grid-tile .overlay p,
  .property-loop .block article .property-content .overlay p {
    margin: 4px 0;
  }
}

.grid .block article .grid-tile .overlay .btn,
.grid .block article .property-content .overlay .btn,
.property-loop .block article .grid-tile .overlay .btn,
.property-loop .block article .property-content .overlay .btn {
  color: #e9e2de;
  border-color: #e9e2de;
  padding: 0.25rem;
  min-width: 150px;
  min-height: 0;
}

.grid .block article .grid-tile .overlay .btn:hover,
.grid .block article .property-content .overlay .btn:hover,
.property-loop .block article .grid-tile .overlay .btn:hover,
.property-loop .block article .property-content .overlay .btn:hover {
  color: #e9e2de;
  border-color: #e9e2de;
  background-color: transparent;
}

@media (max-width: 1400px) {

  .grid .block article .grid-tile .overlay .btn,
  .grid .block article .property-content .overlay .btn,
  .property-loop .block article .grid-tile .overlay .btn,
  .property-loop .block article .property-content .overlay .btn {
    margin: 4px 0;
  }
}

@media (max-width: 1200px) {

  .grid .block article .grid-tile .overlay .btn,
  .grid .block article .property-content .overlay .btn,
  .property-loop .block article .grid-tile .overlay .btn,
  .property-loop .block article .property-content .overlay .btn {
    min-width: 150px;
    min-height: 35px;
    padding: 0.2rem 1rem;
  }
}

.grid .block article .grid-tile:hover .overlay,
.grid .block article .property-content:hover .overlay,
.property-loop .block article .grid-tile:hover .overlay,
.property-loop .block article .property-content:hover .overlay {
  opacity: 1;
}

.grid .block article .grid-tile:active .overlay,
.grid .block article .property-content:active .overlay,
.property-loop .block article .grid-tile:active .overlay,
.property-loop .block article .property-content:active .overlay {
  opacity: 1;
}

/* Search and Availabilty  */

#aval {
  padding-left: 2%;
  padding-right: 2%;
}

#aval .title {
  margin: 24px 0;
}

#aval .title h3 .prop-number {
  color: #5f5f5f;
  font-size: 16px;
  cursor: auto;
}

/* #aval .title button {
  height: 0;
  overflow: hidden;
} */

#aval .property-title {
  margin: 24px 8px;
  margin-right: 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

#aval .holder .content h2 {
  color: #3A4032;
  text-transform: uppercase;
  font-size: 16px;
}

#aval .filter.show {
  opacity: 1;
  max-height: 100vh;
  pointer-events: all;
  display: block !important;
  z-index: 1001;
}

#aval .filter h1 {
  font-size: 16px;
  text-align: center;
  letter-spacing: 4px;
  color: #3A4032;
  font-family: Terfens;
}

#aval .filter .filter-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  gap: 44px;
  padding: 5rem 0;
}

#aval .filter .anchor {
  margin-bottom: 25px;
  /* margin-left: 16px; */
  display: flex;
  align-items: center;
  cursor: pointer;
  width: 250px;
  border-bottom: 0.2px solid #37454F;
  font-size: 16px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #37454F;
  position: relative;
  height: 20px;
  padding-bottom: 1rem;
}

#aval .filter .filter-list .anchor:before, #aval .filter label:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 20px;
  height: 20px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 13px;
  right: 0px;
  z-index: 1;
  /* pointer-events: none; */
}

#aval .filter h4,
#aval .filter .parent-location label {
  font-size: 16px;
  text-align: left;
  color: #37454F;
  margin-bottom: 0.5rem;
  padding: 0;
}

#aval .filter li.form-check label {
  font-size: 13px;
  font-weight: 500;
}

#aval .filter .location>div {
  margin-bottom: 1rem;
}

#aval .filter .anchor img {
  height: 32px;
  margin-left: 5px;
}

#aval .filter .filter-row .filter-list {
  display: flex;
  flex-direction: column;
  max-width: 384px;
}

#aval .filter .filter-row .filter-list .items {
  height: 0;
  opacity: 0;
}

#aval .filter .filter-row .filter-list .items li {
  height: 0;
  pointer-events: none;
}

#aval .filter .filter-row .filter-list .items.show-items {
  height: fit-content;
  opacity: 1;
}

#aval .filter .filter-row .filter-list .items.show-items li {
  height: auto;
  pointer-events: all;
}

#aval .filter .filter-row .filter-list input {
  cursor: pointer;
  margin-right: 8px;
}

#aval .filter label {
  display: flex;
  align-items: center;
  cursor: pointer;
  width: 250px;
  font-size: 16px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #37454F;
  position: relative;
  height: 20px;
  padding-bottom: 0rem;
}

#aval .filter .filter-row label select {
  padding-bottom: 0.5rem;
}

/*
#aval .filter .btn {
  font-size: 30px;
  letter-spacing: 4px;
  color: #37454F;
} */

#aval .carousel-control-prev,
#aval .carousel-control-next {
  width: 50%;
}

@media(max-width: 1200px) {
  #aval .filter .filter-row .filter-list {
    padding: 0 3%;
  }
}

@media(max-width: 992px) {
  #aval .filter .filter-row .filter-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 768px) {
  #aval .filter label {
    width: inherit;
  }
  #aval .filter .filter-row .filter-list {
    grid-template-columns: repeat(2, 1fr);
    width: calc(95vw - 96px);
  }

  #aval .filter .title {
    margin-left: 0;
  }
}

@media(max-width: 575px) {
  #aval .filter h1 {
    font-size: 15px;
  }

  #aval .filter .filter-list .anchor::before {
    bottom: 2px;
  }

  #aval .filter .filter-row .filter-list {
    display: flex;
  }

  #aval .filter .filter-row .filter-list .items.show-items {
    /* width: fit-content; */
    align-self: center;
    margin-top: 16px;
    width: 240px;
  }
}

@media(max-width: 480px) {
  #aval .filter .filter-row .filter-list {
    grid-template-columns: repeat(1, 1fr);
  }

  #aval .filter .filter-row .filter-list .form-check {
    margin-bottom: 0;
  }

  #aval .filter .filter-row .filter-list img {
    height: 48px;
  }
}

#aval article {
  display: flex;
  flex-direction: column;
  /* padding: 8px; */
  margin-bottom: 8px;
  flex: 1 0 25%;
  max-width: calc(33% - 16px);
}

.avai .breadcrumbs {
  position: sticky;
  top: 7rem;
  z-index: 2;
}

.breadcrumb {
  font-size: 15px;
  line-height: 23px;
  letter-spacing: 2px;
  color: #5F5F5F;
  background: none;
  padding: 0;
  margin: 0;
}

#aval article.is-hidden {
  display: none;
}

#aval article.keepshowing {
  display: flex;
}

#aval article .property-image {
  height: 400px;
  background-size: cover;
  background-position: center;
  position: relative;
  z-index: 2; /* Ensure image stays above content */
  order: 1; /* Force image to appear first */
}

#aval article .property-image .image,
#aval article .property-image .image .carousel,
#aval article .property-image .image .carousel .carousel-inner,
#aval article .property-image .image .carousel .carousel-inner .carousel-item,
#aval article .property-image .image .carousel .carousel-inner .carousel-item>div {
  height: 100%;
}

#aval article .property-image .image .carousel .carousel-inner .carousel-item>div {
  background-size: cover;
  background-position: center;
}

#aval article .property-image .image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

#aval article .content {
  flex: 1;
  position: relative;
  /* width: 50%; */
  display: flex;
  flex-direction: column;
  padding: 0rem 4rem;
  align-items: center;
  text-align: center;
  margin-top: 0; /* Ensure no negative margin */
  z-index: 1; /* Ensure content stays below image */
  order: 2; /* Force content to appear after image */
}

#aval article .content .enquire-btn {
  padding: 0;
}

#aval article .content .enquire-btn img {
  height: 45px;
  margin-bottom: 1.5rem;
}

#aval article .content .right-col {
  text-align: right;
}

#aval article .content .right-col .btn {
  margin-right: 0;
  text-decoration: underline;
}

#aval .holder .property-list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.9rem;
  row-gap: 3rem;
}

/* Sticky Availability Form */
  .sticky-availability-form {
    position: sticky;
    top: 104px;
    z-index: 9;
    background-color: #F2F2ED;
    border-bottom: 1px solid #e0e0e0;
    padding: 15px 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }

.sticky-availability-form .form-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 120px;
}

.sticky-availability-form h4 {
  display: none; /* Hide the title */
}

.sticky-availability-form .form-fields {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: nowrap; /* Force single row */
}

.sticky-availability-form .form-fields .checks{
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.sticky-availability-form .form-fields > div {
  margin: 0;
  flex-shrink: 0; /* Prevent shrinking */
}

.sticky-availability-form .input {
  position: relative;
}

.sticky-availability-form .input:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 6px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 50%;
  right: 8px;
  transform: translateY(50%);
  pointer-events: none;
}

.sticky-availability-form .input input {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 0;
  max-height: 32px;
  position: relative;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 16px;
  color: #37454F;
  font-family: 'Times New Roman';
  outline: none;
  width: 120px;
  height: auto;
  flex: 1;
  max-width: 150px;
  min-width: 100px;
}

.sticky-availability-form .select .selectCustom-trigger {
  border: 1px solid #ddd;
  border-radius: 0;
  padding: 12px 15px;
  background-color: #fff;
  font-size: 14px;
  width: 120px; /* Fixed width for consistency */
  min-width: 120px;
}

.sticky-availability-form .select .selectCustom-trigger:hover {
  border-color: #411900;
}

.sticky-availability-form .checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap; /* Prevent text wrapping */
}

.sticky-availability-form .checkbox input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  background-color: transparent;
  border: 1px solid #411900;
  border-radius: 0;
  cursor: pointer;
  position: relative;
  margin: 0;
  flex-shrink: 0;
}

.sticky-availability-form .checkbox input[type="checkbox"]:checked {
  background-color: #411900;
}

.sticky-availability-form .checkbox input[type="checkbox"]:checked::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 14px;
  font-weight: bold;
}

.sticky-availability-form .checkbox label {
  font-size: 14px;
  color: #333;
  margin: 0;
  cursor: pointer;
  white-space: nowrap;
}

.sticky-availability-form .submit-container {
  flex-shrink: 0;
}

.sticky-availability-form .btn {
  min-height: 32px;
  margin: 0 0 0 24px;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 8px 24px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #E9E2DE;
  cursor: pointer;
  transition: background-color 0.2s ease;
  white-space: nowrap;
}

.sticky-availability-form .btn:hover {
  color: #fff;
  background-color: #3A4032;
  border: none;
}

/* Hide mobile search button on aval-template page */
.page-template-aval-template .mobile-search-button {
  display: none !important;
}

/* Ensure breadcrumbs elements are not sticky on aval-template page */
.page-template-aval-template .breadcrumbs {
  position: static !important;
}

/* .page-template-aval-template .breadcrumbs * {
  position: static !important;
} */

/* Mobile accordion functionality */
@media (max-width: 768px) {
  .sticky-availability-form {
    position: sticky;
    top: 104px; /* Position below mobile nav bar */
  }

  .sticky-availability-form .form-wrapper {
    padding: 0 20px;
  }

  .sticky-availability-form .form-fields {
    display: none;
    flex-direction: column;
    gap: 15px;
    padding: 20px 0;
    background-color: #F2F2ED;
    border-top: 1px solid #e0e0e0;
  }

  .sticky-availability-form .form-fields.show {
    display: flex;
  }

  .sticky-availability-form .form-fields > div {
    width: 100%;
  }

  .sticky-availability-form .input input,
  .sticky-availability-form .select .selectCustom-trigger {
    width: 100%;
  }

        .sticky-availability-form .submit-container {
          width: 100%;
          display: flex;
          justify-content: center;
        }



  /* Mobile toggle button */
  .sticky-availability-form .mobile-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 20px;
    background-color: #F2F2ED;
    border: none;
    width: 100%;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    border-bottom: 1px solid #e0e0e0;
  }


  .sticky-availability-form .mobile-toggle .toggle-icon {
    transition: transform 0.3s ease;
    font-size: 18px;
    color: #411900;
    font-weight: bold;
  }

  .sticky-availability-form .mobile-toggle .toggle-icon::before {
    content: '+';
  }

  .sticky-availability-form .mobile-toggle.active .toggle-icon::before {
    content: '−';
  }
}

@media(max-width: 575px) {
  .sticky-availability-form .input input {
    max-width: unset;
  }
}

/* Hide mobile toggle on desktop */
@media (min-width: 769px) {
  .sticky-availability-form .mobile-toggle {
    display: none !important;
  }
}

#ui-datepicker-div {
  background-color: #F2F2ED;
  color: #333;
  font-family: "Muli", sans-serif;
  z-index: 16 !important;
  border: 1px solid #411900;
}

body:not(.page-template-aval-template) #ui-datepicker-div {
  z-index: 10000 !important;
}

/* @media (min-width: 769px) {
  body:not(.page-template-aval-template) #ui-datepicker-div {
    top: auto !important;
  }
} */

/* Allow JavaScript positioning for sticky form */
.page-template-aval-template #ui-datepicker-div {
  max-width: 90vw !important;
  /* position: fixed !important; */
  z-index: 10000 !important;
}


.ui-datepicker- .ui-state-default {
  background-color: #F2F2ED;
}

.ui-datepicker-header {
  border-radius: 0;
  background-color: #F2F2ED;
}

.ui-datepicker-prev .ui-icon {
  background-image: url(../../images/arrow-left.svg);
  background-position: unset;
  background-size: contain;
}

.ui-datepicker-next .ui-icon {
  background-image: url(../../images/arrow-right.svg);
  background-position: unset;
  background-size: contain;
}

.ui-datepicker-title {
  text-shadow: none;
}

.ui-datepicker th {
  color: #411900;
}

.ui-datepicker td {
  text-align: center;
  border: 1px solid black;
  border-collapse: collapse;
}

.ui-datepicker td a {
  border: none !important;
}

.ui-state-default, .ui-widget-content .ui-state-default {
  /* border: 1px solid #411900; */
  border: none !important;
  background: transparent;
}

#ui-datepicker-div .ui-state-hover {
  color: #F2F2ED;
  background-color: #411900;
}

.ui-state-default, .ui-widget-content .ui-state-default {
  text-align: center;
}

.ui-datepicker-month, .ui-datepicker-year {
  background-color: #F2F2ED;
  border-color: #411900;
  margin: 1px !important;
}

.ui-datepicker-calendar .ui-state-hover {
  background-color: #F2F2ED;
  border-color: #411900;
}

/* .ui-datepicker-calendar tr:hover .ui-datepicker-week-end a {
    background-color: #5f5f5f;
    color: #f7f7f7;
  } */

.ui-datepicker-calendar .ui-state-active {
  color: #fff;
  background-color: #411900;
  border: 1px solid #411900;
  opacity: 1;
}

.ui-datepicker-calendar .ui-state-active {
  color: #fff;
  background-color: #411900;
  border: 1px solid #411900;
  opacity: 1;
}

/* .ui-datepicker-week-end.ui-datepicker-current-day ~ .ui-datepicker-week-end > a {
    color: #edede6;
    background-color: #5f5f5f;
    border: 1px solid #edede6;
    opacity: 0.7;
  } */


@media(max-width: 768px) {
  #ui-datepicker-div {
    left: 50% !important;
    transform: translateX(-50%);
  }
}

.selectNative,
.selectCustom {
  position: relative;
  width: 12rem;
  height: 4rem;
}

.selectCustom {
  position: absolute;
  top: 0;
  left: 0;
}

@media (hover: hover) {
  .selectCustom {
    display: block;
  }
}

.select {
  position: relative;
}

.selectLabel {
  display: block;
  font-weight: bold;
  margin-bottom: 0.4rem;
}

.selectWrapper {
  position: relative;
}

.selectNative,
.selectCustom-trigger {
  border: none;
  background-color: transparent;
}

.selectNative {
  -webkit-appearance: none;
  -moz-appearance: none;
}

.selectCustom-trigger {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  padding: 0.8rem 0.8rem;
  cursor: pointer;
  color: transparent;
}

.selectCustom-trigger:hover {
  border-color: #6f6f6f;
}

.selectCustom-options {
  position: absolute;
  left: 0;
  top: 31px;
  width: 100%;
  background-color: #fff;
  border: 1px solid #5f5f5f;
  z-index: 3;
  display: none;
}

.selectCustom.isActive .selectCustom-options {
  display: block;
}

.selectCustom-option.isHover,
.selectCustom-option:hover {
  color: #fff;
  background-color: #37454f;
  cursor: default;
}

.selectCustom-option:not(:last-of-type)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #d3d3d3;
}

.selectCustom-option.isActive::before {
  position: absolute;
  left: 0.8rem;
}

.property-single .content h2 {
  margin-bottom: 24px;
  margin-top: 20px !important;
}

.property-single .content ul {
  list-style-type: none;
  font-size: 14px;
  letter-spacing: 0.1em;
}

.property-single .content span {
  /* font-size: 16px; */
  margin: 0;
  padding: 0;
}

/*
.property-single .content .price {
  font-size: 16px;
  font-style: italic;
  line-height: 1.2;
}

.property-single .content .price>p {
  font-weight: bold;
}

.property-single .content .membership {
  font-size: 16px;
  font-style: italic;
  line-height: 1.2;
}

.property-single .content .membership>p {
  font-weight: bold;
} */

.property-single .content .btn {
  min-height: 32px;
  margin-top: 32px;
  border: 1px solid transparent;
  background-color: #411900;
  font-style: normal;
  min-width: 145px;
  padding: 0;
  font-size: 12px;
  line-height: 38px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #E9E2DE;
  font-family: Warbler;
}

.property-single .content .btn:hover {
  color: #fff;
  background-color: #3A4032;
}

.property-single .content .contact {
  font-size: 18px;
  position: absolute;
  bottom: 0;
}

.property-single .content .contact a {
  font-weight: bold;
  text-decoration: underline;
}

.property-single .content .contact span {
  font-size: 18px;
  font-style: normal;
}

.property-single .content .contact .times {
  font-size: 18px;
  display: block;
}

.property-single.is-hidden {
  display: none;
}

@media(max-width: 1200px) {
  #aval .property-list {
    width: 100%;
  }
}

@media(max-width: 992px) {
  #aval article {
    flex: 1 0 50%;
    max-width: calc(50% - 14px);
  }

  /* #aval article .property-image {
    width: 100%;
  } */

  #aval article .content {
    /* padding: 1rem 10rem; */
    width: 100%;
  }

  /* .property-single .content .contact {
    margin-top: 8px;
    position: static;
  }

  .selectNative,
  .selectCustom {
    width: 100%;
  } */
}

@media(max-width: 768px) {
  #aval .title {
    display: flex;
    justify-content: space-evenly;
    width: 100%;
    margin-top: 24px;
  }

  #aval .title h3 {
    width: 70%;
    font-size: 1.2rem;
  }

  #aval .title button {
    height: 100%;
  }

  #aval .title button>img,
  #aval .property-title button>img {
    width: 37px;
    min-width: 37px;
  }

  #aval .holder {
    flex-direction: column;
  }

  /*
  #aval .filter {
    width: 100%;
    margin-bottom: 16px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
  } */

  #aval .holder .appear {
    max-height: 5000px;
    transition: max-height 0.3s ease-in;
  }

  /* #aval .holder .filter {
    position: static;
  } */

  /* #aval .holder .filter .filter-row {
    flex-direction: column;
  } */

  #aval article .content .right-col {
    right: 8px;
  }

  .property-single .content h2 {
    font-size: 24px;
  }

  .selectNative,
  .selectCustom {
    position: relative;
    width: 100%;
    height: 4rem;
  }

  .selectCustom {
    position: absolute;
    top: 0;
    left: 0;
  }

  .selectCustom.isActive .selectCustom-options {
    display: block;
  }

  #aval article .content {
    padding: 1rem 3rem;
  }

  .avai .mobile-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .avai .mobile-intro h2 {
    font-size: 15px;
    line-height: 38px;
    letter-spacing: 0.1em;
    margin: 0;
  }

  #aval {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  #aval article {
    flex: 1 0 100%;
    max-width: 100%;
  }

  #aval article .property-image {
    height: 400px !important;
  }
}

@media(max-width: 480px) {
  #aval article .content {
    padding: 24px 16px;
  }
}

.mob-only .availability-form {
  display: none;
}

/* Show availability form on desktop by default */
.availability-form {
  height: fit-content;
  bottom: 32px;
  position: fixed;
  overflow: visible;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
  margin: 0;
  padding: 0 20px;
}

/* Only hide floating form on aval-template page */
.page-template-aval-template .availability-form {
  display: none; /* Hidden - using styled template version instead */
}

/* Mobile Search Button */
.mobile-search-button {
  display: none; /* Hidden on desktop */
}

.mobile-search-trigger {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1001;
  background-color: #411900;
  color: #E9E2DE;
  border: none;
  border-radius: 50px;
  padding: 15px 25px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: all 0.3s ease;
}

.mobile-search-trigger:hover {
  background-color: #3A4032;
  transform: translateX(-50%) translateY(-2px);
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.3);
}

/* Mobile Search Drawer */
.mobile-search-drawer {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1002;
}

.mobile-search-drawer.active {
  display: block;
}

.drawer-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.mobile-search-drawer.active .drawer-overlay {
  opacity: 1;
}

.drawer-content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #EAE3DF;
  border-radius: 20px 20px 0 0;
  transform: translateY(100%);
  transition: transform 0.3s ease;
  max-height: 80vh;
  overflow-y: auto;
}

.mobile-search-drawer.active .drawer-content {
  transform: translateY(0);
}

.drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  border-bottom: 1px solid #D0C7C0;
}

.drawer-header h4 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #37454F;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.drawer-close {
  background: none;
  border: none;
  font-size: 24px;
  color: #37454F;
  cursor: pointer;
  padding: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background-color 0.2s ease;
}

.drawer-close:hover {
  background-color: rgba(65, 25, 0, 0.1);
}

.drawer-body {
  padding: 25px;
}

/* Mobile drawer form styling */
.mobile-search-drawer .availability .wrapper {
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  max-width: 100%;
  width: 100%;
  margin: 0;
  box-shadow: none;
}

.mobile-search-drawer .availability .content {
  max-width: 100%;
  padding: 0;
  margin: 0;
  text-align: left;
}

.mobile-search-drawer .availability .content h4 {
  display: none; /* Hide the title since it's in the header */
}

.mobile-search-drawer .availability .content form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mobile-search-drawer .availability .content form .form-fields {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.mobile-search-drawer .availability .content form input:not([type='checkbox']),
.mobile-search-drawer .availability .content form select {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 8px 0;
  font-size: 16px;
  color: #37454F;
  font-family: 'Times New Roman';
  outline: none;
  width: 100%;
  height: auto;
  flex: 1;
  max-width: 100%;
  min-width: 100px;
}

.mobile-search-drawer .availability .content form input[type=submit] {
  min-height: 32px;
  margin: 0;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 8px 24px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #E9E2DE;
  cursor: pointer;
}

.mobile-search-drawer .availability .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
}

.mobile-search-drawer .availability .content form .checkbox {
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 0;
}

.mobile-search-drawer .availability .content form .checkbox input[type="checkbox"] {
  width: auto;
  margin: 0;
}

.mobile-search-drawer .availability .content form .checkbox label {
  font-size: 14px;
  color: #37454F;
  margin: 0;
  cursor: pointer;
}

.mobile-search-drawer .close-expanded {
  display: none; /* Hide close button in mobile drawer */
}

/* Mobile drawer input styling to match desktop for aval-template */
.mobile-search-drawer .availability .content form input::placeholder,
.mobile-search-drawer .availability-form-mobile .content form input::placeholder {
  font-size: 16px;
  color: #37454F;
  opacity: 1;
  font-family: Warbler;
  font-style: normal;
}

.mobile-search-drawer .availability .content form .input,
.mobile-search-drawer .availability-form-mobile .content form .input {
  position: relative;
}

.mobile-search-drawer .availability .content form .input:before,
.mobile-search-drawer .availability-form-mobile .content form .input:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 6px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 50%;
  right: 8px;
  transform: translateY(50%);
  z-index: 1;
  pointer-events: none;
  opacity: 0.7;
}

/* Additional styling for aval-template mobile drawer form */
.mobile-search-drawer .availability-form-mobile .wrapper {
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  max-width: 100%;
  width: 100%;
  margin: 0;
  box-shadow: none;
}

.mobile-search-drawer .availability-form-mobile .content {
  max-width: 100%;
  padding: 0;
  margin: 0;
  text-align: left;
}

.mobile-search-drawer .availability-form-mobile .content h4 {
  display: none; /* Hide the title since it's in the header */
}

.mobile-search-drawer .availability-form-mobile .content form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mobile-search-drawer .availability-form-mobile .content form .form-fields {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.mobile-search-drawer .availability-form-mobile .content form input:not([type='checkbox']),
.mobile-search-drawer .availability-form-mobile .content form select {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 8px 0;
  font-size: 16px;
  color: #37454F;
  font-family: 'Times New Roman';
  outline: none;
  width: 100%;
  height: auto;
  flex: 1;
  max-width: 100%;
  min-width: 100px;
}

.mobile-search-drawer .availability-form-mobile .content form input[type=submit] {
  min-height: 32px;
  margin: 0;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 8px 24px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #E9E2DE;
  cursor: pointer;
}

.mobile-search-drawer .availability-form-mobile .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
}

.mobile-search-drawer .availability-form-mobile .content form .checkbox {
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 0;
}

.mobile-search-drawer .availability-form-mobile .content form .checkbox input[type="checkbox"] {
  width: auto;
  margin: 0;
}

.mobile-search-drawer .availability-form-mobile .content form .checkbox label {
  font-size: 14px;
  color: #37454F;
  margin: 0;
  cursor: pointer;
}

.mobile-search-drawer .availability-form-mobile .close-expanded {
  display: none; /* Hide close button in mobile drawer */
}

/* Prevent body scroll when drawer is open */
body.drawer-open {
  overflow: hidden;
}

/* Mobile Search Button for Footer */
.mobile-search-button-footer {
  display: none; /* Hidden on desktop */
}

.mobile-search-trigger-footer {
  position: fixed;
  font-family: Terfens;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1001;
  background-color: #F2F2ED;
  color: #3A4032;
  border: 1px solid #411900;
  border-radius: 50px;
  padding: 8px 30px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: all 0.3s ease;
}

.mobile-search-trigger-footer:hover {
  background-color: #3A4032;
  transform: translateX(-50%) translateY(-2px);
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.3);
}

/* Mobile Search Drawer for Footer */
.mobile-search-drawer-footer {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1002;
}

.mobile-search-drawer-footer.active {
  display: block;
}

.mobile-search-drawer-footer .drawer-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.mobile-search-drawer-footer.active .drawer-overlay {
  opacity: 1;
}

.mobile-search-drawer-footer .drawer-content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #F2F2ED;
  border-radius: 0;
  border-top: 1px solid #411900;
  transform: translateY(100%);
  transition: transform 0.3s ease;
  max-height: 80vh;
  overflow-y: auto;
}

.mobile-search-drawer-footer.active .drawer-content {
  transform: translateY(0);
}

.mobile-search-drawer-footer .drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  border-bottom: none;
}

.mobile-search-drawer-footer .drawer-header h4 {
  margin: 0 auto;
  font-size: 18px;
  font-weight: 600;
  color: #37454F;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.mobile-search-drawer-footer .drawer-close {
  background: none;
  border: 1px solid #411900;
  font-size: 40px;
  color: #37454F;
  cursor: pointer;
  padding: 0;
  width: 30px;
  height: 30px;
  right: 25px;
  position: absolute;
  display: flex;
  align-items: baseline;
  justify-content: center;
  border-radius: 50%;
  transition: background-color 0.2s ease;
}

.mobile-search-drawer-footer .drawer-close:hover {
  background-color: rgba(65, 25, 0, 0.1);
}

.mobile-search-drawer-footer .drawer-body {
  padding: 25px;
}

/* Mobile drawer form styling for footer */
.mobile-search-drawer-footer .availability-form-mobile .wrapper {
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  max-width: 100%;
  width: 100%;
  margin: 0;
  box-shadow: none;
}

.mobile-search-drawer-footer .availability-form-mobile .content {
  max-width: 100%;
  padding: 0;
  margin: 0;
  text-align: left;
}

.mobile-search-drawer-footer .availability-form-mobile .content h4 {
  display: none; /* Hide the title since it's in the header */
}

.mobile-search-drawer-footer .availability-form-mobile .content form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .form-fields {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .form-fields .checks{
  display: flex;
  justify-content: space-between;
}

.mobile-search-drawer-footer .availability-form-mobile .content form input:not([type='checkbox']),
.mobile-search-drawer-footer .availability-form-mobile .content form select {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 8px 0;
  font-size: 16px;
  color: #37454F;
  font-family: 'Times New Roman';
  outline: none;
  width: 100%;
  height: auto;
  flex: 1;
  max-width: 100%;
  min-width: 100px;
}

.mobile-search-drawer-footer .availability-form-mobile .content form input[type=submit] {
  min-height: 32px;
  margin: 0;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 8px 24px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #E9E2DE;
  cursor: pointer;
}

.mobile-search-drawer-footer .availability-form-mobile .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .checkbox {
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 0;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .checkbox input[type="checkbox"] {
  width: auto;
  margin: 0;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .checkbox label {
  font-size: 14px;
  color: #37454F;
  margin: 0;
  cursor: pointer;
}

.mobile-search-drawer-footer .close-expanded {
  display: none; /* Hide close button in mobile drawer */
}

/* Mobile drawer input styling to match desktop */
.mobile-search-drawer-footer .availability-form-mobile .content form input::placeholder {
  font-size: 16px;
  color: #37454F;
  opacity: 1;
  font-family: 'Times New Roman';
}

.mobile-search-drawer-footer .availability-form-mobile .content form .input {
  position: relative;
}

.mobile-search-drawer-footer .availability-form-mobile .content form .input:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 6px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 50%;
  right: 8px;
  transform: translateY(50%);
  z-index: 1;
  pointer-events: none;
  opacity: 0.7;
}

/* Show mobile elements only on mobile */
@media (max-width: 768px) {
  .mobile-search-button {
    display: block;
  }

  .mobile-search-button-footer {
    display: block;
  }

  .page-template-aval-template .availability {
    display: none; /* Hide desktop form on mobile */
  }

  .availability-form {
    display: none !important; /* Hide floating form on mobile */
  }

  .availability-form .wrapper {
    display: none !important; /* Hide wrapper on mobile */
  }

  /* Hide desktop availability wrapper on mobile */
  .availability .wrapper {
    display: none !important;
  }

  /* Hide footer mobile booking drawer on aval-template page */
  .page-template-aval-template .mobile-search-button-footer {
    display: none !important;
  }

  .page-template-aval-template .mobile-search-drawer-footer {
    display: none !important;
  }

  /* Show aval-template mobile button only on aval-template page */
  .page-template-aval-template .mobile-search-button {
    display: block;
  }

  /* Hide aval-template mobile button on other pages */
  .mobile-search-button {
    display: none;
  }

  /* Mobile responsive padding for components with 120px desktop padding */
  .card-carousel-block {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  .collection_block {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  .testimonial_block {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  .full-width-simple-content {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  .full-width-simple-content.styled {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  .list-content {
    padding: 40px 20px; /* Mobile responsive padding */
  }

  /* Update property carousel width calculations for 20px padding */
  .property-carousel-container .property-content,
  .property-carousel-container .property-image {
    width: calc(100vw - 40px); /* Updated for 20px padding */
  }

  /* Mobile padding for aval-template page elements */
  .page-template-aval-template .breadcrumbs,
  .page-template-aval-template #aval,
  .page-template-aval-template .contact-info {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Additional mobile padding adjustments */
  .link-tiles {
    padding: 40px 20px; /* Ensure link-tiles has mobile padding */
  }

  /* Update link-tiles width calculations for 20px padding */
  .link-tiles .tile {
    width: calc(50% - 16px); /* Updated for 20px padding */
  }

  .link-tiles.by-2 .tile {
    width: calc(50% - 16px) !important; /* Updated for 20px padding */
  }

  .link-tiles.by-3 .tile {
    width: calc(33.333% - 10px) !important; /* Updated for 20px padding */
  }
}

@media (max-width: 575px) {
  .link-tiles .tile {
      padding: 0;
      margin: 0;
      width: calc(50% - 4px);
  }
}

/* Expanded state when form has 'expanded' class */
.availability-form.expanded {
  bottom: 0;
  padding: 0;
  justify-content: stretch;
}

.availability-form.expanded .wrapper {
  border-radius: 0;
  max-width: none;
  width: 100%;
  margin: 0;
}

/* Hide checkboxes when floating, show when expanded */
.availability-form .content form .checkbox {
  display: none !important;
  transition: all 0.3s ease-in-out;
}

.availability-form.expanded .content form .checkbox {
  display: flex !important;
}

/* Submit container for button and close button */
.availability-form .submit-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

/* Add close button for expanded state - positioned next to submit button */
.availability-form .close-expanded {
  display: none;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 24px;
  color: #411900;
  cursor: pointer;
  z-index: 1006;
}

.availability-form.expanded .close-expanded {
  display: flex;
  position: relative;
  right: auto;
  top: auto;
  transform: none;
  margin-left: 10px;
  font-size: 0;
  padding: 0;
  background-color: transparent;
  border: 1px solid #411900;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #411900;
  cursor: pointer;
  transition: all 0.2s ease;
  padding-bottom: 2px;
}

.availability-form.expanded .close-expanded::before {
  content: '×';
  font-size: 24px;
  font-weight: bold;
  color: #411900;
}

.availability-form.expanded .close-expanded:hover {
  background-color: #3A4032;
  border-color: #3A4032;
}

.availability-form.expanded .close-expanded:hover::before {
  color: #fff;
}

.availability-form .wrapper {
  background-color: #EAE3DF;
  padding: 15px 30px;
  border-radius: 100px;
  border: 1px solid #411900;
  max-width: 900px;
  width: 100%;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease-in-out;
}

#aval .filter {
  background-color: #EAE3DF;
  padding: 15px 30px;
  border: 1px solid #411900;
  max-width: 900px;
  width: 100%;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease-in-out;
}

.availability-form .close-avail {
  position: absolute;
  right: 8px;
  top: 8px;
  background-color: transparent;
  border: none;
  font-size: 16px;
  font-weight: 300;
}

.availability-form .content,
.availability .content {
  max-width: 100%;
  padding: 0px 16px;
  margin: auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.availability-form .content form,
.availability .content form {
  display: flex;
  align-self: center;
}

.availability-form .content form .form-fields,
.availability .content form .form-fields {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  justify-content: space-between;
}

.availability-form .content h4,
.availability .content h4 {
  margin: 0rem 1.5rem;
  /* padding-top: 4px; */
  margin-left: 0;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #3A4032;
  text-transform: uppercase;
  cursor: pointer;
  transition: color 0.2s ease;
  font-family: Terfens;
}

.availability-form .content h4:hover {
  color: #411900;
}

/* Ensure h4 is clickable and not blocked */
.availability-form .content h4 {
  position: relative;
  z-index: 10;
  pointer-events: auto;
}

/* .availability .content h4 {
  margin: -1.25rem 0.75rem;
  font-size: 18px;
} */

.availability .content .close-sa-btn {
  display: none;
  height: 0;
  overflow: hidden;
  transition: height ease-in-out 0.3s;
}

.availability-form .content form input:not([type='checkbox']),
.availability-form .content form select,
.availability .content form input:not([type='checkbox']),
.availability .content form select {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 0;
  max-height: 32px;
  position: relative;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: 0.1em;
  color: #37454F;
  font-family: 'Times New Roman';
  z-index: 1001;
}

.availability-form .content form .select .selectCustom,
.availability-form .content form .select .selectNative,
.availability-form .content form input:not([type='checkbox']),
.availability .content form .select .selectCustom,
.availability .content form .select .selectNative,
.availability .content form input:not([type='checkbox']) {
  width: 120px;
  height: auto;
  flex: 1;
  max-width: 150px;
  min-width: 100px;
}

/* .availability .content form select,
#availability>div:nth-child(2) {
  margin-right: 24px;
} */

.availability-form .content form .select,
.availability-form .content form .input,
.availability .content form .select,
.availability .content form .input {
  position: relative;
}

.availability-form .content form .select:before,
.availability .content form .select:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 17px;
  height: 9px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 16px;
  right: 0px;
  z-index: 1;
  pointer-events: none;
}

.availability-form .content form .input:before,
.availability .content form .input:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 6px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 50%;
  right: 8px;
  transform: translateY(50%);
  z-index: 1;
  pointer-events: none;
  opacity: 0.7;
}

/* .availability-form .content form .input:nth-last-child(2) {
  margin-left: 24px;
} */

.availability-form .content form input::placeholder,
.availability .content form input::placeholder {
  font-size: 16px;
  color: #37454F;
  opacity: 1;
  font-family: 'Times New Roman';
}

.availability-form .content form input[type=submit],
.availability .content form input[type=submit] {
  min-height: 32px;
  margin: 0 0 0 24px;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 0;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 3px;
  color: #F2F2ED;
  min-width: unset;
  font-family: Terfens;
}

.availability-form .content form input[type=submit]:hover,
.availability .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
}

.availability-form .content form .checkbox,
.availability .content form .checkbox {
  display: flex;
  gap: 8px;
  align-items: center;
}

.availability-form .content form .checkbox input[type="checkbox"],
.availability .content form .checkbox input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  background-color: transparent;
  border: 1px solid #411900;
  border-radius: 0;
  cursor: pointer;
  position: relative;
  margin: 0;
}

.availability-form .content form .checkbox input[type="checkbox"]:checked,
.availability .content form .checkbox input[type="checkbox"]:checked {
  background-color: #411900;
}

.availability-form .content form .checkbox input[type="checkbox"]:checked::after,
.availability .content form .checkbox input[type="checkbox"]:checked::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 14px;
}

.availability-form .content form .checkbox label,
.availability .content form .checkbox label {
  font-style: italic;
  font-size: 15px;
  letter-spacing: 0.1em;
  color: #3A4032;
  font-family: Warbler;
  margin: 0;
}

/* Date picker positioning for availability form */
.availability-form .content form input[type="date"] {
  z-index: 1002;
}

.availability-form .content form input[type="date"]::-webkit-calendar-picker-indicator {
  z-index: 1003;
}

/* Ensure date picker appears above the form */
.availability-form .content form .input {
  z-index: 1001;
  position: relative;
}

/* Date picker dropdown positioning */
.availability-form .content form input[type="date"]:focus {
  z-index: 1004;
  position: relative;
}

/* Ensure the entire form container allows overflow for date pickers */
.availability-form .content {
  overflow: visible;
}

.availability-form .content form {
  overflow: visible;
}

.availability-form .content form .form-fields {
  overflow: visible;
}

/* Add space for date picker above the form */
body {
  padding-bottom: 250px;
}

/* Alternative: Add space to the main content area */
.main-content {
  margin-bottom: 250px;
}


/* Force date picker to open upward above the form */
.availability-form .content form input[type="date"] {
  position: relative;
  z-index: 1002;
}

.availability-form .content form input[type="date"]:focus {
  position: relative;
  z-index: 1004;
}

/* Create a container that allows date picker to extend upward */
.availability-form .content form .form-fields {
  position: relative;
  z-index: 1001;
}

/* Ensure date picker appears above the form by using transform */
.availability-form .content form input[type="date"]::-webkit-calendar-picker-indicator {
  position: relative;
  z-index: 1003;
}

/* Force the date input to open its picker upward */
.availability-form .content form .input {
  position: relative;
  z-index: 1001;
}

/* Target the correct date inputs - they are type="text" with classes date-from and date-to */
.availability-form .content form input.date-from,
.availability-form .content form input.date-to {
  position: relative;
  z-index: 1002;
}

.availability-form .content form input.date-from::placeholder,
.availability-form .content form input.date-to::placeholder {
  font-family: Warbler;
  color: #3A4032;
  font-style: normal !important;
}

.availability-form .content form input.date-from,
.availability-form .content form input.date-to {
  position: relative;
  z-index: 1002;
}

/* Style the date picker dropdown arrow - make it smaller and align with text */
.availability-form .content form input.date-from::-webkit-calendar-picker-indicator,
.availability-form .content form input.date-to::-webkit-calendar-picker-indicator {
  width: 12px;
  height: 12px;
  margin-left: 8px;
  cursor: pointer;
  opacity: 0.7;
  vertical-align: middle;
}

.availability-form .content form input.date-from:focus,
.availability-form .content form input.date-to:focus {
  position: relative;
  z-index: 1004;
}

/* Ensure the form wrapper allows overflow for date picker */
.availability-form .content form {
  overflow: visible;
  position: relative;
  z-index: 1000;
}

/* Make sure the entire availability form allows overflow */
.availability-form .content {
  overflow: visible;
  position: relative;
  z-index: 1000;
}

/* Create space above the form for the date picker to appear */
.availability-form .content form .form-fields {
  position: relative;
  z-index: 1001;
  /* margin-top: -200px;
  padding-top: 200px; */
}

/* Ensure date picker appears above the form */
.availability-form .content form .input {
  position: relative;
  z-index: 1001;
}

/* Improve click target for floating form date inputs */
.availability-form .date-from,
.availability-form .date-to {
  cursor: pointer !important;
  position: relative !important;
}

/* Add visual feedback for floating form date inputs */
.availability-form .date-from:focus,
.availability-form .date-to:focus {
  outline: 2px solid #37454f !important;
  outline-offset: 2px !important;
}

.open-avail {
  display: none;
}

.close-avail {
  display: none;
}

@media(max-width: 780px) {
  .mob-only .availability-form {
    display: block;
  }

  .availability-form {
    height: fit-content;
    bottom: 32px;
    position: fixed;
    overflow: visible;
    display: flex;
    justify-content: center;
    padding: 0 20px;
    transition: all 0.3s ease-in-out;
  }

  /* Expanded state on mobile when form has 'expanded' class */
  .availability-form.expanded {
    bottom: 0;
    padding: 0;
    justify-content: stretch;
  }

  .availability-form.expanded .wrapper {
    border-radius: 0;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  /* Hide checkboxes when floating on mobile, show when expanded */
  .availability-form .content form .checkbox {
    display: none !important;
    transition: all 0.3s ease-in-out;
  }

  .availability-form.expanded .content form .checkbox {
    display: flex !important;
  }

  /* Close button for mobile expanded state */
  .availability-form .close-expanded {
    display: none;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 20px;
    color: #411900;
    cursor: pointer;
    z-index: 1006;
  }

  .availability-form.expanded .close-expanded {
    display: flex;
    position: relative;
    right: auto;
    top: auto;
    transform: none;
    margin-left: 10px;
    font-size: 0;
    padding: 0;
    background-color: transparent;
    border: px solid #411900;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: #411900;
    cursor: pointer;
    transition: all 0.2s ease;
    padding-bottom: 2px;
  }

  .availability-form.expanded .close-expanded::before {
    content: '×';
    font-size: 20px;
    font-weight: bold;
    color: #411900;
  }

  .availability-form.expanded .close-expanded:hover {
    background-color: #3A4032;
    border-color: #3A4032;
  }

  .availability-form.expanded .close-expanded:hover::before {
    color: #fff;
  }

  .availability-form .wrapper {
    background-color: #37454F;
    padding: 15px 25px;
    border-radius: 100px;
    border: 1px solid #411900;
    max-width: 85%;
    width: 100%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
  }

  #aval .filter {
    background-color: #37454F;
    padding: 15px 25px;
    border: 1px solid #411900;
    max-width: 85%;
    width: 100%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
  }

  .availability-form .content {
    padding: 64px 72px;
  }

  .availability-form .content form {
    gap: 0.75rem;
  }

  .availability-form .content h4 {
    font-size: 18px;
    margin: 40px 0;
  }

  .availability-form .content {
    flex-direction: column;
    padding: 32px;
  }

  .availability-form.show {
    height: initial;
    transition: height ease-in-out 0.3s;
  }

  .availability-form .content form {
    flex-direction: column;
    align-self: auto;
  }

  .availability-form .wrapper {
    padding: 10px 0;
    height: 100%;
  }

  #aval .filter {
    padding: 10px 0;
    height: 100%;
  }

  .availability-form .content form .form-fields {
    max-width: 128px;
    width: inherit;
    margin: auto;
    gap: 0.75rem;
    display: flex;
    flex-direction: column;
    margin-bottom: 32px;
  }

  .availability-form .content form .input:nth-last-child(2) {
    margin-left: 0;
  }

  .availability-form .content form input:not([type="checkbox"]),
  .availability-form .content form select {
    /* min-width: 100%; */
    margin-bottom: 8px;
  }

  .availability-form .content form .select .selectCustom,
  .availability-form .content form .select .selectNative,
  .availability-form .content form input:not([type="checkbox"]) {
    width: 128px;
  }

  .availability-form .content form .select:before,
  .availability-form .content form .input:before {
    bottom: 19px;
    right: 0px;
  }

  .availability-form .content form input[type=submit] {
    margin: 0px;
    background-color: #D9D9D9;
    min-width: 215px;
    font-size: 14px;
    color: #37454F;
  }

  .availability-form .wrapper {
    background-color: #37454F;
  }

  #aval .filter {
    background-color: #37454F;
  }

  .availability-form .content {
    padding: 64px 72px;
  }

  .availability-form .content form {
    gap: 0.75rem;
  }

  .availability-form .content h4 {
    font-size: 14px;
    margin: 40px 0;
  }

  .availability-form .content h4,
  .availability-form .content form .select .selectNative,
  .availability-form .content form input::placeholder,
  .availability-form .content form .checkbox label {
    color: #fff;
    font-family: Warbler;
  }

  .availability-form .content form .select .selectNative,
  .availability-form .content form input:not([type="checkbox"]):not([type="submit"]) {
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 15px;
  }

  .availability-form .content form .select::before,
  .availability-form .content form .input::before {
    background-image: url(../../images/arrowdown-white.svg);
    width: 9px;
    height: 7px;
  }

  .open-avail {
    display: none;
  }

  .open-avail:after {
    content: '+';
    width: 24px;
    height: 24px;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    /* right: 28px; */
    font-size: 18px;
    cursor: pointer;
    margin-right: 16px;
  }

  .close-avail {
    display: none;
  }

  /*
  .availability-form .content form .input:nth-last-child(2) {
    margin-left: 0px;
  } */
}

.availability-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.availability-btn .btn {
  background-color: #edede6;
  border: none;
  min-height: 40px;
  margin: 0;
}

@media(max-width: 992px) {
  .availability-btn .btn {
    padding: 8px;
  }
}

@media(max-width: 768px) {
  .availability-btn .btn {
    display: none;
  }

  #availability>div:nth-child(2) {
    margin-right: 0;
  }
}



.availability {
  /* background-color: #edede6; */
  margin: 0 2%;
}

.availability .content {
  max-width: 100%;
  padding: 16px 16px;
  margin: auto;
  text-align: center;
  display: flex;
}

.availability .content form {
  display: flex;
  /*padding-top: 8px;*/
  /* font-size: 16px; */
}

/* .availability .content form input,
.availability .content form select {
  font-style: italic;
  color: #5f5f5f;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 0 0 8px;
  min-width: 180px;
  margin-right: 24px;
  max-height: 32px;
  position: relative;
  text-transform: capitalize;
  font-size: 16px;
} */

.availability .content form .select,
.availability .content form .input {
  position: relative;
}

.availability .content form .select:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 17px;
  height: 9px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 13px;
  right: 0px;
  z-index: 1;
  pointer-events: none;
}

.availability .content form .input:before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 6px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 50%;
  right: 8px;
  transform: translateY(50%);
  z-index: 1;
  pointer-events: none;
  opacity: 0.7;
}

#availability-form .select .selectCustom-option,
.availability .content form .select .selectCustom-option {
  font-size: 16px;
}

.availability .content form input[type=submit] {
  min-height: 32px;
  margin: 0 0 0 24px;
  border: none;
  background-color: #411900;
  font-style: normal;
  min-width: 40px;
  padding: 8px 24px;
  font-size: 12px;
  text-transform: uppercase;
  color: #E9E2DE;
  border-radius: 32px;
}

.availability .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
  border: none;
}

.enquire-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  z-index: 15;
  pointer-events: none;
}

.enquire-modal .modal-content,
.book-now-modal .modal-form {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  padding: 3rem 3.5rem;
  width: 40rem;
  height: 40rem;
  overflow-y: scroll;
}

.modal-form .modal-form-title {
  text-align: left !important;
}

.close-button {
  position: absolute;
  right: 20px;
  top: 0.9rem;
  width: 1.5rem;
  line-height: 1.5rem;
  text-align: center;
  cursor: pointer;
}

.show-modal .modal-widget .close-button {
  color: white;
}

.book-now-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  z-index: 15;
  pointer-events: none;
}

.show-modal {
  opacity: 1;
  visibility: visible;
  transition: ease 0.3s;
  pointer-events: auto;
}

.book-now-modal .modal-widget {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 35rem;
  min-height: 200px;
  border: none;
  width: 35rem;
}

@media(max-width: 768px) {
  .availability .content {
    padding: 6px 16px;
    display: block;
    max-height: 0;
    transition: all 0.3s ease-in-out;
    overflow: hidden;
  }

  .availability .wrapper {
    color: #fff;
    background-color: #37454f;
  }

  .availability .content.show {
    max-height: 20rem;
    transition: ease 0.3s;
  }

  .availability .content .search-aval-wrapper {
    display: flex;
    justify-content: center;
  }

  .availability .content .close-sa-btn {
    display: none;
    position: relative;
    top: -20px;
    background-color: transparent;
    border: none;
    height: 3.5rem;
    width: 4.5rem;
  }

  .availability .content .close-sa-btn {
    transform: rotate(180deg);
    transition: transform ease-in-out 0.5s;
  }

  .availability .content h4 {
    margin: 0 0 1rem 0;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #37454F;
  }

  .availability .content form {
    flex-direction: column;
  }

  .availability .content form input,
  .availability .content form select {
    min-width: 100%;
    margin-bottom: 8px;
  }

  .availability .content form .select:before,
  .availability .content form .input:before {
    bottom: 19px;
    right: 0px;
  }

  .availability .content form input[type=submit] {
    margin: 0 0 0 0px;
  }

  .enquire-modal .modal-content {
    width: 20rem;
    height: 95%;
    padding: 1rem;
  }

  .enquire-modal .modal-content h2 {
    margin-bottom: 0;
  }

  .book-now-modal .modal-form {
    width: 90%;
  }

  .book-now-modal .modal-widget {
    width: 19rem;
  }
}

@media(max-width: 480px) {
  .book-now-modal .modal-form {
    padding: 2rem 0.5rem;
  }
}


#lds-dual-ring {
  display: inline-block;
  width: 80px;
  height: 80px;
}

#lds-dual-ring.hidden {
  display: none;
}

#lds-dual-ring:after {
  content: " ";
  display: block;
  width: 64px;
  height: 64px;
  margin: 8px;
  border-radius: 50%;
  border: 6px solid #5F5F5F;
  border-color: #5F5F5F transparent #5F5F5F transparent;
  animation: lds-dual-ring 1.2s linear infinite;
}

@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.page-template-aval-template .d-flex {
  justify-content: center;
}

/* .carousel-control-prev,
.carousel-control-next {
  width: 50%;
}

.carousel-control-prev {
  cursor: url("../../images/left-chevron.svg"), auto;
}

.carousel-control-next {
  cursor: url("../../images/right-chevron.svg"), auto;
} */


/* Custom Styled Select for Dynamically Populated Select Dropdowns */
/* .filter-list .s-hidden {
  visibility: hidden;
}

@media (max-width: 575px) {
  .filter-list .select {
    min-width: 200px;
  }
}

.filter-list .select {
  cursor: pointer;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  height: 100%;
}

.filter-list .select .styledSelect {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center; */
/* padding-left: 16px; */
/* background-color: transparent;
  font-weight: normal;
  line-height: normal;
  cursor: pointer;
  font-size: 16px;
  color: #5f5f5f;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  height: fit-content;
  margin: auto 0;
}

.filter-list .select .styledSelect:after {
  content: "";
  position: absolute;
  background-image: url(../../images/arrowdown.svg);
  background-size: contain;
  background-repeat: no-repeat;
  right: 0;
  top: calc(50% - 4px);
  width: 17px;
  height: 9px;
  bottom: 13px;
  z-index: 1;
  pointer-events: none;
}

.filter-list .select .styledSelect.active:after {
  transform: rotate(180deg);
  top: 16px;
}

@media (max-width: 1024px) {
  .filter-list .select .styledSelect {
    width: fit-content;
    min-width: 150px;
    max-width: 100%;
    padding: 0 24px 0 0;

  }
}

.filter-list .select .options {
  display: none;
  position: absolute;
  right: 0;
  top: 100%;
  left: 0;
  z-index: 999;
  margin: 0;
  padding: 0;
  list-style: none;
  background-color: #FFFFFF;
  border-radius: 0px;
}

@media only screen and (max-width: 1024px) {
  .filter-list .select .options {
    top: 0;
  }
}

.filter-list .select .options li {
  margin: 0;
  padding: 5px 10px;
  color: #5B5D62;
  background-color: #FFFFFF;
  border-right: 1px solid #E0E0E0;
  border-left: 1px solid #E0E0E0;
  font-size: 16px;
}

.filter-list .select .options li:first-child {
  border-top: 1px solid #E0E0E0;
}

.filter-list .select .options li:first-child:hover {
  border-top: 1px solid #37454f;
}

.filter-list .select .options li:last-child {
  border-bottom: 1px #E0E0E0;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
}

.filter-list .select .options li:last-child:hover {
  border-bottom: 1px #37454f;
}

.filter-list .select .options li:hover {
  color: #FFFFFF;
  background: #37454f;
  border-right: 1px solid #37454f;
  border-left: 1px solid #37454f;
} */

/* NEW OUR-ESCAPES PAGE STYLING */

.page-template-properties-template-new .top-bar {
  padding-top: 6rem;
  /*text-align: center;*/
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #3A4032;
  padding-right: 120px;
  padding-left: 120px;
}

/* .page-template-properties-template-new .top-bar div {
  padding-right: 10%;
  padding-left: 10%;
} */

.page-template-properties-template-new .top-bar h1 {
  /*font-size: 28px;*/
}

.page-template-properties-template-new .top-bar .caption {
  text-transform: none;
  letter-spacing: 0;
}

.page-template-properties-template-new .crumbs-search,
.page-template-aval-template .breadcrumbs {
  position: sticky;
  top: 100px;
  z-index: 2;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 0 0 20px 0;
}

.page-template-properties-template-new .crumbs-search {
  display: flex;
  justify-content: space-between;
  z-index: 9;
  background: #F2F2ED;
}

.page-template-aval-template .breadcrumbs .crumbs-search {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.crumbs-search .left {
  display: flex;
  align-items: center;
  margin-top: 7px;
}

.crumbs-search .left .crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 1rem;
  list-style: none;
  background-color: none;
  border-radius: 0.25rem;
}

.crumbs-search .right {
  display: flex;
  /* justify-content: flex-end; */
  gap: 32px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

/* @media(max-width: 675px) {
  .crumbs-search .right {
    justify-content: space-between;
    width: 100%;
  }
} */

.crumbs-search .right .villa-drop,
.advanced-search-btn,
.show-map-btn,
.sort-results {
  letter-spacing: 1.5px;
  margin-top: 9px;
  border-bottom: 1px solid #3A4032;
  color: #3A4032;
  font-size: 14px;
  text-align: left;
  text-transform: uppercase;
  background-color: transparent;
  border-radius: 0;
  position: relative;
  height: 25px;
}

.crumbs-search .right .villa-drop,
.advanced-search-btn,
.show-map-btn {
  position: relative;
  cursor: pointer;
}

.crumbs-search .right .villa-drop {
  width: 220px;
}

.crumbs-search .right .villa-drop:after,
.advanced-search-btn:after {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 7px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 8px;
  right: 0;
  z-index: -1;
}

.crumbs-search .right .villa-drop:after {
  background-image: url(../../images/plus.png);
  width: 10px;
  height: 10px;
  transform: scale(2.5);
  z-index: 0;
}

.advanced-search-btn {
  width: 104px !important;
}

.advanced-search-btn:after {
  background-image: url(../../images/plus.png);
  width: 10px;
  height: 10px;
  transform: scale(2.5);
  right: 4px;
  z-index: 0;
}

.villa-search form ul li label {
  position: relative;
}

.avai .crumbs-search .right select,
.villa-search .searchandfilter select.sf-input-select,
.sort-results {
  cursor: pointer;
  color: #3A4032;
  border: none;
  border-bottom: 1px solid #3A4032;
  -moz-appearance: none;
  -webkit-appearance: none;
  font-size: 14px;
  appearance: none;
  text-align: left;
  text-transform: uppercase;
  background-color: transparent;
  border-radius: 0;
  min-width: unset;
  letter-spacing: 1.5px;
}

.villa-search label {
  margin-bottom: 0;
  position: relative;
}

.villa-search .searchandfilter select.sf-input-select {
  text-transform: capitalize;
  width: 150px;
}

.villa-search>select {
  cursor: pointer;
  color: #5E5E5E;
  border: none;
  border-bottom: 1px solid #5E5E5E;
  text-transform: uppercase;
  background-color: transparent;
  min-width: 0 !important;
  letter-spacing: 1.5px;
  width: 140px !important;
  font-size: 12px;
}

.villa-search .searchandfilter ul li {
  padding: 0;
}

@media(max-width: 768px) {
  .avai .mobile-intro span {
    font-size: 11px;
    line-height: 38px;
    letter-spacing: 0.1em;
  }

  .avai .breadcrumbs {
    top: 5.5rem;
    font-size: 12px;
  }

  .crumbs-search {
    top: 7.5rem;
  }

  /*
  .crumbs-search .right .villa-drop {
    display: none;
  } */

  .avai .crumbs-search .right .advanced-search-btn {
    width: 150px !important;
  }

  .avai .crumbs-search .right .sort-results {
    width: 230px !important;
  }

  .crumbs-search .right {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
}

@media(max-width: 768px) {
  .page-template-properties-template-new {
    max-width: 100vw;
    overflow-x: hidden;
  }

  .page-template-properties-template-new .contain {
    padding: 0 20px;
  }

  .page-template-properties-template-new .top-bar {
    padding: 0 28px;
    padding-top: 5rem;
  }

  .page-template-properties-template-new .top-bar h1 {
    font-size: 2rem;
    letter-spacing: 2px;
    color: #5F5F5F;
    margin: 0;
  }

  .page-template-properties-template-new .crumbs-search,
  .page-template-aval-template .breadcrumbs {
    padding: 0px;
  }

  .page-template-properties-template-new .property-loop {
    padding: 0 8px !important;
  }

  .page-template-properties-template-new .tabs {
    padding: 20px 20px 0 20px;
  }

  .page-template-properties-template-new .tabs .tab-item {
    padding: 0px;
  }

  .page-template-properties-template-new .villa-drop-popup {
    padding: 20px;
  }

  .crumbs-search {
    /* padding: 5px 0 10px 0; */
    margin-top: 10px;
    top: 5rem;
    /* width: 100vw; */
    width: 100%;
    /* padding: 0; */
  }

  .crumbs-search .left {
    display: none;
  }

  .crumbs-search .right {
    justify-content: space-between;
    /* width: 92%; */
    width: 100%;
  }

  .crumbs-search .right .villa-drop,
  .advanced-search-btn,
  .show-map-btn,
  .villa-search form.searchandfilter ul li label select.sf-input-select,
  .avai .crumbs-search .right .sort-results {
    width: 112px !important;
    margin-left: 5px;
    font-size: 12px;
    margin-top: 10px;
    margin-right: 7px;
  }

  .show-map-btn {
    width: fit-content !important;
  }

  .avai .crumbs-search {
    width: 100%;
  }

  .avai .crumbs-search .right {
    width: 100%;
  }

  .avai .crumbs-search .right .advanced-search-btn {
    margin: 0;
  }

  .crumbs-search .right {
    gap: 8px;
  }
}

@media(max-width: 575px) {
  .page-template-properties-template-new .top-bar {
    padding: 0 8px;
    padding-top: 3rem;
  }
}

@media(max-width: 350px) {
  .crumbs-search .right {
    /* justify-content: space-between; */
    /* width: 100%; */
    flex-wrap: wrap;
    /* justify-content: flex-start; */
  }
}

.page-template-aval-template .crumbs-search .right label:after,
.villa-search form ul li label:after {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 10px;
  height: 8px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 7px;
  right: 0;
  z-index: -1;
}

.page-template-aval-template .crumbs-search .right label {
  margin-bottom: 0;
  position: relative;
}

.page-template-aval-template .crumbs-search .right label:after {
  bottom: 8px;
  right: 0;
}

#count {
  display: none;
}

.no-villas {
  font-size: 1rem;
  margin: 30px 0 30px 0px;
  padding: 40px 0;
}

@media(max-width: 675px) {
  .main-31013 .left {
    display: none;
  }
}

.properties {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 1.9rem;
  grid-row-gap: 3rem;
  padding-top: 25px;
  padding-bottom: 50px;
}

@media(max-width: 992px) {
  .properties {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width: 575px) {
  .properties {
    grid-template-columns: 1fr;
    padding-top: 15px;
    padding-bottom: 20px;
  }
}

.property-content,
.property-single {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  width: 100%;
}


.property-single .arriving {
  font-size: 12px;
}

.property-single .club-membership {
  font-style: italic;
  font-size: 10px;
}

.property-content h2,
.property-single h2 {
  font-size: 16px;
  letter-spacing: 3px;
  font-weight: 400;
  font-size: 16px;
  margin-bottom: 1.25rem !important;
  margin-top: 1.75rem !important;
}

.property-content .villa-info h2 {
  text-transform: uppercase;
}

@media(max-width: 575px) {

  .property-content,
  .property-single {
    width: 100%;
  }

  .property-content h2 {
    font-weight: 400;
    font-size: 14px;
  }
}

@media(max-width: 350px) {

  .property-content,
  .property-single {
    width: 100%;
  }
}

.villa-carousel {
  display: flex;
  flex-direction: column;
  position: relative;
}

.villa-carousel .chevron-icon-left {
  position: absolute;
  left: 1.5rem;
  opacity: 1;
  fill: #5E5E5E;
}

.villa-carousel .chevron-icon-right {
  position: absolute;
  right: 1.5rem;
  opacity: 1;
  transform: rotate(180deg); 
}

.villa-carousel .carousel-inner img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.villa-info h2 {
  color: #3A4032;
}

.villa-info ul {
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.1em;
  color: #3A4032;
  list-style: none;
  padding-left: 0 !important;
}

.villa-info ul li {
  margin: 4px 0;
  text-transform: unset;
}

.villa-info p {
  margin-top: -5px;
}

.villa-info a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Terfens;
  /* font-size: 15px; */
  height: 32px;
  width: fit-content;
  padding: 0.6rem 0.5rem;
  /* letter-spacing: 2px; */
  transition: 200ms ease-in;
  margin: 0 auto;
  margin-top: 2rem;
  min-width: 145px;
  font-size: 12px;
  letter-spacing: 3px;
}

.villa-info a:hover {
  color: #F2F2ED;
  background-color: #3A4032;
}

@media(max-width: 768px) {
  .villa-carousel .carousel-inner img {
    height: 400px;
  }

  .villa-info p {
    font-size: 12px;
    text-transform: capitalize;
    font-weight: 300;
    margin-top: -15px !important;
  }

  .villa-info a {
    font-size: 14px;
    letter-spacing: 1px;
    /* padding: 0.3rem 0.25rem; */
    width: 70px;
    height: 27px;
    margin-top: 1rem;
    padding: 1rem 3rem;
  }
}

.load-more-btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  margin-top: 30px;
  font-size: 21px;
  text-transform: uppercase;
  border: none;
  outline: none;
  background-color: transparent;
  letter-spacing: 0.1em;
  transition: 200ms ease-in-out;
  color: #5F5F5F;
  padding-left: 15px;
}

.load-more-btn .chevron-icon {
  margin: 0 auto;
  margin-top: 5px;
}

.load-more-btn:hover {
  opacity: 0.5;
}

.more-content {
  padding: 2.5rem 0 1.7rem 0;
}

/* VILLA FILTER POPUP */

/* .villa-drop-popup,
.availability .wrapper,
#aval .filter {
  width: 65%;
  min-width: 575px;
  height: 100vh;
  background-color: #EAE3DF;
  position: fixed;
  top: 0;
  right: 0;
  max-width: 778px;
} */

.villa-drop-popup,
#aval .filter {
  width: 32%;
  /* min-width: 575px; */
  height: 100vh;
  background-color: #F2F2ED;
  position: fixed;
  top: 0;
  right: 0;
  max-width: 778px;
}

/* .villa-drop-popup,
.availability .wrapper {
  display: none;
} */


.villa-drop-popup {
  display: none;
}

#aval .filter {
  opacity: 0;
  max-height: 0;
  transition: ease-in-out 0.3s;
  pointer-events: none;
  z-index: 1001;
  overflow: auto;
  padding: 4rem 0;
}

.villa-drop-popup .villa-drop-close,
#aval .holder .filter .filter-close {
  position: absolute;
  top: 3.5rem;
  right: 3rem;
  width: 13px;
  pointer: cursor;
}

.villa-drop-popup {
  border: 1px solid #411900;
}

.villa-drop-popup .villa-popup-content,
#aval .filter .content {
  padding: 4rem 0;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.villa-drop-popup .villa-popup-content h1 {
  font-family: Terfens;
  font-size: 16px;
  letter-spacing: 4px;
  color: #3A4032;
  text-align: center;
  text-transform: uppercase;
  margin: 0;
}

.villa-drop-popup #availability-form,
#aval .filter #availability {
  margin: 64px auto 20px auto;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.villa-drop-popup #availability-form .input input,
#aval .filter #availability .input input {
  cursor: pointer;
  color: #3A4032;
  border: none;
  position: relative;
  border-bottom: 0.2px solid #3A4032;
  font-size: 30px;
  text-align: left;
  text-transform: uppercase;
  background-color: transparent;
  border-radius: 0;
  width: 376px;
  letter-spacing: 2px;
  padding: 10px;
}

.villa-drop-popup #availability-form .input input::placeholder,
#aval .filter #availability .input input::placeholder {
  font-size: 30px;
  opacity: 1;
  color: #3A4032;
}

.villa-drop-popup #availability-form .checkbox {
  width: 376px;
  border-bottom: 0.2px solid #3A4032;
  display: flex;
  gap: 16px;
  padding: 0 10px;
}

.villa-drop-popup #availability-form .checkbox label {
  font-size: 30px;
  line-height: 48px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #3A4032;
}

.villa-drop-popup #availability-form .btn,
#aval .filter .btn {
  background-color: transparent;
  color: #3A4032;
  border: 1px solid #3A4032;
  font-size: 16px;
  letter-spacing: 4px;
  width: 100%;
  padding: 0.5rem 1rem;
  margin: 20px 0 40px;
  transition: all ease-in-out 0.5s;
}

#aval .filter .btn {
  font-size: 16px;
  letter-spacing: 4px;
  width: 100%;
  padding: 0.5rem 1rem;
  margin: 20px 0 40px;
  transition: all ease-in-out 0.5s;
  font-family: Warbler;
  border: 1px solid transparent;
  background-color: #411900;
  color: #E9E2DE;
}

#aval .filter .btn:hover {
  color: #fff;
  background-color: #3A4032;
}

.villa-drop-popup #availability-form .btn:hover,
#aval .filter #availability .btn:hover {
  background-color: #3A4032;
  color: #fff;
}

.villa-drop-popup #availability-form .selectCustom,
.villa-drop-popup #availability-form .selectNative,
.villa-drop-popup #availability-form .input,
#aval .filter #availability .selectCustom,
#aval .filter #availability .selectNative,
#aval .filter #availability .input {
  height: 50px;
}

.villa-drop-popup #availability-form .selectCustom-trigger,
#aval .filter #availability .selectCustom-trigger {
  font-size: 30px;
  color: #3A4032;
  width: 376px;
  letter-spacing: 2px;
  border-bottom: 0.2px solid #3A4032;
}

.villa-drop-popup #availability-form .selectCustom-options,
#aval .filter #availability .selectCustom-options {
  width: 376px;
  letter-spacing: 2px;
  font-size: 30px;
  padding: 0.8rem;
  top: 32px;
  max-width: 100%;
}

.villa-drop-popup #availability-form .selectNative,
#aval .filter #availability .selectNative {
  visibility: hidden;
}

.villa-drop-popup #availability-form .input,
#aval .filter #availability .input {
  position: relative;
}

.villa-drop-popup #availability-form .selectCustom-trigger:after,
.villa-drop-popup #availability-form .input:after {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 23px;
  height: 13px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 20px;
  right: 0;
  z-index: -1;
}

.show-popup {
  display: block !important;
  z-index: 15;
}

@media(max-width: 992px) {

  .villa-drop-popup,
  #aval .filter {
    height: 102%;
    min-width: 530px;
    width: 530px
  }

  .villa-drop-popup .villa-drop-close,
  #aval .filter .close-availability {
    width: 10px;
    top: 4rem;
    right: 3.2rem;
  }

  .villa-drop-popup #availability-form,
  #aval .filter #availability {
    margin: 55px auto 75px auto;
  }

  .villa-drop-popup .villa-popup-content,
  #aval .filter .content {
    padding: 145px 0 0 0;
  }

  .villa-drop-popup .villa-popup-content h1,
  #aval .filter .content h4 {
    font-size: 16px;
    margin: 0;
  }

  .villa-drop-popup #availability-form .input input,
  .villa-drop-popup #availability-form .input input::placeholder,
  .villa-drop-popup #availability-form .selectCustom-trigger,
  #aval .filter #availability .input input,
  #aval .filter #availability .input input::placeholder,
  #aval .filter #availability .selectCustom-trigger {
    min-width: 320px;
    width: 100%;
    font-size: 18px;
    margin-bottom: 3rem !important;
    margin-top: 14px;
  }

  .villa-drop-popup #availability-form .input:after,
  .villa-drop-popup #availability-form .selectCustom-trigger::after,
  #aval .filter #availability .input:after,
  #aval .filter #availability .selectCustom-trigger::after {
    width: 13px;
    bottom: 12px;
  }

  .villa-drop-popup #availability-form .selectCustom,
  #aval .filter #availability .selectCustom {
    width: 100%;
  }

  .villa-drop-popup #availability-form .selectCustom-options,
  #aval .filter #availability .selectCustom-options {
    top: 48px;
    font-size: 18px;
  }

  .villa-drop-popup .villa-popup-content button {
    width: 70%;
    font-size: 18px;
  }
}

@media(max-width: 768px) {

  .villa-drop-popup,
  #aval .filter {
    display: none;
    position: fixed;
    height: 75%;
    background-color: white;
    padding-top: 1rem;
    width: 95vw;
    border: 1px solid black;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 700px;
    min-width: 0;
    min-height: fit-content;
    top: 88px;
    left: 2.5%;
  }

  /* .villa-drop-popup {
    opacity: 0;
    max-height: 0;
  } */

  #aval .filter {
    padding-top: 64px;
  }

  .villa-drop-popup .villa-drop-close,
  #aval .filter .filter-close,
  #aval .filter .close-availability {
    width: 10px;
  }

  #aval .filter .filter-close {
    display: block;
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    width: 10px;
    cursor: pointer;
  }

  #aval .holder .filter .filter-row {
    padding: 48px;
    overflow-y: scroll;
    height: 100%;
  }

  #aval .filter h4,
  #aval .filter .parent-location label {
    font-size: 16px;
    margin: 0;
    font-weight: 400;
    line-height: 38px;
    /* text-align: center; */
    letter-spacing: 0.1em;
  }

  #aval .filter .filter-list .anchor {
    text-transform: uppercase;
    /* border-bottom: none; */
    font-size: 12px;
    line-height: 38px;
    letter-spacing: 0.1em;
    margin-bottom: 0;
  }

  #aval .filter .filter-list .items {
    font-size: 12px;
  }

  .villa-drop-popup #availability-form,
  #aval .filter #availability {
    /* margin: 55px auto 20px auto; */
    margin: 36px auto 20px auto;
    gap: 8px;
  }

  .villa-drop-popup .villa-popup-content,
  #aval .filter .content {
    padding: 60px 0 50px 0;
  }

  .villa-drop-popup .villa-drop-close,
  #aval .filter .close-availability {
    top: 1rem;
    right: 1.2rem;
  }

  .villa-drop-popup .villa-popup-content h1,
  #aval .filter h4,
  #aval .filter .parent-location label {
    font-size: 16px;
    margin: 0;
  }

  .villa-drop-popup #availability-form .input input,
  .villa-drop-popup #availability-form .selectCustom-trigger,
  .villa-drop-popup #availability-form .selectCustom-options,
  #aval .filter #availability .input input,
  #aval .filter #availability .selectCustom-options,
  #aval .filter #availability .selectCustom-trigger {
    min-width: 230px;
    width: 100%;
    font-size: 14px;
    border-bottom: none;
    margin-bottom: 0 !important;
    margin-top: 14px;
  }

  /* .villa-drop-popup #availability-form .selectCustom-options {
    padding: 0;
  } */

  .villa-drop-popup #availability-form .input input::placeholder,
  .villa-drop-popup #availability-form .selectCustom-trigger,
  #aval .filter #availability .input input::placeholder,
  #aval .filter #availability .selectCustom-trigger {
    opacity: 1;
    font-size: 14px;
    height: auto;
  }

  .villa-drop-popup #availability-form .selectCustom-trigger::after,
  #aval .filter #availability .selectCustom-trigger::after {
    width: 13px;
    bottom: 12px;
  }

  .villa-drop-popup #availability-form h3 {
    font-size: 18px;
    margin-bottom: 1.5rem;
    text-transform: lowercase;
  }

  .villa-drop-popup #availability-form .btn-holder,
  #aval .filter #availability .btn-holder {
    display: flex;
    justify-content: center;
  }

  .villa-drop-popup #availability-form .btn,
  #aval .filter #availability .btn {
    background-color: #D9D9D9;
    color: #5f5f5f;
    padding: 4px 10px;
    width: fit-content;
    font-size: 18px;
    margin-top: 50px;
    border: 1px solid transparent;

  }
}

@media(max-width: 575px) {
  #aval .filter .filter-row {
    align-items: normal;
    height: fit-content;
  }

  #aval .filter .filter-list .anchor {
    font-size: 16px;
    letter-spacing: 2px;
    width: auto;
    padding-bottom: 0;
    border-bottom: 0.2px solid #3A4032;
  }

  .villa-drop-popup #availability-form .btn,
  #aval .filter .btn {
    /* background-color: #EAE3DF; */
    border: 1px solid transparent;
    font-size: 16px;
    letter-spacing: 3px;
    width: fit-content;
    padding: 4px 16px;
    font-family: Warbler;
  }
}

/*
@media(max-width: 500px) {
  .villa-drop-popup {
    top: 22rem;
    height: 69%;
    max-height: 560px;
  }
} */

/* Filter amends 03/23 */

.btn-holder .btn,
.villa-drop-close,
#aval .filter .close-availability {
  cursor: pointer;
}

.villa-drop-popup #availability-form .btn-holder,
#aval .filter #availability .btn-holder {
  display: flex;
  gap: 16px;
}

.villa-drop-popup #availability-form,
#aval .filter #availability {
  align-items: center;
  width: 100%;
}

.villa-drop-popup #availability-form .select,
#aval .filter #availability .select {
  width: 376px;
}

.villa-drop-popup #availability-form .selectCustom-options,
#aval .filter #availability .selectCustom-options {
  line-height: 1.5;
}

.villa-drop-popup #availability-form .selectCustom-options .selectCustom-option,
#aval .filter #availability .selectCustom-options .selectCustom-option {
  padding-left: 4px;
}

#aval .holder .filter .btn-holder .clear-btn,
.villa-drop-popup #availability-form .btn-holder .clear-btn,
#aval .filter #availability .btn-holder .clear-btn {
  background: transparent;
  border: 1px solid #3A4032;
  color: #3A4032;
  padding-top: 4px;
}

#aval .filter #availability .btn-holder .btn:hover {
  color: #fff;
  background-color: #3A4032;
}

@media(max-width: 992px) {

  .villa-drop-popup #availability-form .select,
  #aval .filter #availability .select {
    width: 320px;
  }
}

@media(max-width: 768px) {

  .villa-drop-popup #availability-form .select,
  #aval .filter #availability .select {
    width: 230px;
  }
}

@media(max-width: 575px) {

  .filter .btn-holder,
  .villa-drop-popup #availability-form .btn-holder,
  #aval .filter #availability .btn-holder {
    /* flex-direction: column; */
    align-items: center;
  }

  .villa-drop-popup #availability-form .btn-holder,
  #aval .filter #availability .btn-holder {
    margin-top: 50px;
  }

  .villa-drop-popup #availability-form .btn-holder .btn,
  #aval .filter #availability .btn-holder .btn {
    margin-top: 0;
    width: 136px;
    min-width: unset;
  }

  .filter .btn-holder {
    gap: 16px;
  }

  .filter .btn-holder .btn {
    margin-left: 0;
    margin-right: 0;
    width: 136px;
    min-width: unset;
  }

  .tab-headings {
    display: flex;
    justify-content: space-between;
  }
}

/* .availability {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 15;
} */

.avai .mobile-intro .view-options {
  display: flex;
  gap: 8px;
  margin-top: 16px;
}

.avai .mobile-intro .view-options>* {
  line-height: 2;
}

.avai .mobile-intro .search-again-btn {
  cursor: pointer;
}

.avai .mobile-intro .search-again-btn.active,
.avai .mobile-intro .view-results.active {
  border-bottom: 1px solid #5F5F5F;
}

#aval .filter {
  background-color: #F2F2ED !important;
}

/* NEW SINGLE PROPERTY STYLING */
.single-property .top-bar {
  text-align: center;
  padding: 2.5rem 0;
}

.single-property main .contain .top-bar .left h1 {
  font-size: 25px;
  letter-spacing: 3px;
  color: #3A4032;
  text-transform: uppercase;
}

.single-property main .contain .top-bar .right {
  font-size: 16px;
  letter-spacing: 0.05em;
  color: #3A4032;
  margin: 1.5rem 0;
}

.single-property main .contain .top-bar .right p {
  line-height: 2;
  margin: 0;
}

.tabs .tab-wrapper {
  width: 100%;
  display: flex;
  justify-content: space-between;
  max-width: 90%;
  margin: auto;
}

.tabs .tab-wrapper label {
  padding: 0.5rem 2rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tabs .tab-wrapper label:last-child {
  background-color: #3A4032;
  color: #EAE3DF;
  padding: 0.5rem 1rem;
  margin: 0;
  min-width: 182px;
  justify-content: center;
}

@media(max-width: 768px){
  .tabs .tab-wrapper label {
    padding: 8px 10px;
  }

  .tabs .tab-wrapper label:last-child {
    padding: 8px 10px;
    min-width: unset;
  }
}

.tabs div .tab-wrapper input:not(:last-of-type):checked+label,
.tabs div .tab-wrapper input:not(:last-of-type):hover+label {
  background-color: #EAE3DF;
}

.tabs div .tab-flex {
  display: flex !important;
  height: fit-content;
  padding: 40px 0 0;
}

.tabs div .tab-item {
  flex-direction: column;
}

.tabs div .tab-item h5,
.tabs div .tab-item p {
  font-size: 16px;
  line-height: 28px;
  color: #5F5F5F;
}

.tabs div .tab-item p {
  color: #3A4032;
}

/* .tabs div .tab-item p:not(:last-of-type):not(:first-of-type) {
  margin: 0;
} */

.tabs div .tab-item p:not(:first-of-type) {
  margin-top: 0;
}

.tabs div .tab-item h5 {
  font-weight: 700;
}

.tabs div .tab-item h5:not(:first-of-type) {
  margin-bottom: 1.5rem;
}

.tabs div .content-image .mob-only {
  display: none;
}

.tabs div .content-image .top {
  display: flex;
  gap: 24px;
  margin: 40px 0;
}

@media(max-width: 575px){
  .tabs div .content-image .top {
    margin: 16px 0;
  }
}

.tabs div .content-image .top .tab-slider {
  overflow: hidden;
}

.tabs div .content-image .top .tab-slider .slick-arrow {
  position: absolute;
  height: 32px;
  width: 54px;
  left: 30px;
  top: calc(50% - 24px);
  color: transparent;
  background-image: url('../../images/left-chevron.svg');
  background-size: contain;
  background-repeat: no-repeat;
  border: none;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.tabs div .content-image .top .tab-slider .slick-next {
  right: 30px;
  left: unset;
  transform: rotate(180deg);
}

@media (max-width: 575px) {

  .tabs div .content-image .top .tab-slider .slick-prev,
  .tabs div .content-image .top .tab-slider .slick-next {
    top: 0;
    bottom: 0;
    background-image: none;
    height: 100%;
    width: 8%;
    opacity: 0.5;
  }

  .tabs div .content-image .top .tab-slider .slick-prev {
    left: 0;
  }

  .tabs div .content-image .top .tab-slider .slick-next {
    right: 0;
  }
}

/* @media (max-width: 575px) {
  .tabs div .content-image .top .tab-slider {
    display: none;
  }
} */
.tabs div .content-image .top img {
  width: calc(50% - 24px);
  height: 346px;
  object-fit: cover;
}

.tabs div .content-image .top .slide img {
  width: calc(100% - 24px);
  /* width: unset; */
  height: 346px;
  object-fit: cover;
}

.tabs div .tab-item .features-list {
  margin-top: 1.5rem;
}

.tabs div .tab-item #map {
  margin: 1.5rem 0;
}

main .contain h1,
main .contain h2,
main .contain h3,
main .contain h4,
main .contain h5 {
  color: #3A4032;
}

.link-tiles h4 {
  text-align: center;
  font-size: 22px;
  letter-spacing: 0.1em;
  margin: 28px 0 !important;
}

@media (max-width: 768px) {
  /* .tabs .tab-wrapper {
    justify-content: space-between;
  } */

  .tabs div .tab-flex {
    display: column !important;
    padding: 16px 0 0;
  }

  /*
  .tabs .tab-wrapper label[for="tab-4"] {
    display: none;
  } */

  .tabs .tab-wrapper label[data-name="features"] {
    display: none;
  }

  .tabs .tab-wrapper label:last-child {
    padding: 0.5rem;
  }

  .tabs div input+label {
    margin-right: 0;
  }
}

@media (max-width: 575px) {
  .single-property #hero {
    max-height: 24rem;
  }

  .single-property main .contain .top-bar .left h1 {
    font-size: 16px;
    letter-spacing: 3px;
    font-weight: 400;
    font-family: Terfens;
  }

  .single-property main .contain .top-bar .right {
    font-size: 11px;
  }

  .single-property main .contain .top-bar .right span {
    margin: 0px 0;
  }

  .tabs .tab-wrapper {
    flex-wrap: wrap;
    /*justify-content: center;*/
    min-width: 100%;
  }

  .tabs .tab-wrapper label {
    font-size: 11px;
    padding: 0.5rem 0.5rem;
    line-height: 1.5;
  }

  /* .tabs div .tab-item {
    padding: 16px 0 0;
  } */

  .tabs div .tab-item h5,
  .tabs div .tab-item p {
    font-size: 13px;
    line-height: 23px;
    margin: 1rem 0;
  }

  /*
  .tabs div .tab-item p {
    margin: 0.5rem 0;
  } */

  /* .tabs div .content-image .top {
    display: none;
  } */

  /* .tabs div .content-image .mob-only { */
  .tabs div .content-image .top .tab-slider {
    display: block;
    width: 100vw;
    /* margin: 24px 0 24px -24px; */
    margin: 24px -24px;
  }

  /* .tabs div .content-image .mob-only img { */
  .tabs div .content-image .top .tab-slider img {
    width: 100%;
    height: 346px;
    object-fit: cover;
  }

  .tabs div .content-image .mob-only .carousel-item {
    pointer-events: none;
  }

  .tabs div .tab-item #map {
    max-width: 100vw;
    margin-left: -24px;
  }

  .single-property main .contain .features>div>div ul {
    gap: 0;
  }

  .single-property main .contain .features>div>div ul li span {
    font-size: 12px;
  }

  .single-property main .contain .features>div>div ul li>div > div img{
    width: 75px;
    height: 75px;
  }

  .link-tiles h4 {
    font-size: 18px;
    margin: 8px 0 !important;
  }

  #form-anchor {
    padding: 0;
  }

  #form-anchor.form {
    padding: 0 1.5rem;
  }
}

@media (max-width: 375px) {
  .tabs .tab-wrapper label {
    padding: 0.5rem 5px;
  }

  .tabs .tab-wrapper label:last-child {
    padding: 0.5rem 5px;
  }
}

/* More amends 14/02/23 */
.crumbs-search .right .villa-drop {
  width: 150px;
}

.crumbs-search .right .villa-drop span {
  width: inherit;
  display: block;
}

.villa-drop-popup {
  /* padding: 5rem 0; */
}

.villa-drop-popup .searchandfilter {
  margin-top: 3rem;
}

.villa-drop-popup .searchandfilter ul li .sf-input-select, #aval .filter .filter-row select {
  background: none;
  margin-bottom: 25px;
  margin-left: 16px;
  display: flex;
  align-items: center;
  cursor: pointer;
  width: 250px;
  font-size: 16px;
  letter-spacing: 4px;
  text-transform: capitalize;
  color: #3A4032;
  position: relative;
  height: fit-content;
  border: none;
  border-bottom: 0.2px solid #3A4032;
  padding-bottom: 1rem;
  appearance: none;
  padding-left: 0;
  margin-left: 0;
}

.villa-drop-popup .searchandfilter ul li select::-ms-expand {
  display: none;
}

.villa-drop-popup .searchandfilter ul li label {
  position: relative;
}

.villa-drop-popup .searchandfilter ul li label::before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 20px;
  height: 20px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  bottom: 38px;
  right: 0px;
}

.villa-drop-popup .searchandfilter ul li .sf-input-select option {
  font-size: 13px;
}


.villa-drop-popup .searchandfilter ul li {
  flex: 1;
}

.villa-drop-popup .searchandfilter .btn-holder {
  display: flex;
  gap: 24px;
}

.villa-drop-popup .searchandfilter .btn-holder input {
  line-height: 48px;
  background-color: #411900;
  color: #F2F2ED;
  border: none;
  border-radius: 32px;
  font-size: 16px;
  font-family: "Terfens", sans-serif;
  letter-spacing: 4px;
  width: 100%;
  padding: 0rem 1rem;
  margin: 20px 0 40px;
  margin-right: 0px;
  margin-left: 0px;
  transition: all ease-in-out 0.5s;
}

.villa-drop-popup .searchandfilter .btn-holder input:hover {
  background: #3A4032;
  color: #F2F2ED;
}

.villa-drop-popup .searchandfilter .btn-holder li:last-child input {
  /*background: #F2F2ED;*/
  /*color: #411900;*/
  &:hover {
    background-color: #3A4032;
    color: #F2F2ED;
  }
}

@media (max-width: 768px) {
  .villa-drop-popup .searchandfilter {
    margin: 0;
  }

  .villa-drop-popup .villa-popup-content {
    /* height: 100%; */
    overflow-y: scroll;
    margin-top: 1.5rem;
  }

  .villa-drop-popup .villa-popup-content,
  .villa-drop-popup .villa-popup-content .searchandfilter,
  .villa-drop-popup .villa-popup-content .searchandfilter ul {
    width: inherit;
  }

  .villa-drop-popup .villa-popup-content .searchandfilter ul {
    padding: 48px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 28px;
  }

  .villa-drop-popup .searchandfilter ul li {
    padding: 0;
  }


  .villa-drop-popup .searchandfilter ul li label {
    width: 100%;
  }

  .villa-drop-popup .searchandfilter ul li .sf-input-select {
    font-size: 16px;
    letter-spacing: 2px;
    /* width: auto; */
    padding-bottom: 0;
    border-bottom: 0.2px solid #37454F42;
    width: 100%;
    /* margin-left: 0;s */
    line-height: 38px;
    height: 36px;
    appearance: none;
    margin: 0;
  }

  .villa-drop-popup .searchandfilter li.sf-field-taxonomy-location,
  .villa-drop-popup .searchandfilter li.sf-field-taxonomy-property_type {
    margin: 0 !important;
  }

  .villa-drop-popup .searchandfilter ul li label::before {
    bottom: 2px;
  }

  .villa-drop-popup .searchandfilter .btn-holder {
    gap: 12px;
  }

  .villa-drop-popup .searchandfilter .btn-holder input {
    font-size: 15px;
    line-height: 38px;
    letter-spacing: 0.15em;
  }

  .villa-drop-popup .searchandfilter .btn-holder li:last-child input {
    background: #411900;
    color: #F2F2ED;
    border: 1px solid transparent;
  }

  .villa-drop-popup a {
    top: 3rem;
    right: 2.5rem;
    width: 48px;
    height: 48px;
    padding: 8px;
    cursor: pointer;
    position: absolute;
    z-index: 16;
  }
  .villa-drop-popup .villa-drop-close {
    width: 12px;
    height: 12px;
  }

  .page-template-properties-template-new .crumbs-search {
    top: 153px;
  }
}

/* ------------------------------------------------------------------------- *
/* COOKIE BANNER */
/* ------------------------------------------------------------------------- */

#CybotCookiebotDialogPoweredbyLink {
  display: none;
}

#CybotCookiebotDialogBodyContentTitle {
  line-height: 1.3rem !important;
  font-size: 14pt !important;
  font-weight: 400 !important;
}

#CybotCookiebotDialogBodyContentTitle,
#CybotCookiebotDialog div,
#CybotCookiebotDialogBodyLevelDetailsWrapper a,
#CybotCookiebotDialog a {
  color: #37454f !important;
  font-family: "Muli", sans-serif !important;
  letter-spacing: 2px !important;
}

a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection,
a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
  background-color: rgb(55, 69, 79) !important;
  border: rgb(55, 69, 79) !important;
  font-family: "Muli", sans-serif !important;
  color: white !important;
  text-transform: uppercase !important;
  width: unset !important;
  padding: 6px 8px !important;
}

#CybotCookiebotDialogBodyLevelDetailsWrapper {
  background-color: unset !important;
}

#CybotCookiebotDialogBodyContent {
  padding: 1rem 2.5rem !important;
}

input[type=checkbox].CybotCookiebotDialogBodyLevelButton+label {
  filter: grayscale(100%);
}

#CybotCookiebotDialog a#CybotCookiebotDialogBodyButtonAccept {
  background-color: #37454f !important;
  border: 1px solid #37454f !important;
  color: #fff !important;
  padding: 8px;
}
#CybotCookiebotDialog a#CybotCookiebotDialogBodyButtonAccept:hover {
  background: #37454fd9 !important;
}
#CybotCookiebotDialog a#CybotCookiebotDialogBodyButtonDecline {
  border: 1px solid rgb(95, 95, 95);
  background: transparent;
  padding: 8px;
  color: rgb(95, 95, 95) !important;
}
#CybotCookiebotDialog a#CybotCookiebotDialogBodyButtonDecline:hover {
  background: #37454f1f !important;
}

@media(min-width: 768px) {
  #CybotCookiebotDialogBody {
    margin-left: 0 !important;
    max-width: 100% !important;
  }

  #CybotCookiebotDialogBodyContent {
    display: flex;
    padding: 24px 24px 8px 24px !important;
    font-size: 14px !important;
  }

  #CybotCookiebotDialogBodyContentTitle {
    width: 100%;
    max-width: 180px;
    margin: 1rem 0.5rem !important;
    margin-top: 8px !important;
  }

  #CybotCookiebotDialogBodyLevelWrapper {
    text-align: left !important;
  }

  #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
    float: none !important;
    margin-left: 15rem !important;
  }

  #CybotCookiebotDialogBodyLevelButtons {
    margin-left: 18vw !important;
    margin-top: 8px !important;
  }

  #CybotCookiebotDialogBodyLevelButtonsSelectPane .CybotCookiebotDialogBodyLevelButtonWrapper {
    border: 1px solid hsl(52, 18%, 84%) !important;
    padding: 2px 12px !important;
  }

  #CybotCookiebotDialogBodyLevelButtonsSelectPane {
    border: none !important;
  }

  #CybotCookiebotDialogBodyLevelButtonsTable {
    width: 100% !important;
  }

  #CybotCookiebotDialogBodyLevelDetailsWrapper {
    display: block !important;
    border-left: 1px solid #cccccc !important;
    margin-top: 4px;
    padding-bottom: 6px !important;
    padding-top: 1px !important;
  }
}

@media(min-width: 1200px) {
  #CybotCookiebotDialogBodyLevelButtons {
    margin-left: 14rem !important;
  }
}

/* 30/06/23 cookie bot amends */

#CybotCookiebotDialogBodyContentTitle {
  display: none !important;
}

#CybotCookiebotDialog p {
  margin: 0 !important;
}

#CybotCookiebotDialogBodyButtonDetails {
  float: unset !important;
  margin: 16px !important;
}

#CybotCookiebotDialogBodyButtons {
  margin: 0 !important;
  padding: 0 !important;
  padding-left: 0px !important;
  padding-left: 12px !important;
}

#CybotCookiebotDialogBodyButtonDetails {
  border: 1px solid #37454f !important;
  padding: 8px !important;
  background-position-x: 108px !important;
  padding-right: 21px !important;
}

#CybotCookiebotDialog p:nth-child(2),#CybotCookiebotDialog p:nth-child(3) {
  display: none;
}

/* 17/02/23 amends */
.search-results .property-content .overlay h2 {
  color: #fff;
}

/* .single-property #hero .carousel-control-prev,
.single-property #hero .carousel-control-next {
  display: none;
} */

@media (max-width: 768px) {
  .single-property #spacer {
    margin-top: 153px;
  }
}

/* Gallery Button */

.gallery-button {
  position: absolute !important;
  right: 25px;
  bottom: 13px;
  width: 167px !important;
  height: 49px !important;
  background-color: #EAE3DF;
  border: none;
  padding: 0.6rem 1rem;
}

@media (max-width: 768px) {
  .gallery-button {
    right: 8px;
    bottom: 8px;
    width: 58px !important;
    padding: 0.7rem 1rem;
  }
}

/* Results Page Search */

.page-template-aval-template .availability {
  position: fixed;
  bottom: 32px;
  width: 100%;
  left: 0;
  right: 0;
  overflow: visible;
  z-index: 1000;
  margin: 0;
  display: flex;
  justify-content: center;
  padding: 0 20px;
}

.page-template-aval-template .availability .wrapper {
  background-color: #EAE3DF;
  border: 1px solid #411900;
  border-radius: 100px;
  padding: 15px 30px;
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

/* Content styling to match original floating form */
.page-template-aval-template .availability .content {
  max-width: 100%;
  padding: 0px 16px;
  margin: auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.page-template-aval-template .availability .content form {
  display: flex;
  align-self: center;
}

.page-template-aval-template .availability .content form .form-fields {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  justify-content: space-between;
}

.page-template-aval-template .availability .content h4 {
  margin: 0rem 1.5rem;
  margin-left: 0;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #3A4032;
  text-transform: uppercase;
  cursor: pointer;
  transition: color 0.2s ease;
}

.page-template-aval-template .availability .content h4:hover {
  color: #411900;
}

/* Form input styling to match original floating form */
.page-template-aval-template .availability .content form input:not([type='checkbox']),
.page-template-aval-template .availability .content form select {
  font-style: italic;
  border: none;
  border-bottom: 1px solid #5f5f5f;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border-radius: 0;
  padding: 8px 0;
  font-size: 16px;
  color: #3A4032;
  font-family: 'Times New Roman';
  outline: none;
  width: 120px;
  height: auto;
  flex: 1;
  max-width: 150px;
  min-width: 100px;
}

.page-template-aval-template .availability .content form .select,
.page-template-aval-template .availability .content form .input {
  position: relative;
}

/* Override the general .availability selector to prevent duplicate arrows on aval-template */
.page-template-aval-template .availability .content form .input:before {
  content: '' !important;
  background-image: url(../../images/arrowdown.svg) !important;
  width: 10px !important;
  height: 6px !important;
  position: absolute !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  bottom: 50% !important;
  right: 8px !important;
  transform: translateY(50%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: 0.7 !important;
}

.page-template-aval-template .availability .content form input::placeholder {
  font-size: 16px;
  color: #37454F;
  opacity: 1;
  font-family: 'Times New Roman';
}

.page-template-aval-template .availability .content form input[type=submit] {
  min-height: 32px;
  margin: 0 0 0 24px;
  border: none;
  border-radius: 32px;
  background-color: #411900;
  font-style: normal;
  padding: 8px 24px;
  text-transform: uppercase;
  font-size: 12px;
  color: #E9E2DE;
  cursor: pointer;
}

.page-template-aval-template .availability .content form input[type=submit]:hover {
  color: #fff;
  background-color: #3A4032;
}

/* Hide checkboxes when floating, show when expanded */
.page-template-aval-template .availability .content form .checkbox {
  display: none !important;
  transition: all 0.3s ease-in-out;
}

.page-template-aval-template .availability.expanded .content form .checkbox {
  display: flex !important;
}

.page-template-aval-template #aval {
  padding-top: 20px;
  padding-bottom: 120px; /* Space for floating form */
}

.page-template-aval-template .availability .wrapper .content .close-button {
  display: none;
}

/* Expanded state when form has 'expanded' class */
.page-template-aval-template .availability.expanded {
  bottom: 0;
  padding: 0;
  justify-content: stretch;
}

.page-template-aval-template .availability.expanded .wrapper {
  border-radius: 0;
  max-width: none;
  width: 100%;
  margin: 0;
}

/* Submit container for button and close button */
.page-template-aval-template .availability .content form .submit-container {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: 24px;
}

/* Add close button for expanded state - positioned next to submit button */
.page-template-aval-template .availability .close-expanded {
  display: none;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 24px;
  color: #411900;
  cursor: pointer;
  z-index: 1006;
}

.page-template-aval-template .availability.expanded .close-expanded {
  display: flex;
  position: relative;
  right: auto;
  top: auto;
  transform: none;
  margin-left: 10px;
  font-size: 24px;
  padding: 0;
  background: none;
  border: 2px solid #411900;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #E9E2DE;
  cursor: pointer;
}


@media(max-width: 768px) {
  .page-template-aval-template .availability .wrapper {
    color: #fff;
    background-color: #37454f;
    border: 1px solid #411900;
    border-radius: 100px;
    padding: 15px 25px;
    max-width: 85%;
    width: 100%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
  }

  .page-template-aval-template .availability .wrapper .content .close-button {
    display: block;
    background-color: transparent;
    position: absolute;
    top: 12px;
    right: 6px;
    border: none;
    color: #fff;
    font-weight: 100;
    font-size: 15px;
  }

  .page-template-aval-template .availability .wrapper .content h4 {
    color: #fff;
    padding-top: 0;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 1rem 0;
  }

  .page-template-aval-template .availability .wrapper .close-avail {
    min-height: 53px;
    position: relative;
    border: none;
    background-color: transparent;
    font-style: normal;
    padding: 0;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 0.2em;
    color: #fff;
    min-width: 100%;
    top: 2px;
  }

  .page-template-aval-template .availability .wrapper .close-avail:after {
    content: '+';
    width: 24px;
    height: 24px;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    color: #fff;
    font-size: 18px;
    cursor: pointer;
    margin-right: 16px;
  }

  .page-template-aval-template .availability .content {
    padding: 0;
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 2;
    background-color: #3A4032;
    color: #fff;
    display: flex;
    flex-direction: column;
    border-radius: 100px;
  }

  /* Hide checkboxes when floating on mobile, show when expanded */
  .page-template-aval-template .availability .content form .checkbox {
    display: none !important;
    transition: all 0.3s ease-in-out;
  }

  .page-template-aval-template .availability.expanded .content form .checkbox {
    display: flex !important;
  }

  /* Expanded state on mobile when form has 'expanded' class */
  .page-template-aval-template .availability.expanded {
    bottom: 0;
    padding: 0;
    justify-content: stretch;
  }

  .page-template-aval-template .availability.expanded .wrapper {
    border-radius: 0;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  /* Close button for mobile expanded state */
  .page-template-aval-template .availability .close-expanded {
    display: none;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 20px;
    color: #411900;
    cursor: pointer;
    z-index: 1006;
  }

  .page-template-aval-template .availability.expanded .close-expanded {
    display: flex;
    position: relative;
    right: auto;
    top: auto;
    transform: none;
    margin-left: 10px;
    font-size: 20px;
    padding: 0;
    background: none;
    border: 2px solid #411900;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: #E9E2DE;
    cursor: pointer;
  }

  .page-template-aval-template .breadcrumbs {
    top: 152px;
  }

  .availability .content form {
    padding: 16px 0 80px;
  }


  .availability .content form .form-fields {
    flex-direction: column;
    gap: 0.75rem;
    padding: 0px 0 32px;
    align-items: flex-start;
    margin: auto;
  }

  .availability .content.show {
    max-height: 50rem;
  }

  /* .availability .content .selectCustom-trigger {
    color: #fff;
  } */

  .availability .content form input:not([type="checkbox"]),
  .availability .content form select {
    color: #fff;
  }

  .availability .content form .input:before {
    display: none;
  }

  .availability .content form .select .selectCustom-option {
    font-size: 16px;
    color: #3A4032;
  }

  .availability .content form .select .selectCustom-option:hover {
    font-size: 16px;
    color: #fff;
  }

  .availability .content form .select::before,
  .availability .content form .input:before {
    display: none;
  }

  .availability .content form input:not([type="checkbox"]),
  .availability .content form select {
    border-color: #fff;
  }

  .availability .content form input {
    min-width: unset;
  }

  .availability .content form .checkbox label {
    margin-bottom: 8px;
    color: #fff;
  }

  .availability .content form input[type="submit"] {
    height: 100%;
    min-width: 215px;
    min-height: 32px;
    padding: 2px 16px;
    text-transform: capitalize;
    font-weight: 400;
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #3A4032;
    font-family: 'Times New Roman';
    background-color: rgb(217, 217, 217);
    border: 1px solid rgb(95, 95, 95);
  }

  .availability .content form input[type="submit"]:hover {
    color: #fff;
    border: 1px solid rgb(95, 95, 95);
    background-color: transparent;
  }

  .availability .content form input,
  .availability .content form select {
    min-width: unset;
  }

  .availability .content form .checkbox {
    max-width: 144px;
  }

}

/* Letting page form */
@media (max-width: 575px) {
  .page-id-16306 #form-anchor {
    padding: 0 1.5rem;
  }
}

/* Enquire form padding */
.page-id-17043 #form-anchor {
  max-width: 1600px;
  margin: auto;
}

.page-id-17043 #form-anchor .contain {
  padding-left: 10%;
  padding-right: 10%;
}

/* Single property link tiles slick slider */
.single-property .link-tiles .slick-track {
  display: flex;
}
.single-property .link-tiles .slick-list .tile {
  min-width: unset;
}

.single-property .link-tiles .slick-arrow {
  position: absolute;
  height: 40px;
  width: 40px;
  left: -2rem;
  top: calc(50% - 24px);
  color: transparent;
  background-image: url(../../images/left-chevron.svg);
  background-size: 18px;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px solid white;
  border-radius: 100px;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.single-property .link-tiles .slick-next {
  right: -2rem;
  left: unset;
  transform: rotate(180deg);
}

.single-property .link-tiles .mobile-tiles {
  display: none;
}

@media (max-width: 992px) {
  .single-property .link-tiles .slick-arrow {
    background-image: url(../../images/left-chevron-white.svg);
    left: 16px;
  }
  .single-property .link-tiles .slick-next {
    right: 16px;
    left: unset;
  }
  .link-tiles .tile h2 {
    /*padding: 15px 32px;*/
  }
  .single-property .link-tiles .tiles {
    display: none;
  }
  .single-property .link-tiles .mobile-tiles {
    display: block;
  }
}


@media (max-width: 575px) {
  .single-property .link-tiles .slick-list, .single-property .link-tiles .slick-track {
    width: 100%;
  }
}

.bedroom-class {
  display: none;
}

/* single property hero lightbox */
.single-property .slick-lightbox .slick-arrow {
  transform: translateY(-50%);
  position: absolute;
  height: 60px;
  width: 60px;
  left: 30px;
  top: 50%;
  color: transparent;
  background-image: url(../../images/arrow-white.svg);
  background-position: center;
  background-repeat: no-repeat;
  border: none;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.single-property .slick-lightbox .slick-arrow:hover {
  opacity: 0.5;
}

.single-property .slick-lightbox .slick-next {
  right: 30px;
  left: unset;
  transform: translateY(-50%) rotate(180deg);
}

@media (max-width: 575px) {
  .single-property .slick-lightbox .slick-arrow {
    /* top: 50%; */
  }
  .single-property .slick-lightbox .slick-next {
    right: 8px;
  }
  .single-property .slick-lightbox .slick-prev {
    left: 8px;
  }
}

/* Single Property Flickity Slider */

.gallery {
  margin-top: 40px;
  margin-bottom: 40px;
}

.gallery > div .gallery-slider-property {
  display: flex;
  gap: 5px;
}

.gallery > div .gallery-slider-property figure{
  flex: 1;
}

.gallery > div .gallery-slider-property .gallery-img img {
  height: 400px;
  width: 100%;
  object-fit: cover;
}

@media (max-width: 768px) {
  .gallery > div .gallery-slider-property {
    flex-direction: column;
  }

  .gallery > div .gallery-slider-property .gallery-img{
    height: 346px;
  }

  .gallery > div .gallery-slider-property .gallery-img img {
    height: 346px;
    width: 100%;
    object-fit: cover;
  }
}

.gallery > div .gallery-slider .flickity-viewport {
  height: 346px !important;
}

.gallery > div .gallery-slider .flickity-viewport .gallery-img {
  height: 100%;
  width: 50%;
  cursor: default;
}

@media (max-width: 575px) {
  .gallery > div .gallery-slider .flickity-viewport .gallery-img {
    width: 100%;
  }

  .gallery > div .gallery-slider .flickity-viewport .gallery-img > img {
    width: 100% !important;
  }

  .gallery > div .gallery-slider .flickity-button {
    top: 0;
    bottom: 0;
    background-image: none !important;
    border: none !important;
    height: 100%;
    width: 8%;
    opacity: 0.5;
  }
}

.gallery > div .gallery-slider .flickity-viewport .gallery-img > img {
  height: 346px;
  object-fit: cover;
  width: calc(100% - 24px);
}

.gallery > div .gallery-slider .flickity-button {
  position: absolute;
  height: 40px;
  width: 40px;
  left: 30px;
  top: calc(50% - 24px);
  color: transparent;
  background-image: url(../../images/left-chevron-white.svg);
  background-size: 18px;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid white;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
  transform: translateY(0);
}

.gallery > div .gallery-slider .flickity-button:hover {
  background-color: #3A4032;
}

.gallery > div .gallery-slider .flickity-button:focus {
  box-shadow: none;
}

.gallery > div .gallery-slider .flickity-button.next {
  right: 55px;
  left: unset;
  margin: 0;
  transform: rotate(180deg);
}

.gallery > div .gallery-slider .flickity-page-dots {
  display: none;
}

/* ALL ESCAPES MAP VIEW */
.page-template-properties-template-new .tabs {
  padding-top: 10px;
}
.page-template-properties-template-new .tabs div .tab-item.tab-flex {
  overflow: inherit;
  padding-top: 24px;
}
.page-template-properties-template-new .tabs div {
  text-align: center;
}
.page-template-properties-template-new .tabs .tab-wrapper {
  justify-content: flex-start;
  gap: 20px;
  max-width: unset;
  padding-right: 120px;
  padding-left: 120px;
}

@media(max-width: 768px) {
  .page-template-properties-template-new .tabs .tab-wrapper {
    padding-right: 8px;
    padding-left: 8px;
  }
}
.page-template-properties-template-new .tabs div .tab-item .right {
  flex: initial;
}
.page-template-properties-template-new .tabs .tab-wrapper label:last-child {
  background-color: #411900;
  color: #F2F2ED;
}

.page-template-properties-template-new .tabs div .tab-wrapper input:checked + label {
  background-color: #411900;
  display: block;
}

/* .page-template-properties-template-new .tabs div .tab-wrapper input:checked + label, .tabs div input + label {
  background-color: #411900 !important;
  display: block;
  color: #F2F2ED !important;
  border-radius: 25px !important;
  text-transform: uppercase !important;
  font-family: "Terfens", sans-serif;
} */

.page-template-properties-template-new .tabs div .tab-wrapper input:hover + label {
  background-color: #3A4032;
  color: #F2F2ED;
}

.page-template-properties-template-new .tabs div input + label {
  margin: 0;
}
.page-template-properties-template-new #map {
  height: 1536px;
  height: 496px;
}
.page-template-properties-template-new #map.overlay {
  /* opacity: 0.5; */
}
.page-template-properties-template-new #map.overlay .map-popup {
  /* background-color: red; */
}
.page-template-properties-template-new .map_container {
  margin: 0;
  padding: 0;
}
.page-template-properties-template-new .gm-style-iw {
  background-color: #F2F2ED;
  padding-bottom: 10px !important;
  padding-right: 10px !important;
}
.gm-style .gm-style-iw-tc::after {
  background-color: #F2F2ED;
}
.page-template-properties-template-new .gm-style-iw .gm-style-iw-d,
.page-template-properties-template-new .gm-style-iw-chr {
  background-color: #F2F2ED;
  overflow: hidden !important;
}
.page-template-properties-template-new .gm-style-iw .map-popup {
  flex-direction: row;
}
.page-template-properties-template-new .gm-style-iw .map-popup img {
  height: 246px;
  width: 200px;
}
.page-template-properties-template-new .gm-style-iw .property-info {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 240px;
  overflow: hidden;
}
.page-template-properties-template-new .gm-style-iw .property-info h1 {
  color: #3A4032;
  font-family: Muli;
  font-size: 16px;
  line-height: 28.8px;
  letter-spacing: 1.8px;
  margin-bottom: 0px;
  font-family: Terfens;
  text-transform: uppercase;
}
.page-template-properties-template-new .gm-style-iw .property-info p {
  font-size: 14px;
  margin: 4px 0;
  font-family: Warbler;
}
.page-template-properties-template-new .gm-style-iw .property-info a {
  color: #F2F2ED;
  font-family: Terfens;
  height: auto;
  font-size: 12px;
  letter-spacing: 3px;
  display: flex;
  height: 32px;
  min-width: 145px;
  min-height: unset;
  justify-content: center;
  align-items: center;
  background: #411900;
  border: 0;
  border-radius: 50px;
}
.page-template-properties-template-new .gm-style-iw .property-info a:hover {
  background-color: #3A4032;
}
.page-template-properties-template-new .gm-style-iw .overlay {
  background: rgba(0,0,0,0.2);
  position: fixed;
  height: 100vw;
  width: 200px;
}

@media (max-width: 768px) {
  .page-template-properties-template-new .tabs div .tab-item .right {
    margin: 0;
  }
}
@media (max-width: 575px) {
  .page-template-properties-template-new div .tabs .tab-wrapper label {
    font-size: 12px;
    text-transform: uppercase;
  }
  .page-template-properties-template-new .tabs {
    padding: 20px 0 1.25rem 0;
  }
  .page-template-properties-template-new div .tab-item #map {
    height: 522px;
    margin-left: 0;
    margin-top: 0;
  }
  .page-template-properties-template-new .gm-style-iw.gm-style-iw-c .map-popup {
    flex-direction: column;
  }
  .page-template-properties-template-new .gm-style-iw .map-popup img {
    height: 177px;
    width: 100%;
    object-fit: cover;
  }
  .page-template-properties-template-new .gm-style-iw.gm-style-iw-c {
    max-width: calc(100vw - 100px) !important;
    max-height: 400px !important;
  }
  .page-template-properties-template-new .gm-style-iw.gm-style-iw-c .map-content {
    width: fit-content;
  }
  .page-template-properties-template-new .gm-style-iw .property-info {
    max-width: unset;
  }
  .page-template-properties-template-new .gm-style-iw .property-info p {
    margin: 0;
  }
  .page-template-properties-template-new .gm-style-iw .map-popup .gm-ui-hover-effect {
  top: -6px;
  }
  .page-template-properties-template-new .crumbs-search {
    margin-top: 0;
  }
}

/* Hero styling - 09/2025 */

#hero {
  padding: 20px 120px;
  height: calc(100vh - 153px);
}

@media (max-width: 768px) {
  #hero {
    padding: 20px;
    height: 60vh;
  }
}

@media(max-width: 410px) {
  header .navbar .header-icons .searchandfilter.appear {
    width: 160px;
  }
  header .navbar .header-icons .searchandfilter input {
    min-width: 160px;
  }
}

#hero.video-hero {
  position: relative;
  height: calc(100vh - 173px);
  padding: 0 120px 20px;
}

.home #hero.video-hero {
  height: revert !important;
}


.vimeo-wrapper {
  position: relative;
  /* width: calc(100% - 96px); */
  width: 100%;
  margin: 0 auto; /* center the video */
  padding-top: 56.25%; /* 16:9 aspect ratio (height / width * 100%) */
}
.vimeo-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 52px;
  height: 52px;
  background-color: rgba(255, 255, 255, 0.8); /* Semi-transparent white */
  border-radius: 50%;
  cursor: pointer;
}
.play-button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%);
  border-style: solid;
  border-width: 14px 0 14px 20px;
  border-color: transparent transparent transparent #000; /* Play button triangle color */
}
.play-button.pause::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 64%;
  transform: translate(-50%, -50%);
  width: 8px; /* Adjust the width of the lines */
  height: 24px;
  background-color: #000; /* Color of the lines */
  border-radius: 2px; /* Round the edges of the lines */
  border-style: initial;
}
.play-button.pause::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 54%;
  transform: translate(-50%, -50%) translateX(-8px); /* Adjust the spacing between the lines */
  width: 8px; /* Adjust the width of the lines */
  height: 24px;
  background-color: #000; /* Color of the lines */
  border-radius: 2px; /* Round the edges of the lines */
}
@media only screen and (max-width: 768px) {
  #hero.video-hero {
    position: relative;
    padding: 20px 25px;
    height: 60vh;
    margin-top: 140px;
  }
  #hero.video-hero > .video {
    height: 100vh;
		width: 100%;
		overflow: hidden;
  }
  #hero .vimeo-wrapper {
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: relative;
    padding-bottom: 85%;
    height: 100%;
    width: 100%;
  }

  #hero .vimeo-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-width: 177.77vh;
    position: absolute;
    left: 50%;
    top: 0%;
    transform: translate(-50%, 0%);
    min-height: 640px;
    overflow: hidden;
  }
}

/* New property Single */

.single-property .sleeps {
  display: flex;
  justify-content: center;
}

.single-property .sleeps div{
  margin-left: 8px;
  line-height: 2;
  padding-left: 8px;
  position: relative;
}

.single-property .sleeps div:before{
  position: absolute;
  content: '';
  left: 0;
  top: calc(50% - 6px);
  height: 16px;
  width: 1px;
  background-color: #5F5F5F;
}

@media(max-width: 575px){
  .single-property .sleeps div:before{
    top: calc(50% - 8px);
  }
}

.single-property .floorplan {
  margin-bottom: 35px;
}

.single-property .floorplan .btn {
  height: 40px;
  letter-spacing: 3px;
  min-width: 180px;
  font-size: 15px;
  line-height: normal;
  padding: 12px 32px;
}



@media(max-width: 575px){
  .single-property .floorplan {
    margin-bottom: 20px;
  }

  .single-property .floorplan .btn {
    font-size: 14px;
    min-width: 150px;
    min-height: 31px;
    padding: 14px 20px;
    margin: 0.5rem;
  }
}

.single-property .book-now-btn .mob-title {
  display: none;
}

@media(max-width: 768px){
  .single-property .book-now-btn span{
    display: none;
  }

  .single-property .book-now-btn .mob-title {
    display: inline;
  }
}

.tabs .features > div {
  margin-top: 40px;
}

.tabs .features .title{
  font-weight: bold;
}

.tabs .features ul {
  list-style: none;
}


.tabs .features ul .feat-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}

.tabs .features ul li {
  width: 210px;
  display: flex;
  justify-content: center;
  align-content: center;
}

.tabs .features ul li > div{
  display: flex;
  justify-content: center;
  align-content: center;
  flex-direction: column;
  text-align: center;
}

.tabs .features ul li > div > div{
  text-align: center;
}

.features-list.mobile {
  display: none;
}

@media(max-width: 575px){
  .features-list {
    display: none;
  }

  .features-list.mobile {
    display: block;
  }

  .features-list.mobile ul {
    padding-left: 0;
  }

  .tabs .features ul .feat-row {
    margin-bottom: 16px;
  }
}

.single-property .gallery-block .block {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(8, 5vw);
  grid-gap: 8px;
  margin: 8px 0;
}

@media (max-width: 992px) {
  .single-property .gallery-block .block {
    display: flex;
    flex-wrap: wrap;
  }
}

.single-property .gallery-block .block .item > a img{
  height: 100%;
  width: 100%;
  object-fit: cover;
}

@media (max-width: 992px) {
  .single-property .gallery-block .block .item {
    width: calc(100% - 8px);
    min-height: 350px;
    margin: 4px;
  }
}

@media (max-width: 575px) {
  .single-property .gallery-block .block .item {
    width: calc(100% - 8px);
    min-height: 300px;
  }
}

.single-property .gallery-block .block.by-1,
.single-property .gallery-block .block.by-2 {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 5vw);
}

.single-property .gallery-block .block.by-1 .item:first-child,
.single-property .gallery-block .block.by-2 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 6;
}

.single-property .gallery-block .block.by-1 .item:nth-child(2),
.single-property .gallery-block .block.by-2 .item:nth-child(2) {
  grid-column-start: 7;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 6;
}

@media (max-width: 992px) {
  .single-property .gallery-block .block.by-1 .item {
    width: calc(100% - 16px);
  }
}

.single-property .gallery-block .block.by-3 .item:first-child,
.single-property .gallery-block .block.by-4 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}

.single-property .gallery-block .block.by-3 .item:nth-child(2),
.single-property .gallery-block .block.by-4 .item:nth-child(2) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 5;
}

.single-property .gallery-block .block.by-3 .item:nth-child(3),
.single-property .gallery-block .block.by-4 .item:nth-child(3) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 5;
  grid-row-end: 9;
}

.single-property .gallery-block .block.by-3 .item:nth-child(4),
.single-property .gallery-block .block.by-4 .item:nth-child(4) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .single-property .gallery-block .block.by-3 .item:nth-child(3) {
    width: calc(100% - 16px);
  }
}

.single-property .gallery-block .block.by-5 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.single-property .gallery-block .block.by-5 .item:nth-child(2) {
  grid-column-start: 5;
  grid-column-end: 8;
  grid-row-start: 1;
  grid-row-end: 5;
}

.single-property .gallery-block .block.by-5 .item:nth-child(3) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 5;
  grid-row-end: 9;
}

.single-property .gallery-block .block.by-5 .item:nth-child(4) {
  grid-column-start: 8;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 5;
}

.single-property .gallery-block .block.by-5 .item:nth-child(5) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 5;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .page-template-properties-template main .contain .property-loop .block.by-5 .item:nth-child(5) {
    width: calc(100% - 8px);
  }
}

@media (max-width: 575px) {
  .single-property .content-image.location-ver > div {
    display: flex;
    flex-direction: column-reverse;
  }
}

.tabs {
  margin-bottom: 40px;
}

@media (max-width: 768px) {
  .tabs {
    margin-bottom: 20px;
  }
}

.single-property .gallery-button {
  display: none;
}

@media (max-width: 575px) {
  .single-property .gallery-button {
    display: block;
  }
}

/* Rates Availability Anchor Tag Buttons Nov 2024 */

.widget-area:has(.location-buttons) {
  padding: 0 120px 64px;
}

@media (max-width: 768px) {
  .widget-area:has(.location-buttons) {
    padding: 0 20px 40px;
  }
}

.location-buttons {
  /*text-align: center;*/
  padding-bottom: 1.5rem;
}

.location-buttons > .btn {
  font-size: 12px;
  text-align: center;
  margin: 0.3rem;
  min-width: unset;
  min-height: unset;
}

.widget-area:has(.location-buttons) h3 {
  scroll-margin-top: 150px;
}

/* Dropdown for mobile */

@media (max-width: 400px) {
  .location-select {
    display: block !important;
  }
  .location-buttons {
    display: none;
  }
}

.location-select {
  display: none;
  position: relative;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  border-bottom: 1px solid #5f5f5f;
}

/* Arrow */
.location-select::before {
  content: '';
  background-image: url(../../images/arrowdown.svg);
  width: 17px;
  height: 9px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  top: 6px;
  right: 0px;
  z-index: 1;
  pointer-events: none;
}

.location-select select {
  appearance: none;
  border: none;
  width: 200px;
  font-size: 16px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #3A4032;
  padding-bottom: 0.5rem;
  background: transparent;
}

/* New Single Hero */

.single-property #hero.video-hero {
  position: relative;
  height: calc(100vh - 152px);
  overflow: hidden;
  margin-top: 152px;
  padding: 0 !important;
}

/* .single-property #spacer {
  margin-top: 152px;
} */

.page-template-properties-template-new .tabs .carousel-item{
  cursor: unset;
}

.page-template-properties-template-new .carousel-control-prev, .page-template-properties-template-new .carousel-control-next {
  cursor: pointer;
  opacity: 1 !important;
  height: 40px;
  width: 40px;
  top: 50%;
  border: 1px solid white;
  border-radius: 100px;
  margin: 0 10px;
}

.page-template-properties-template-new .carousel-control-prev:hover, .page-template-properties-template-new .carousel-control-next:hover {
  background-color: #3A4032;
}

.page-template-properties-template-new .carousel-control-prev img, .page-template-properties-template-new .carousel-control-next img {
  opacity: 1;
  position: sticky;
  height: 16px;
}

/* Single Property Edits */

.single-property .buttons {
  display: flex;
  justify-content: center;
}

.single-property .buttons .book-now-btn {
  padding: 12px 32px;
  color: #411900;
  margin: 0.5rem 0.8rem;
  min-width: 182px;
  height: 40px;
  align-content: center;

  @media (max-width: 575px) {
    padding: 6px 8px;
    min-width: 140px;
    min-height: 31px;
    margin: 0.5rem;
  }

  &:hover {
    cursor: pointer;
    background-color: #3A4032;
    color: #F2F2ED;
    border: 1px solid #3A4032;
  }
}

.single-property .buttons .book-now-btn:hover h4 {
  color: #F2F2ED;
}

.single-property .buttons .book-now-btn h4 {
  font-size: 15px;
  @media (max-width: 575px) {
    font-size: 14px;
    padding-top: 3px;
  }
}

.single-property .review-block {
  display: grid;
}

.single-property .review-block .block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding-left: unset;
}

.single-property .review-block .item {
  background: #EAE3DF;
  list-style: none;
  padding: 32px;
}

.single-property .review-block .item .review {
  font-style: italic;
}

.single-property .review-block .item .review-details {
  display: flex;
  justify-content: space-between;
}

.single-property .review-block .item .review-details .name {
  font-weight: 600;
  margin: 0;
}

.single-property .review-block .item .review-details .date {
  font-size: 14px;
}

.single-property .review-block .item .review-details img {
  height: 32px;
  width: 32px;
  margin-top: auto;
}

.single-property .review-block .read-all-btn {
  display: inline-block;
  letter-spacing: 1.6px;
  padding: 8px 16px;
  justify-self: center;
  margin-top: 32px;

  &:hover {
    background-color: #3A4032;
    color: #F2F2ED;
  }
}

.single-property .tabs .tab-wrapper label:last-child {
  background-color: transparent;
  color: #5F5F5F;
}

.single-property .tabs .tab-wrapper input:checked+label,
.single-property .tabs .tab-wrapper label:last-child:hover {
  background-color: #EAE3DF;
  color: #5F5F5F;
}

/* Smaller Screens */

@media(max-width: 768px) {
  .single-property .review-block .block {
    display: block;
  }

  .single-property .review-block .item {
    margin-bottom: 20px;

    &:nth-child(6) {
      margin-bottom: 0;
    }
  }
}

/* Reviews Overlay and Content */

body.review-overlay-open {
  overflow: hidden;
}

.single-property .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  overflow-y: auto;
  padding: 2rem;
  box-sizing: border-box;
}

.single-property .overlay-content {
  background: #fff;
  max-width: 800px;
  margin: 2rem auto;
  position: relative;
}

.single-property .overlay-content .overlay-top {
  padding: 24px 48px;
  border-bottom: 0.2px solid #3A4032;
}

.single-property .close-overlay {
  position: absolute;
  top: 20px;
  right: 24px;
  background: transparent;
  border: none;
  font-size: 2rem;
  cursor: pointer;
}

.single-property .overlay ul.all-reviews {
  list-style: none;
  padding: 32px 48px;
}

.single-property .overlay .overlay-content .item {
  background: #EAE3DF;
  padding: 32px;
  margin-bottom: 24px;

  &:last-child {
    margin-bottom: 0;
  }
}

.single-property .overlay .overlay-content .item .review {
  font-style: italic;
}

.single-property .overlay .overlay-content .item .review-details {
  display: flex;
  justify-content: space-between;
}

.single-property .overlay .overlay-content .item .review-details .name {
  font-weight: 600;
  margin: 0;
}

.single-property .overlay .overlay-content .item .review-details .date {
  font-size: 14px;
  margin: 0;
}

.single-property .overlay .overlay-content .item .review-details img {
  height: 32px;
  width: 32px;
  margin-top: auto;
}

/* Smaller Screens */

@media(max-width: 768px) {
  .single-property .overlay {
    padding: 0;
  }

  .single-property .overlay-content {
    margin: 0;
  }

  .single-property .overlay-content .overlay-top {
    padding: 24px;
  }

  .single-property .overlay ul.all-reviews {
    padding: 20px 24px;
  }
}

/* New Local Area Tab */
.single-property .tabs .tab-wrapper {
  position: relative;
}

.single-property .tabs .tab-wrapper::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1px;
  background-color: #411900;
}

.single-property .tabs .tab-wrapper input:checked+label {
  position: relative;
  background-color: transparent !important;
}

.single-property .tabs .tab-wrapper input:checked+label::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #411900;
  z-index: 1;
}

.single-property .tabs .tab-wrapper label:hover {
  background-color: transparent !important;
}

#map-local {
  width: 1200px;
  height: 550px;
  scroll-margin-top: 120px;
}

.single-property .local-area-content {
  display: flex;
  gap: 64px;
}

.single-property .local-area-content .local-image img {
  height: 400px;
  object-fit: cover;
  width: 100%;
}

/* .single-property .local-area-content .gallery > div .gallery-slider .flickity-viewport .gallery-img,
.single-property .local-area-content .gallery > div .gallery-slider .flickity-viewport .gallery-img img {
  width: 100%;
} */

.single-property .local-area-content .things-to-know {
  min-width: 360px;
  padding: 32px;
  background: #f2f2ed;
  border: 1px solid #411900;
}

.single-property .local-area-content .things-to-know h1 {
  text-align: center;
  font-size: 16px;
  letter-spacing: 2px;
  text-transform: uppercase;
  border-bottom: 1px solid #411900;
  padding-bottom: 10px;
}

.single-property .local-area-content .things-to-know .item:not(:last-child) {
  margin-bottom: 16px;
}

.single-property .local-area-content .things-to-know h2 {
  font-size: 16px;
  margin-bottom: 10px;
}

.single-property .local-area-content .things-to-know .bullet-point {
  display: flex;
  gap: 10px;
  margin-bottom: 6px;
}

.single-property .local-area-content .things-to-know .bullet-point img {
  width: 20px;
}

.single-property .local-area-content .things-to-know .bullet-point p {
  margin: 0;
  line-height: normal;
}

.single-property .map-area {
  display: flex;
  gap: 32px;
}

.single-property .map-area .tabbed-content {
  width: 100%;
}

.single-property .map-area .tab-navigation {
  display: flex;
  gap: 1rem;
  margin-bottom: 2rem;
}

.single-property .map-area .tab-button {
  background: none;
  border: none;
  min-width: unset;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: #411900;
  transition: all 0.3s ease;
  line-height: 18px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.single-property .map-area .tab-button:hover {
  background: #3A4032;
  color: #f2f2ed;
  border: 1px solid #3A4032;
}

.single-property .map-area .tab-button.active {
  border: 1px solid #411900;
}

.single-property .map-area .tab-content {
  position: relative;
  max-height: 468px;
  overflow-y: scroll;
}

.single-property .map-area .tab-content::-webkit-scrollbar {
  width: 5px;
  background: transparent;
}

.single-property .map-area .tab-content::-webkit-scrollbar-track {
  background: transparent;
}

.single-property .map-area .tab-content::-webkit-scrollbar-thumb {
  background: grey;
}

.single-property .map-area .tab-panel {
  display: none;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}

.single-property .map-area .tab-panel.active {
  display: grid;
}

.single-property .map-area .tab-panel .card {
  border: none;
  background: #F2F2ED;
}

.single-property .map-area .tab-panel .card h3 {
  color: #411900;
  font-family: Warbler;
  font-size: 15px;
  margin-bottom: 0;
  padding-top: 16px;
  letter-spacing: unset;
}

.single-property .map-area .tab-panel .card h2 {
  color: #3A4032;
  font-size: 16px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin: 10px 0;
}

.single-property .map-area .tab-panel .card .card-image img {
  height: 200px;
  width: 100%;
  object-fit: cover;
}

.single-property .map-area .tab-panel .card .btn {
  display: flex;
  height: 32px;
  min-height: unset;
  min-width: 145px;
  color: #411900;
  justify-content: center;
  align-items: center;
  background: transparent;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin: 10px 0 0 0;
  width: fit-content;
  border: 1px solid #411900;
}

.single-property .map-area .tab-panel .card .btn:hover {
  background: #3A4032;
  color: #f2f2ed;
  border: 1px solid #3A4032;
}

.single-property #map-local .gm-style-iw-chr {
  position: absolute;
  right: 0;
  overflow: hidden;
}

.single-property #map-local .gmnoprint,
.single-property #map-local .gm-control-active,
.single-property #map-local .gm-svpc {
  display: none;
}

.single-property #map-local .gm-style-iw,
.single-property #map-local .gm-style-iw-d,
.single-property #map-local .gm-style-iw-d > div,
.single-property #map-local .map-popup {
  overflow: hidden !important;
  padding: 0;
  background-color: #F2F2ED;
}

.single-property #map-local .gm-ui-hover-effect {
  opacity: 1;
}

.single-property #map-local .gm-ui-hover-effect span {
  background-color: #ffffff;
}

.single-property #map-local .map-popup .property-info {
  padding: 20px 16px 16px;
}

.single-property #map-local .map-popup .property-info h3 {
  color: #411900;
  font-family: Warbler;
  letter-spacing: unset;
  font-size: 15px;
  margin-bottom: 0;
}

.single-property #map-local .map-popup .property-info h2 {
  color: #3A4032;
  font-size: 16px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin: 8px 0;
}

.single-property #map-local .map-popup .property-info a {
  font-size: 12px;
  letter-spacing: 3px;
  display: flex;
  height: 32px;
  min-width: 145px;
  min-height: unset;
  justify-content: center;
  align-items: center;
  color: #F2F2ED;
  background: #411900;
  border: 0;
  margin: 10px 0 0;
}

.single-property #map-local .map-popup .property-info a:hover {
  background: #3A4032;
}

@media(max-width: 978px) {
  #map-local {
    width: auto;
  }

  .single-property .local-area-content {
    display: block;
    margin-bottom: 40px;
  }

  .single-property .local-area-content .things-to-know {
    min-width: unset;
  }

  .single-property .map-area {
    flex-direction: column-reverse;
  }

  .single-property .map-area .tab-navigation {
    gap: 5px;
  }

  .single-property .map-area .tab-panel {
    max-height: 300px;
    overflow: scroll;
  }

  .single-property .map-area .tab-button {
    padding: 10px 12px;
    height: 36px;
  }

  .single-property .map-area .tab-panel.active {
    display: block;
  }

  .single-property .map-area .tab-panel .card {
    display: flex;
    flex-direction: row;
    gap: 20px;
    margin-bottom: 24px;
  }

  .single-property .map-area .tab-panel .card-image img {
    object-fit: cover;
    width: 150px !important;
    min-width: 100px;
    height: 100% !important;
  }

  .single-property .map-area .tab-panel h3 {
    padding-top: 5px;
  }
}

/* New Tab Wrapper Sticky Styling */

.single-property .tabs {
  position: sticky;
}

.single-property .tabs .tab-wrapper {
  position: sticky;
  top: 105px;
  background: #F2F2ED;
  width: 100%;
  max-width: unset;
  justify-content: space-around;
  z-index: 10;
  transition: all 0.3s ease-in-out;
}

/* Header scroll behavior classes - only for single property pages */
.single-property header {
  transition: all 0.3s ease-in-out;
}

.single-property header.header-hidden {
  transform: translateY(-100%);
}

/* Adjust tab wrapper when header is hidden */
.single-property .tabs .tab-wrapper.header-hidden {
  top: 46px;
}

/***********************/
/* Card Carousel Block */
/***********************/


@font-face {
  font-family: Terfens;
  src: url(../../fonts/Terfens-light.otf);
}

@font-face {
  font-family: TerfensThin;
  src: url(../../fonts/Terfens-thin.otf);
}

@font-face {
  font-family: Warbler;
  src: url(../../fonts/WarblerDeck-regular.otf);
}

.card-carousel-block {
  padding: 64px 120px;
  width: 100%;
}

.card-carousel-block #sectiontitle {
  font-family: Terfens;
}

.card-carousel-block .btn {
  border-radius: 50px;
  font-size: 14px;
  min-height: 20px;
  min-width: 120px;
  margin-left: 0;
  font-family: Terfens;
}

.card-carousel-block .card-carousel {
  width: 100%;
}

.card-carousel .slick-list {
  padding-bottom: 10px;
  margin: 0 -16px;
}

.card-carousel .card  {
  width: 312px;
  height: 400px;
  background-size: cover;
  margin: 0 16px;
  text-decoration: none;
  border: none;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: space-between;
  background-position: center;
  color: #fff;
  overflow: hidden;
}

.card-carousel .card::before,
.card-carousel .card::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 20%;
    z-index: 1;
    pointer-events: none;
}

.card-carousel .card::before {
    top: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0));
}

.card-carousel .card::after {
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.card-carousel .card:hover::after {
  bottom: 0;
  height: 30%;
  transition: height 0.2s;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) ,rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.card-carousel .card .content-top  {
  color: #fff;
  padding: 24px;
}

.card-carousel .card .content-top .title {
  font-family: Terfens;
  font-size: 20px;
  letter-spacing: 3px;
  margin-bottom: 0;
}

.card-carousel .card .content-top ,
.card-carousel .card .content-bottom {
  position: relative;
  z-index: 2;
}

.card-carousel .card .content-top p {
  font-family: Warbler;
  font-size: 14px;
  margin: 0;
}

.card-carousel .card .content-bottom {
  color: #fff;
  margin-top: auto;
  padding: 20px;
}

.card-carousel .card .content-bottom p {
  margin: 0;
  font-family: Warbler;
}

.card-carousel .card .content-bottom .content {
  opacity: 0;
  transform: translateY(20px);
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.card-carousel .card:hover .content-bottom .content {
  opacity: 1;
  transform: translateY(0);
}

.card-carousel .card .content-bottom .btn {
  border: none;
  color: #fff;
  background: none;
  min-width: unset;
  font-family: Terfens;
  margin: 0;
  padding: 0;
}

.card-carousel .card .content-bottom .btn:hover {
  background-color: unset;
}

.card-carousel .slick-arrow {
  height: 24px;
  width: 19px;
  left: 30px;
  color: transparent;
  background-image: url(../../images/slick-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  border: none;
  background-color: transparent;
  transition: all 0.3s ease-out;
  position: relative;
  opacity: 0.5;
}

.card-carousel .slick-arrow:hover {
  opacity: 1;
}

.card-carousel .slick-prev,
.card-carousel .slick-next {
  bottom: 0;
  left: 100%;
  cursor: pointer;
}

.card-carousel .slick-prev {
  padding-right: 1rem;
  transform: rotate(180deg) translate(80px, -456px);
}

.card-carousel .slick-next {
  padding-left: 1rem;
  margin-left: -30px;
}

.card-carousel .slick-dots {
  list-style: none;
  margin-top: -18px;
  text-align: center;
}

.card-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.card-carousel .slick-dots li button {
  font-size: 0;
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #5F5F5F;
  padding: 2px;
}

.card-carousel .slick-dots li.slick-active button {
  background-color: #3A4032;
  width: 8px;
  height: 8px;
  border: 1px solid #3A4032;
}

@media(max-width: 768px) {

  .card-carousel-block {
    padding: 40px 20px;
  }

  .card-carousel-block #sectiontitle {
    padding-top: 10px;
  }

  .card-carousel .slick-prev {
    transform: rotate(180deg) translate(0, -456px);
    left: auto;
  }

  .card-carousel .slick-arrow {
    display: none !important;
  }

  .card-carousel .slick-dots {
    list-style: none;
    position: absolute;
    z-index: 9;
    margin-top: -5px;
    text-align: center;
  }
}

/* Collection Block */
.collection_block {
  background-color: #F2F2ED;
  padding: 64px 120px;
}


.collection_block .btn {
  border-radius: 50px;
  font-size: 14px;
  min-height: 20px;
  min-width: 120px;
  margin-left: 0;
  font-family: Terfens;
}

.collection_block .collection-carousel {
  width: 100%;
}

.collection_block .collection-carousel .carousel-indicators {
  display: none;
}

@media (max-width: 768px) {
  .collection_block {
    padding: 40px 20px;
  }
}

.collection_block .collection-carousel .cards-container{

}

.collection_block .collection-carousel .cards-container{

}

.collection_block .collection-carousel .cards-container .card {
  background-color: #F2F2ED;
  border: none;
  margin-right: 20px;
}

@media (max-width: 768px) {
  .collection_block .collection-carousel .cards-container .card {
    margin-right: 0;
  }
}

.collection_block .collection-carousel .cards-container .card > div{

}

.collection_block .collection-carousel .cards-container .card > div .image-container{
  aspect-ratio: 16/9;
  overflow: hidden;
}

@media (max-width: 768px) {
  .collection_block .collection-carousel .cards-container .card > div .image-container{
    aspect-ratio: 4/3;
    overflow: hidden;
  }
}

.collection_block .collection-carousel .cards-container .card > div .image-container img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.collection_block .collection-carousel .cards-container .card > div .card-content{
  padding: 16px 8px;
}

.collection_block .collection-carousel .cards-container .card > div .card-content p{
  color: #3A4032;
}

.collection_block .collection-carousel .cards-container .card > div .card-content h3 {
  font-family: Terfens;
}

.collection_block .collection-carousel .slick-dots {
  list-style: none;
  text-align: center;
  /* margin-top: -18px; */
}

.collection_block .collection-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.collection_block .collection-carousel .slick-dots li button {
  font-size: 0;
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #5F5F5F;
  padding: 2px;
}

.collection_block .collection-carousel .slick-dots li.slick-active button {
  background-color: #411900;
  width: 8px;
  height: 8px;
  border: 1px solid #411900;
}


.testimonial_block {
  background-color: #411900;
  padding: 64px 120px;
}

.testimonial_block .testimonial-carousel {
  width: 100%;
}

@media (max-width: 768px) {
  .testimonial_block {
    padding: 40px 20px;
  }
}

.testimonial_block .testimonial-carousel .testimonials-container {

}

.testimonial_block .testimonial-carousel .testimonials-container .card {
  background-color: #411900;;
  border: none;
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div {
  display: flex;
  gap: 80px;
}

@media (max-width: 768px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div {
    flex-direction: column;
    gap: 24px;
  }
}

@media (max-width: 575px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div {
    gap: 16px;
  }
}


.testimonial_block .testimonial-carousel .testimonials-container .card > div .left{
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .left span {
  font-family: Warbler;
  color: #F2F2ED;
  text-align: center;
  text-transform: uppercase;
  font-size: 32px;
  line-height: 100%;
  max-width: 65%;
}

@media (max-width: 1200px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div .left span {
    max-width: 80%;
  }
}

@media (max-width: 992px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div .left span {
    font-size: 24px;
  }
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .left h5 {
  color: #F2F2ED;
  text-align: center;
  margin-top: 24px;
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .right{
  flex: 1;
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .right .image-container {
  height: 550px;
}

@media (max-width: 768px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div .right .image-container {
    height: 350px;
  }
}

@media (max-width: 575px) {
  .testimonial_block .testimonial-carousel .testimonials-container .card > div .right .image-container {
    height: 265px;
  }
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .right .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.testimonial_block .testimonial-carousel .testimonials-container .card > div .right .link {
  color: #F2F2ED;
  margin-top: 8px;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 12px;
  display: inline-block;
  font-family: Terfens;
}

.testimonial_block .testimonial-carousel .slick-dots {
  list-style: none;
  margin-top: 24px;
  text-align: center;
  /* margin-top: -18px; */
}

.testimonial_block .testimonial-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.testimonial_block .testimonial-carousel .slick-dots li button {
  font-size: 0;
  width: 8px;
  height: 8px;
  background-color: #3A4032;
  border-radius: 50%;
  border: 1px solid #3A4032;
  padding: 2px;
}

.testimonial_block .testimonial-carousel .slick-dots li.slick-active button {
  background-color: #F2F2ED;
  width: 8px;
  height: 8px;
  border: 1px solid #3A4032;
}

#availability .form-fields input {
  cursor: pointer;
}

.availability-form .wrapper, #aval .filter {
  background-color: #F2F2ED;
}

footer .telephone, footer .menu a {
  color: #3A4032;
}

.ui-widget-header {
  border: none !important;
}

.gfield_description {
  color: #3A4032 !important;
}

header .navbar .header-links-left span, header .navbar .header-links-right span {
  font-family: "warbler", sans-serif;
}

.villa-info a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  /* font-size: 15px; */
  height: 32px;
  width: fit-content;
  padding: 0.6rem 0.5rem;
  /* letter-spacing: 2px; */
  transition: 200ms ease-in;
  margin: 0 auto;
  margin-top: 2rem;
  min-width: 145px;
  font-size: 12px;
  letter-spacing: 0.1em;
  border-radius: 32px;
  background-color: #411900;
  padding: 12px 30px;
  color: #F2F2ED;
}

/***********************/
/* Perks Module Block */
/***********************/


@font-face {
  font-family: Terfens;
  src: url(../../fonts/Terfens-light.otf);
}

@font-face {
  font-family: Warbler;
  src: url(../../fonts/WarblerDeck-regular.otf);
}

.perks-module-block {
  padding: 64px 120px;
  width: 100%;
}

.perks-module-block #sectiontitle {
  font-family: Terfens;
  font-size: 32px;
  line-height: 130%;
}

.perks-module-block #sectioncaption{
  margin: 1.5rem 0;
  font-size: 20px;
}

.perks-module-block .btn {
  border-radius: 50px;
  font-size: 14px;
  min-height: 20px;
  min-width: 120px;
  margin-left: 0;
  font-family: Terfens;
}

.perks-module-block .card-carousel {
  width: 100%;
}

.perks-carousel .slick-list {
  padding-bottom: 10px;
  margin: 0 -16px;
}

.perks-carousel .card {
  width: 312px;
  height: auto;
  gap: 24px;
  background-color: transparent;
  margin: 0 16px;
  text-decoration: none;
  border: none;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: space-between;
  background-position: center;
  overflow: hidden;
}

.perks-carousel .card .image-container {
  height: 504px;
  min-height: 504px;
  width: 100%;
}

.perks-carousel .card .image-container img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.perks-carousel .card .content .title {
  margin-bottom: 0;
  font-size: 24px;
}

.perks-carousel .card .content .subtitle {
  margin-top: 8px;
  margin-bottom: 16px;
  font-size: 20px;
}

.perks-carousel .card .content p {
  line-height: 150%;
  font-size: 18px;
}

.perks-carousel .slick-arrow {
  height: 40px;
  width: 40px;
  left: 30px;
  color: transparent;
  background-image: url(../../images/chevron-mussel.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-color: transparent;
  transition: all 0.3s ease-out;
  position: relative;
  border: 1px solid #411900;
  border-radius: 100px;
}
.perks-carousel .slick-disabled { 
  opacity: 0.5;
}

.perks-carousel .slick-arrow:hover {
  background-color: #3A4032;
  background-image: url(../../images/chevron-white.svg);
}

.perks-carousel .slick-prev,
.perks-carousel .slick-next {
  bottom: 0;
  left: 100%;
  cursor: pointer;
}

.perks-carousel .slick-prev {
  padding-right: 1rem;
  transform: translate(-80px, -5px);
  position: absolute;
}

.perks-carousel .slick-next {
  padding-left: 1rem;
  margin-left: -30px;
  transform: rotate(180deg);
}

.perks-carousel .slick-dots {
  list-style: none;
  margin-top: -18px;
}

.perks-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.perks-carousel .slick-dots li button {
  font-size: 0;
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #411900;
  padding: 2px;
}

.perks-carousel .slick-dots li.slick-active button {
  background-color: #411900;
  width: 8px;
  height: 8px;
  border: 1px solid #411900;
}

@media(max-width: 768px) {

  .perks-module-block {
    padding: 40px 20px;
  }

  .perks-carousel .card .image-container { 
    height: 446px;
    min-height: 446px;
  }

  .perks-module-block #sectiontitle {
    padding-top: 10px;
  }

  .perks-module-block #sectioncaption {
    font-size: 16px;
  }
  .perks-carousel .card .content .title {
    font-size: 21px;
  }

  .perks-carousel .card .content .subtitle {
    font-size: 17px;
    margin-bottom: unset;
  }

  .perks-carousel .card .content p {
    font-size: 16px;
    margin: 8px 0;
  }
}

/* Perks Popup Overlay Styles */
body.perk-overlay-open {
  overflow: hidden;
}

.perks-module-block .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  overflow-y: auto;
  padding: 2rem;
  box-sizing: border-box;
}

.perks-module-block .overlay-content {
  max-width: 994px;
  margin: 2rem auto;
  position: relative;
  border-radius: 8px;
}

.perks-module-block .overlay-content .overlay-top {
  padding: 24px 48px;
  border-bottom: 0.2px solid #3A4032;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.perks-module-block .overlay-title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 600;
  color: #3A4032;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.perks-module-block .close-overlay {
  position: absolute;
  top: 40px;
  right: 40px;
  width: 40px;
  height: 40px;
  background-color: #F2F2ED;
  border: none;
  border-radius: 100px;
  font-size: 2rem;
  cursor: pointer;
  color: #3A4032;
  transition: color 0.3s ease;
  background-image: url(../../images/close-mussel.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px;
  z-index: 1;
}

.perks-module-block .close-overlay:hover {
  background-color: #3A4032;
  background-image: url(../../images/close-white.svg);
}

/* Slick Carousel Controls for Popup */
.perks-module-block .perks-popup-carousel .slick-arrow {
  transform: translateY(-50%);
  position: fixed;
  height: 40px;
  width: 40px;
  left: 30px;
  top: 50%;
  color: transparent;
  background-image: url(../../images/chevron-mussel.svg);
  background-position: center;
  background-repeat: no-repeat;
  border: none;
  background-color: #F2F2ED;
  border-radius: 100px;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.perks-module-block .perks-popup-carousel .slick-arrow:hover {
  background-color: #3A4032;
  background-image: url(../../images/chevron-white.svg);
}

.perks-module-block .perks-popup-carousel .slick-next {
  right: 30px;
  left: unset;
  transform: translateY(-50%) rotate(180deg);
}

.perks-module-block .perks-popup-carousel .slick-disabled {
  opacity: 0.5;
}

.perks-module-block .perk-details {
  padding: 64px;
  background: #411900;
}

.perks-module-block .perks-popup-carousel .slick-dots {
  display: none !important;
  list-style: none;
  z-index: 9;
  margin-top: 24px;
}

.perks-module-block .perks-popup-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.perks-module-block .perks-popup-carousel .slick-dots li button {
  font-size: 0;
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #411900;
  padding: 2px;
}

/* Perk Popup Content Styles */
.perks-module-block .perk-popup-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.perks-module-block .perk-image-container {
  width: 100%;
  height: 313px;
  overflow: hidden;
  display: flex;
  gap: 32px;
}

.perks-module-block .perk-image-container img {
  width: calc(50% - 16px);
  height: 100%;
  object-fit: cover;
  display: block;
}

.perks-module-block .perk-text-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.perks-module-block .perk-title {
  margin: 0;
  font-weight: 600;
  color: #F2F2ED;
  line-height: 1.2;
}

.perks-module-block .perk-subtitle {
  margin: 0;
  font-size: 1.1rem;
  color: #F2F2ED;
  font-weight: 500;
  line-height: 1.4;
}

.perks-module-block .perk-content {
  margin: 0;
  font-size: 1rem;
  color: #F2F2ED;
  line-height: 1.6;
}

.perks-module-block .perk-content p {
  margin: 0 0 16px 0;
}

.perks-module-block .perk-content p:last-child {
  margin-bottom: 0;
}

.perks-module-block .perk-link {
  background-color: #F2F2ED;
  color: #3A4032;
  align-self: flex-start;
  margin-top: 8px;
  border: 1px solid #F2F2ED;
}

.perks-module-block .perk-link:hover {
  background-color: transparent;
  color: #F2F2ED;
  border: 1px solid #F2F2ED;
}

/* Explore Button Styling */
.perks-module-block .explore-btn {
  cursor: pointer;
  transition: all 0.3s ease;
}

/* Responsive Styles */
@media (max-width: 980px) {
  .perks-module-block .overlay {
    padding: 0;
  }

  .perks-module-block .overlay-content {
    margin: 0;
    border-radius: 0;
    min-height: 100vh;
    align-content: center;
  }

  .perks-module-block .overlay-content .overlay-top {
    padding: 20px 24px;
  }

  .perks-module-block .perk-image-container {
    height: 251px;
    display: block;
  }

  .perks-module-block .perk-image-container img {
    width: 100%;
  }

  .perks-module-block .overlay-title {
    font-size: 1.25rem;
  }

  .perks-module-block .close-overlay {
    top: 16px;
    right: 20px;
    font-size: 1.75rem;
  }

  .perks-module-block .perks-popup-carousel .slick-arrow {
    left: unset;
    right: 60px;
    bottom: -24px;
    top: unset;
    position: absolute;
  }

  .perks-module-block .perks-popup-carousel .slick-next {
    right: 0;
  }

  .perks-module-block .perks-popup-carousel .slick-dots {
    display: block !important;
  }

  .perks-module-block .perk-details {
    padding: 40px 20px;
  }

  .perks-module-block .perk-title {
    font-size: 1.5rem;
  }

  .perks-module-block .perk-dates {
    font-size: 0.9rem;
  }

  .perks-module-block .perk-subtitle {
    font-size: 1rem;
  }

  .perks-module-block .perk-content {
    font-size: 0.95rem;
  }

  .perks-module-block .perk-link {
    padding: 10px 20px;
    font-size: 0.9rem;
  }
}

/* Sign Up Block */

.sign-up-block {
  padding: 64px 120px;
  max-width: 1600px;
  margin: 0 auto;
  width: 100%;
  display: flex;
  gap: 120px;
  border-bottom: 1px solid #411900;
}

.sign-up-block .left {
  flex: 55%;
  position: relative;
  margin: 0 auto;
}

.sign-up-block .left .landscape-image {
  aspect-ratio: 16 / 9;
  margin-right: 100px;
  height: 340px;
  max-width: 500px;
}

.sign-up-block .left .portrait-image {
  aspect-ratio: 4 / 5;
  right: 0;
  position: relative;
  margin-left: auto;
  margin-top: -170px;
  max-width: 330px;
}
.sign-up-block .left .portrait-image img {
  position: absolute;
  right: 0;
}

.sign-up-block .left .landscape-image img,
.sign-up-block .left .portrait-image img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.sign-up-block .right {
  flex: 45%;
  align-content: center;
}

.sign-up-block .right .title {
  font-size: 36px;
  font-family: "TerfensThin";
}

.sign-up-block .right .caption {
  font-size: 18px;
}

.sign-up-block .gform_wrapper form {
  text-align: left !important;
}

.sign-up-block .gform_heading {
  display: none;
}

.sign-up-block .ginput_complex input,
.sign-up-block .ginput_container input {
  font-family: Terfens;
  text-transform: uppercase;
  padding: 12px !important;
  height: unset;
  line-height: 1 !important;
}

.sign-up-block .ginput_complex input::placeholder,
.sign-up-block .ginput_container input::placeholder {
  opacity: 0.5;
}

.sign-up-block .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) {
  padding-right: 0;
}

.sign-up-block .ginput_container_consent {
  display: flex;
  gap: 8px;
}

.sign-up-block .ginput_container_consent label {
  font-size: 16px !important;
}

.sign-up-block .ginput_container_consent input {
  width: 18px;
  height: 18px;
  margin-top: 4px;
  background-color: #F2F2ED !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #411900;
  position: relative;
  padding: 8px !important;
}

.sign-up-block .ginput_container_consent input:checked {
  background-color: #F2F2ED !important;
}

.sign-up-block .ginput_container_consent input:checked::after {
  content: "✓";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #411900;
  font-size: 12px;
  font-weight: bold;
}

.sign-up-block .gform_wrapper button[type="submit"] {
  margin: 0;
  min-width: unset;
  font-size: 14px;
  min-height: 20px;
  min-width: 120px;
  margin-left: 0;
  border: none;
  border-radius: 32px;
  padding: 12px 30px;
  letter-spacing: 3px;
}

@media (max-width: 992px) {
  .sign-up-block .gform_wrapper button[type="submit"] {
    padding: 0.2rem 0.5rem;
  }
}

@media(max-width: 1200px) {
  .sign-up-block {
    flex-direction: column;
    padding: 40px 20px;
    gap: 24px;
  }
}

@media(max-width: 768px) {
  .sign-up-block .left {
    margin: unset;
  }
  .sign-up-block .left .landscape-image {
    max-width: 350px;
    height: 250px;
    margin-right: 0;
  }
  .sign-up-block .left .portrait-image {
    margin-top: -125px;
    max-width: 300px;
  }
}

@media(max-width: 478px) {
  .sign-up-block .right .title {
    font-size: 32px;
  }
  .sign-up-block .right .caption,
  .sign-up-block .gfield_consent_label {
    font-size: 16px !important;
  }
  .sign-up-block .left .landscape-image {
    max-width: 300px;
    height: 200px;
  }
  .sign-up-block .left .portrait-image {
    margin-top: -100px;
    max-width: 215px;
  }
}

/* Gallery Block */

.gallery_block > div {
  position: relative;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  padding: 64px 120px;
}

@media(max-width: 992px) {
  .gallery_block > div {
    padding: 40px 20px;
  }
}

.gallery_block .tabbed_alt .top {
  display: flex;
  margin-bottom: 64px;
  justify-content: center;
}

.gallery_block .tabbed_alt .top .content-block {
  padding: 0 8px;
  cursor: pointer;
}

@media(max-width: 992px) {
  .gallery_block .tabbed_alt .top {
    justify-content: flex-start;
    margin-bottom: 48px;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .gallery_block .tabbed_alt .top .content-block {
    margin: 0 auto;
  }
}

.gallery_block .tabbed_alt .top .content-block .section-title {
  min-width: unset;
  margin: unset;
  background-color: transparent;
  color: #411900;
  border: 1px solid transparent;
}

.gallery_block .tabbed_alt .top .content-block .section-title p {
  font-family: Warbler;
  text-transform: capitalize;
}

@media(max-width: 992px) {
  .gallery_block .tabbed_alt .top .content-block .section-title {
    padding: 8px 30px;
    font-size: 14px;
    font-weight: 600;
  }
}

.gallery_block .tabbed_alt .top .content-block.active .section-title,
.gallery_block .tabbed_alt .top .content-block .section-title:hover {
  background-color: #411900;
  color: #F2F2ED;
  border: 1px solid #411900;
}

.gallery_block .tabbed_alt .bottom .image .gallery-block-container .gallery {
  display: none;
  flex-wrap: wrap;
  position: relative;
}

.gallery_block .tabbed_alt .bottom .image .gallery-block-container .gallery.active {
  display: flex;
}

.gallery_block .block {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(8, 5vw);
  grid-gap: 8px;
  margin: 8px 0 0;
}

@media (max-width: 992px) {
  .gallery_block .block {
    display: flex;
    flex-wrap: wrap;
  }
}

.gallery_block .block .item > a img{
  height: 100%;
  width: 100%;
  object-fit: cover;
}

@media (max-width: 992px) {
  .gallery_block .block .item {
    width: calc(100% - 8px);
    min-height: 350px;
    margin: 4px;
  }
}

@media (max-width: 575px) {
  .gallery_block .block .item {
    width: calc(100% - 8px);
    min-height: 300px;
  }
}

.gallery_block .block.by-1,
.gallery_block  .block.by-2 {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(5, 5vw);
}

.gallery_block .block.by-1 .item:first-child,
.gallery_block .block.by-2 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 7;
  grid-row-start: 1;
  grid-row-end: 6;
}

.gallery_block .block.by-1 .item:nth-child(2),
.gallery_block .block.by-2 .item:nth-child(2) {
  grid-column-start: 7;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 6;
}

@media (max-width: 992px) {
  .gallery_block .block.by-1 .item {
    width: calc(100% - 16px);
  }
}

.gallery_block .block.by-3 .item:first-child,
.gallery_block .block.by-4 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}

.gallery_block .block.by-3 .item:nth-child(2),
.gallery_block .block.by-4 .item:nth-child(2) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 1;
  grid-row-end: 5;
}

.gallery_block .block.by-3 .item:nth-child(3),
.gallery_block .block.by-4 .item:nth-child(3) {
  grid-column-start: 6;
  grid-column-end: 10;
  grid-row-start: 5;
  grid-row-end: 9;
}

.gallery_block .block.by-3 .item:nth-child(4),
.gallery_block .block.by-4 .item:nth-child(4) {
  grid-column-start: 10;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 9;
}

@media (max-width: 992px) {
  .gallery_block .block.by-3 .item:nth-child(3) {
    width: calc(100% - 16px);
  }
}

.gallery_block .block.by-5 .item:first-child {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.gallery_block .block.by-5 .item:nth-child(2) {
  grid-column-start: 5;
  grid-column-end: 8;
  grid-row-start: 1;
  grid-row-end: 5;
}

.gallery_block .block.by-5 .item:nth-child(3) {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 5;
  grid-row-end: 9;
}

.gallery_block .block.by-5 .item:nth-child(4) {
  grid-column-start: 8;
  grid-column-end: 13;
  grid-row-start: 1;
  grid-row-end: 5;
}

.gallery_block .block.by-5 .item:nth-child(5) {
  grid-column-start: 9;
  grid-column-end: 13;
  grid-row-start: 5;
  grid-row-end: 9;
}

/* New Gallery Block Magnific Popup */

.page-template-default .slick-lightbox .slick-arrow {
  transform: translateY(-50%);
  position: absolute;
  height: 60px;
  width: 60px;
  left: 30px;
  top: 50%;
  color: transparent;
  background-image: url(../../images/arrow-white.svg);
  background-position: center;
  background-repeat: no-repeat;
  border: none;
  background-color: transparent;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.page-template-default .slick-lightbox .slick-arrow:hover {
  opacity: 0.5;
}

.page-template-default .slick-lightbox .slick-next {
  right: 30px;
  left: unset;
  transform: translateY(-50%) rotate(180deg);
}

.page-template-default .slick-lightbox-slick-caption {
  display: block;
  text-align: left;
  max-width: 90%;
  margin: 10px auto;
  font-family: Warbler;
}

@media (max-width: 575px) {
  .page-template-default .slick-lightbox .slick-next {
    right: 8px;
  }
  .page-template-default .slick-lightbox .slick-prev {
    left: 8px;
  }
}

/* padding edits to certain pages */

/* home page and locations */
.page-id-132 .full-width-simple-content.styled,
.page-id-24746 .full-width-simple-content.styled {
  padding: 64px 120px 35px;
}

.page-id-132 .card-carousel-block {
  padding: 35px 120px;
}

.page-id-24746 .link-tiles,
.page-id-132 .collection_block {
  padding: 35px 120px 64px;;
}

@media (max-width: 768px) {
  .page-id-132 .full-width-simple-content.styled,
  .page-id-24746 .full-width-simple-content.styled,
  .page-id-132 .collection_block,
  .page-id-132 .card-carousel-block,
  .page-id-24746 .link-tiles {
      padding: 40px 20px;
  }
}

/* Move Filter Up Desktop */

@media(min-width: 1000px) {
  .page-template-properties-template-new .crumbs-search {
    margin-top: -40px;
  }

  .page-template-properties-template-new .crumbs-search .right .villa-drop {
    margin-top: -20px;
  }

  .page-template-properties-template-new .tabs div .tab-wrapper .btn {
    z-index: 10;
  }
}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIl9icmFuZGluZy5zY3NzIiwibWFpbi9zZXR1cC9fd3Atb3ZlcnJpZGVzLnNjc3MiLCJtYWluL3NldHVwL19icy1vdmVycmlkZXMuc2NzcyIsIm1haW4vc2V0dXAvX3VtaWJhc2Uuc2NzcyIsIm1haW4vYmFzZS9faGVhZGVyLnNjc3MiLCJtYWluL2Jhc2UvX2Zvb3Rlci5zY3NzIiwibWFpbi9pbmNsdWRlcy9fcGFnaW5hdGlvbi5zY3NzIiwibWFpbi9wYXJ0aWFscy9faGVyby5zY3NzIiwibWFpbi9wYXJ0aWFscy9fc2ltcGxlLWNvbnRlbnQuc2NzcyIsIm1haW4vcGFydGlhbHMvX2NoZXNzLWJvYXJkLnNjc3MiLCJtYWluL3BhcnRpYWxzL19saXN0LWNvbnRlbnQuc2NzcyIsIm1haW4vcGFydGlhbHMvX3RpbGVzLnNjc3MiLCJtYWluL3BhcnRpYWxzL190YWItY29udGVudC5zY3NzIiwibWFpbi9wYXJ0aWFscy9fZ2FsbGVyeS5zY3NzIiwibWFpbi9wYXJ0aWFscy9fcGFydG5lcnMuc2NzcyIsIm1haW4vcGFydGlhbHMvX3Bvc3Qtc2xpZGVyLnNjc3MiLCJtYWluL3BhcnRpYWxzL19jb250YWN0LWRldGFpbHMuc2NzcyIsIm1haW4vcGFydGlhbHMvX2N0YS5zY3NzIiwibWFpbi9wYXJ0aWFscy9faW5zdGFncmFtLnNjc3MiLCJtYWluL3BhcnRpYWxzL190ZXN0aW1vbmlhbHMuc2NzcyIsIm1haW4vcGFydGlhbHMvX21hcC5zY3NzIiwibWFpbi9wYXJ0aWFscy9wcmVzcy1sb29wLnNjc3MiLCJtYWluL3Bvc3RzL3Bvc3QtbG9vcC5zY3NzIiwibWFpbi9wb3N0cy9fc2luZ2xlLnNjc3MiLCJtYWluL3Bvc3RzL19zaW5nbGUtcHJvcGVydHkuc2NzcyIsIm1haW4vcG9zdHMvX3Byb3BlcnR5LWFyY2hpdmUuc2NzcyIsIm1haW4vY3B0L19yb29tLWxvb3Auc2NzcyIsIm1haW4vcGx1Z2lucy9fZ3Jhdml0eS1mb3Jtcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAgVGhpcyBmaWxlIGxvYWRzIGFsbCBjb3JlIFNDU1MgZmlsZXMgZnJvbSBtYWluLXBhcnRzIGZpbGVcclxuKi9cclxuXHJcbkBpbXBvcnQgXCJicmFuZGluZ1wiO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiAxLiBTRVRVUCAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU11bGk6MzAwLDMwMGksNDAwLDQwMGkmZGlzcGxheT1zd2FwJyk7XHJcbkBpbXBvcnQgJ21haW4vc2V0dXAvd3Atb3ZlcnJpZGVzJztcclxuQGltcG9ydCAnbWFpbi9zZXR1cC9icy1vdmVycmlkZXMnO1xyXG5AaW1wb3J0ICdtYWluL3NldHVwL3VtaWJhc2UnO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIDIuIEJBU0UgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCAnbWFpbi9iYXNlL2hlYWRlcic7XHJcbkBpbXBvcnQgJ21haW4vYmFzZS9mb290ZXInO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIDMuIElOQ0xVREVTICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgJ21haW4vaW5jbHVkZXMvcGFnaW5hdGlvbic7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcclxuLyogNC4gUEFSVElBTFMgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9oZXJvJztcclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9zaW1wbGUtY29udGVudCc7XHJcbkBpbXBvcnQgJ21haW4vcGFydGlhbHMvY2hlc3MtYm9hcmQnO1xyXG5AaW1wb3J0ICdtYWluL3BhcnRpYWxzL2xpc3QtY29udGVudCc7XHJcbkBpbXBvcnQgJ21haW4vcGFydGlhbHMvdGlsZXMnO1xyXG5AaW1wb3J0ICdtYWluL3BhcnRpYWxzL3RhYi1jb250ZW50JztcclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9nYWxsZXJ5JztcclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9wYXJ0bmVycyc7XHJcbkBpbXBvcnQgJ21haW4vcGFydGlhbHMvcG9zdC1zbGlkZXInO1xyXG5AaW1wb3J0ICdtYWluL3BhcnRpYWxzL2NvbnRhY3QtZGV0YWlscyc7XHJcbkBpbXBvcnQgJ21haW4vcGFydGlhbHMvY3RhJztcclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9pbnN0YWdyYW0nO1xyXG5AaW1wb3J0ICdtYWluL3BhcnRpYWxzL3Rlc3RpbW9uaWFscyc7XHJcbkBpbXBvcnQgJ21haW4vcGFydGlhbHMvbWFwJztcclxuQGltcG9ydCAnbWFpbi9wYXJ0aWFscy9wcmVzcy1sb29wJztcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxyXG4vKiA1LiBQT1NUUyAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0ICdtYWluL3Bvc3RzL3Bvc3QtbG9vcCc7XHJcbkBpbXBvcnQgJ21haW4vcG9zdHMvc2luZ2xlJztcclxuQGltcG9ydCAnbWFpbi9wb3N0cy9zaW5nbGUtcHJvcGVydHknO1xyXG5AaW1wb3J0ICdtYWluL3Bvc3RzL3Byb3BlcnR5LWFyY2hpdmUnO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIDYuIENQVCAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0ICdtYWluL2NwdC9yb29tLWxvb3AnO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIDcuIFBMVUdJTlMgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCAnbWFpbi9wbHVnaW5zL19ncmF2aXR5LWZvcm1zLnNjc3MnOyIsIiRmb250LWZhbWlseS1iYXNlOiAnTXVsaScsIHNhbnMtc2VyaWY7XG4kYm9keS1jb2xvcjogIzVGNUY1RjtcbiRmb250LXNpemUtYmFzZTogMXJlbTtcblxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA0MDA7XG4kaDEtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAyLjU7IC8vNDBweFxuJGgyLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICogMjsgLy8zMnB4XG4kaDMtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjU7IC8vMjRweFxuJGg0LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICogMS4yNTsgLy8yMHB4XG4kaDUtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vMTZweFxuJGg2LWZvbnQtc2l6ZTogMTRweDtcblxuJGJ0bi1ib3JkZXItcmFkaXVzOiBub25lO1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZTtcblxuJHByaW1hcnk6ICM1RjVGNUY7XG4kbGlnaHQgOiAjRjdGN0Y3O1xuJHdoaXRlIDogI0ZGRjtcbiRncmV5IDogI0I4QjhCNztcbiRibGFjayA6ICMxNTE1MTU7XG5cbiRjb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LFxuICBcImxpZ2h0XCIgOiAkbGlnaHQsXG4gIFwid2hpdGVcIiA6ICR3aGl0ZSxcbiAgXCJncmV5XCIgOiAkZ3JleSxcbiAgXCJibGFja1wiIDogJGJsYWNrXG4pO1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAkcHJpbWFyeSxcbiAgXCJsaWdodFwiIDogJGxpZ2h0LFxuICBcIndoaXRlXCIgOiAkd2hpdGUsXG4gIFwiZ3JleVwiIDogJGdyZXksXG4gIFwiYmxhY2tcIiA6ICRibGFja1xuKTsiLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbi8qICBXT1JEUFJFU1MgREVGQVVMVFMgT1ZFUlJJREVTICAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKioqKioqKiogd3AtYWRtaW4gKioqKioqKiovXG5cbiN3cGFkbWluYmFye1xuICB0b3A6IC0zOHB4ICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4jd3BhZG1pbmJhciAucXVpY2tsaW5rcyB1bHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbiN3cGFkbWluYmFyOmhvdmVye1xuICB0b3A6IDBweCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4jd3BhZG1pbmJhcjpob3ZlciAucXVpY2tsaW5rcyB1bHtcbiAgcG9pbnRlci1ldmVudHM6IGluaXRpYWw7XG59XG5cbkBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xuICAjd3BhZG1pbmJhcntcbiAgICB0b3A6IC0yOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqKioqKioqIFNlYXJjaGZvcm1zICoqKioqKioqL1xuXG4uc2VhcmNoZm9ybSA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogNDBweCBhdXRvIDA7XG59XG5cbi5zZWFyY2hmb3JtIC5zZWFyY2hiYXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaGZvcm0gW3R5cGU9c3VibWl0XSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNzY3JvbGwtdG8tdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbiNzY3JvbGwtdG8tdG9wLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qKioqKioqKiBHYWxsZXJ5ICoqKioqKioqL1xuXG4ud3BfZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC44cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjhyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLndwX2dhbGxlcnkgPiBmaWd1cmUge1xuICB3aWR0aDogNTAlOyAvKm9uIG1vYmlsZSBhbGwgZ2FsbGVyeSBpbWFnZXMgZ28gdG8gNTAlKi9cbiAgcGFkZGluZzogMC40cmVtO1xuICBoZWlnaHQ6IDE2dnc7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGhlaWdodDogMjB2dztcbiAgICB9XG5cbiAgICBAbWVkaWEoIG1heC13aWR0aDogNjAwcHggKSB7XG4gICAgICBoZWlnaHQ6IDMwdnc7XG4gICAgfVxufVxuXG4ud3BfZ2FsbGVyeSA+IGZpZ3VyZSA+IGEge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53cF9nYWxsZXJ5ID4gZmlndXJlID4gYSA+IGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgaGVpZ2h0OiAyMHZ3O1xuICB9XG5cbiAgQG1lZGlhKCBtYXgtd2lkdGg6IDYwMHB4ICkge1xuICAgIGhlaWdodDogMzB2dztcbiAgfVxufVxuXG5AbWVkaWEoIG1pbi13aWR0aDogNTc2cHggKSB7XG4gIC53cF9nYWxsZXJ5ID4gZmlndXJle1xuICAgIHBhZGRpbmc6IDVweDtcbiAgfVxufVxuXG5AbWVkaWEoIG1pbi13aWR0aDogNzY4cHggKSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtID4gZmlndXJlLCAvKmRlZmF1bHQgd29yZHByZXNzIGNvbHVtbnMgc2VlbXMgdG8gbWlzcyBvZmYgdGhlICczJyovXG4gIC5nYWxsZXJ5LWNvbHVtbnMtMyA+IGZpZ3VyZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICB9XG5cbiAgLmdhbGxlcnktY29sdW1ucy00ID4gZmlndXJlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gNCk7XG4gIH1cblxuICAuZ2FsbGVyeS1jb2x1bW5zLTUgPiBmaWd1cmUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA1KTtcbiAgfVxuXG4gIC8qIHlvdSBjYW4gYWRkIGhpZ2hlciBjb2x1bW4gZGl2aXNpb25zIGJ1dCBkb2VzIG5vdCByZWFsbHkgbWFrZSBzZW5zZSB0byBnbyBhbnkgaGlnaGVyIHVubGVzcyBuZWNlc3NhcnkgKi9cbn1cblxuQG1lZGlhKCBtaW4td2lkdGg6IDk5MnB4ICkge1xuICAud3BfZ2FsbGVyeXtcbiAgICBtYXJnaW4tdG9wOiAxLjRyZW07XG4gIH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcclxuLyogQk9PVFNUUkFQIE9WRVJSSURFUyAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY2xvc2Uge1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdHRleHQtc2hhZG93OiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLmNsb3NlOmhvdmVyIHtcclxuXHRjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnRuIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRjb2xvcjogJHByaW1hcnk7XHJcblx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRtYXJnaW46IDAuNXJlbSAwLjhyZW07XHJcblx0bWluLXdpZHRoOiAyNTBweDtcclxuXHRtaW4taGVpZ2h0OiA0OHB4O1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcclxuXHQtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcblx0LW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcblxyXG5cdEBtZWRpYShtYXgtd2lkdGg6IDk5MnB4KXtcclxuXHRcdG1pbi13aWR0aDogMTgwcHg7XHJcblx0XHRtaW4taGVpZ2h0OiAzNXB4O1xyXG5cdFx0cGFkZGluZzogMC4ycmVtIDAuNXJlbTtcclxuXHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHR9XHJcblxyXG5cdCY6Zm9jdXMge1xyXG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMzNzQ1NEY7XHJcblx0Y29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5idG4tbGluayB7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRjb2xvcjogJHByaW1hcnk7XHJcblx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdHBhZGRpbmc6IDAgMXJlbTtcclxufVxyXG5cclxuLmJ0bi1ob2xkZXIge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0PiAuYnRuOmZpcnN0LWNoaWxke1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG5cdD4gLmJ0bjpsYXN0LWNoaWxke1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHQ+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0Y29sb3I6ICRwcmltYXJ5O1xyXG5cdH1cclxufVxyXG5cclxuLmJvcmRlciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgIzVGNUY1RiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYmctcHJpbWFyeSxcclxuLmJnLXByaW1hcnkgYTpub3QoLmJ0biksXHJcbi5iZy1wcmltYXJ5IGE6aG92ZXIsXHJcbi5iZy1kYXJrLFxyXG4uYmctZGFyayBhOm5vdCguYnRuKSxcclxuLmJnLWRhcmsgYTpob3ZlcnsgXHJcblx0Y29sb3I6ICRibGFjaztcclxufVxyXG5cclxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcclxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dHtcclxuXHR3aWR0aDogOCU7XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbntcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICcuLi8uLi9pbWFnZXMvaWNvbnMvY29udHJvbHMtYXJyb3ctbGVmdC5zdmcnICk7XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbntcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICcuLi8uLi9pbWFnZXMvaWNvbnMvY29udHJvbHMtYXJyb3ctcmlnaHQuc3ZnJyApO1xyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIFVNSUJBU0UgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuYm9keSxcclxuaHRtbCxcclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNixcclxudWwsXHJcbm9sLFxyXG5mb3JtLFxyXG5hZGRyZXNzLFxyXG5kbCxcclxuZGlyLFxyXG5tZW51LFxyXG5ibG9ja3F1b3RlLFxyXG5hcnRpY2xlLFxyXG5maWd1cmUge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG5ib2R5IHtcclxuXHRmb250LWZhbWlseTogJ011bGknLCBzYW5zLXNlcmlmO1xyXG5cdGZvbnQtc2l6ZTogMThweDtcclxuXHRsaW5lLWhlaWdodDogMjNweDtcclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuI3NwYWNlcntcclxuXHRtYXJnaW4tdG9wOiAxMDRweDtcclxufVxyXG5cclxuLmJvZHktZm9udCB7XHJcblx0Zm9udC1mYW1pbHk6ICdNdWxpJywgc2Fucy1zZXJpZjtcclxuXHRsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG59XHJcblxyXG5oMSB7XHJcblx0bWFyZ2luOiAxLjVyZW0gMDtcclxuXHJcblx0QG1lZGlhKCBtYXgtd2lkdGg6IDc2OHB4ICl7XHJcblx0XHRmb250LXNpemU6IDJyZW07XHJcblx0fVxyXG59XHJcblxyXG5oMiB7XHJcblx0bWFyZ2luOiAxLjVyZW0gMDtcclxuXHJcblx0QG1lZGlhKCBtYXgtd2lkdGg6IDc2OHB4ICl7XHJcblx0XHRmb250LXNpemU6IDEuNXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbmgzIHtcclxuXHRtYXJnaW46IDFyZW0gMDtcclxufVxyXG5cclxucCB7XHJcblx0bWFyZ2luOiAxLjVyZW0gMDtcclxufVxyXG5cclxuaDE6Zmlyc3QtY2hpbGQsXHJcbmgyOmZpcnN0LWNoaWxkLFxyXG5oMzpmaXJzdC1jaGlsZCxcclxuaDQ6Zmlyc3QtY2hpbGQsXHJcbmg1OmZpcnN0LWNoaWxkLFxyXG5oNjpmaXJzdC1jaGlsZCxcclxucDpmaXJzdC1jaGlsZCB7XHJcblx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5oMTpsYXN0LWNoaWxkLFxyXG5oMjpsYXN0LWNoaWxkLFxyXG5oMzpsYXN0LWNoaWxkLFxyXG5oNDpsYXN0LWNoaWxkLFxyXG5oNTpsYXN0LWNoaWxkLFxyXG5oNjpsYXN0LWNoaWxkLFxyXG5wOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuYSB7IFxyXG5cdGNvbG9yOiBpbmhlcml0OyBcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcblx0LW1zLXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG5cdC1vLXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG5hOmZvY3VzLFxyXG5hOmhvdmVyIHsgXHJcblx0Y29sb3I6IGluaGVyaXQ7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5pbWcge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmFkZHJlc3Mge1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxudWwuaG9yaXpvbnRhbCA+IGxpIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9dGV4dF0sXHJcbmlucHV0W3R5cGU9bnVtYmVyXSxcclxuaW5wdXRbdHlwZT1lbWFpbF0sXHJcbnRleHRhcmVhIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xyXG59XHJcblxyXG46Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuaWZyYW1lIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uY29udGFpbiB7XHJcblx0bWF4LXdpZHRoOiAxNjAwcHg7XHJcblx0bWFyZ2luOiBhdXRvO1xyXG59XHJcblxyXG4uYmctZGVmYXVsdCB7IFxyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5cclxuLmJnLWNlbnRlciB7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG59XHJcblxyXG4uZmxleC1jZW50ZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYW5pbWF0ZSB7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG5cdC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHQtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyoqKioqKioqIElFIEZpeCBmb3IgT2JqZWN0IGZpdCAqKioqKioqKi9cclxuXHJcbi5vYmplY3QtZml0LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5vYmplY3QtZml0LWNvbnRhaW5lciA+IGltZyB7XHJcblx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uSUUtb2JqZWN0LWZpdCB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuXHJcbi5JRS1vYmplY3QtZml0ID4gaW1nIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4vKioqKioqKiogWW91dHViZSBFbWJlZHMgaW4gV1lTSVdZRydzICoqKioqKioqL1xyXG5cclxuLnZpZGVvLWNvbnRhaW5lciB7IFxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyBcclxuXHRoZWlnaHQ6IDA7IFxyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWF4LXdpZHRoOiAxMjAwcHg7XHJcblx0bWFyZ2luOiAxcmVtIGF1dG87XHJcbn1cclxuXHJcbi52aWRlby1jb250YWluZXIgaWZyYW1lLFxyXG4udmlkZW8tY29udGFpbmVyIG9iamVjdCxcclxuLnZpZGVvLWNvbnRhaW5lciBlbWJlZCxcclxuLnZpZGVvLWNvbnRhaW5lciB2aWRlb3sgXHJcblx0cG9zaXRpb246IGFic29sdXRlOyBcclxuXHR0b3A6IDA7IFxyXG5cdGxlZnQ6IDA7IFxyXG5cdHJpZ2h0OiAwO1xyXG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcblx0aGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xyXG5cdC52aWRlby1jb250YWluZXIge1xyXG5cdFx0bWFyZ2luOiAxLjVyZW0gYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi8qKioqKioqKiBTZWN0aW9uIFBhZGRpbmcgKioqKioqKiovXHJcblxyXG4ucC1kZWZhdWx0LFxyXG4ucGwtZGVmYXVsdCxcclxuLnB4LWRlZmF1bHQge1xyXG5cdHBhZGRpbmctbGVmdDogMS41cmVtO1xyXG59XHJcblxyXG4ucC1kZWZhdWx0LFxyXG4ucHItZGVmYXVsdCxcclxuLnB4LWRlZmF1bHR7XHJcblx0cGFkZGluZy1yaWdodDogMS41cmVtO1xyXG59XHJcblxyXG4ucC1kZWZhdWx0LFxyXG4ucHQtZGVmYXVsdCxcclxuLnB5LWRlZmF1bHR7XHJcblx0cGFkZGluZy10b3A6IDEuMjVyZW07XHJcbn1cclxuXHJcbi5wLWRlZmF1bHQsXHJcbi5wYi1kZWZhdWx0LFxyXG4ucHktZGVmYXVsdHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcclxufVxyXG5cclxuLnAtbmV3e1xyXG5cdHBhZGRpbmctdG9wOiAyLjVyZW07XHJcbn1cclxuXHJcbi5wLWVuZHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xyXG59XHJcblxyXG5AbWVkaWEoIG1pbi13aWR0aDogNTc2cHggKXtcclxuXHQucC1zbS1kZWZhdWx0LFxyXG5cdC5wbC1zbS1kZWZhdWx0LFxyXG5cdC5weC1zbS1kZWZhdWx0e1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcblx0fVxyXG5cclxuXHQucC1zbS1kZWZhdWx0LFxyXG5cdC5wci1zbS1kZWZhdWx0LFxyXG5cdC5weC1zbS1kZWZhdWx0e1xyXG5cdFx0cGFkZGluZy1yaWdodDogMS41cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtc20tZGVmYXVsdCxcclxuXHQucHQtc20tZGVmYXVsdCxcclxuXHQucHktc20tZGVmYXVsdHtcclxuXHRcdHBhZGRpbmctdG9wOiAxLjI1cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtc20tZGVmYXVsdCxcclxuXHQucGItc20tZGVmYXVsdCxcclxuXHQucHktc20tZGVmYXVsdHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtc20tbmV3e1xyXG5cdFx0cGFkZGluZy10b3A6IDIuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5wLXNtLWVuZHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAyLjVyZW07XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEoIG1pbi13aWR0aDogNzY4cHggKXtcclxuXHQucC1tZC1kZWZhdWx0LFxyXG5cdC5wbC1tZC1kZWZhdWx0LFxyXG5cdC5weC1tZC1kZWZhdWx0e1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcblx0fVxyXG5cclxuXHQucC1tZC1kZWZhdWx0LFxyXG5cdC5wci1tZC1kZWZhdWx0LFxyXG5cdC5weC1tZC1kZWZhdWx0e1xyXG5cdFx0cGFkZGluZy1yaWdodDogMS41cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtbWQtZGVmYXVsdCxcclxuXHQucHktbWQtZGVmYXVsdCxcclxuXHQucHQtbWQtZGVmYXVsdHtcclxuXHQgXHRwYWRkaW5nLXRvcDogMS4yNXJlbTtcclxuXHR9XHJcblxyXG5cdC5wLW1kLWRlZmF1bHQsXHJcblx0LnB5LW1kLWRlZmF1bHQsXHJcblx0LnBiLW1kLWRlZmF1bHR7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcclxuXHR9XHJcblxyXG5cdC5wLW1kLW5ld3tcclxuXHQgXHRwYWRkaW5nLXRvcDogMi41cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtbWQtZW5ke1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDIuNXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbkBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xyXG5cdC5wLWRlZmF1bHQsXHJcblx0LnBsLWRlZmF1bHQsXHJcblx0LnB4LWRlZmF1bHQsXHJcblxyXG5cdC5wLXNtLWRlZmF1bHQsXHJcblx0LnBsLXNtLWRlZmF1bHQsXHJcblx0LnB4LXNtLWRlZmF1bHQsXHJcblxyXG5cdC5wLW1kLWRlZmF1bHQsXHJcblx0LnBsLW1kLWRlZmF1bHQsXHJcblx0LnB4LW1kLWRlZmF1bHQsXHJcblxyXG5cdC5wLWxnLWRlZmF1bHQsXHJcblx0LnBsLWxnLWRlZmF1bHQsXHJcblx0LnB4LWxnLWRlZmF1bHR7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDEwJTtcclxuXHR9XHJcblxyXG5cdC5wLWRlZmF1bHQsXHJcblx0LnByLWRlZmF1bHQsXHJcblx0LnB4LWRlZmF1bHQsXHJcblxyXG5cdC5wLXNtLWRlZmF1bHQsXHJcblx0LnByLXNtLWRlZmF1bHQsXHJcblx0LnB4LXNtLWRlZmF1bHQsXHJcblxyXG5cdC5wLW1kLWRlZmF1bHQsXHJcblx0LnByLW1kLWRlZmF1bHQsXHJcblx0LnB4LW1kLWRlZmF1bHQsXHJcblxyXG5cdC5wLWxnLWRlZmF1bHQsXHJcblx0LnByLWxnLWRlZmF1bHQsXHJcblx0LnB4LWxnLWRlZmF1bHR7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAxMCU7XHJcblx0fVxyXG5cclxuXHQucC1kZWZhdWx0LFxyXG5cdC5weS1kZWZhdWx0LFxyXG5cdC5wdC1kZWZhdWx0LFxyXG5cclxuXHQucC1zbS1kZWZhdWx0LFxyXG5cdC5weS1zbS1kZWZhdWx0LFxyXG5cdC5wdC1zbS1kZWZhdWx0LFxyXG5cclxuXHQucC1tZC1kZWZhdWx0LFxyXG5cdC5weS1tZC1kZWZhdWx0LFxyXG5cdC5wdC1tZC1kZWZhdWx0LFxyXG5cclxuXHQucC1sZy1kZWZhdWx0LFxyXG5cdC5weS1sZy1kZWZhdWx0LFxyXG5cdC5wdC1sZy1kZWZhdWx0e1xyXG5cdCBcdHBhZGRpbmctdG9wOiAxLjI1cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtZGVmYXVsdCxcclxuXHQucHktZGVmYXVsdCxcclxuXHQucGItZGVmYXVsdCxcclxuXHJcblx0LnAtc20tZGVmYXVsdCxcclxuXHQucHktc20tZGVmYXVsdCxcclxuXHQucGItc20tZGVmYXVsdCxcclxuXHJcblx0LnAtbWQtZGVmYXVsdCxcclxuXHQucHktbWQtZGVmYXVsdCxcclxuXHQucGItbWQtZGVmYXVsdCxcclxuXHJcblx0LnAtbGctZGVmYXVsdCxcclxuXHQucHktbGctZGVmYXVsdCxcclxuXHQucGItbGctZGVmYXVsdHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtbmV3LFxyXG5cdC5wLWxnLW5ld3tcclxuXHQgXHRwYWRkaW5nLXRvcDogMi41cmVtO1xyXG5cdH1cclxuXHJcblx0LnAtZW5kLFxyXG5cdC5wLWxnLWVuZHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAyLjVyZW07XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEoIG1pbi13aWR0aDogMTIwMHB4ICl7XHJcblx0LnAteGwtZGVmYXVsdCxcclxuXHQucGwteGwtZGVmYXVsdCxcclxuXHQucHgteGwtZGVmYXVsdHtcclxuXHRcdHBhZGRpbmctbGVmdDogMTIlO1xyXG5cdH1cclxuXHJcblx0LnAteGwtZGVmYXVsdCxcclxuXHQucHIteGwtZGVmYXVsdCxcclxuXHQucHgteGwtZGVmYXVsdHtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDEyJTtcclxuXHR9XHJcblxyXG5cdC5wLXhsLWRlZmF1bHQsXHJcblx0LnB5LXhsLWRlZmF1bHQsXHJcblx0LnB0LXhsLWRlZmF1bHR7XHJcblx0IFx0cGFkZGluZy10b3A6IDIuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5wLXhsLWRlZmF1bHQsXHJcblx0LnB5LXhsLWRlZmF1bHQsXHJcblx0LnBiLXhsLWRlZmF1bHR7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xyXG5cdH1cclxuXHJcblx0LnAteGwtbmV3e1xyXG5cdCBcdHBhZGRpbmctdG9wOiA1cmVtO1xyXG5cdH1cclxuXHJcblx0LnAteGwtZW5ke1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDVyZW07XHJcblx0fVxyXG59XHJcblxyXG4vL0VkaXRzIHRvIEhvbWUgUGFnZSBPbmx5XHJcblxyXG4uaG9tZSB7XHJcblx0c2VjdGlvbjpmaXJzdC1jaGlsZCB7XHJcblx0XHRwYWRkaW5nLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiBIRUFERVIgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuaGVhZGVyIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VFRUVFRTtcclxuXHJcblx0Lm5hdmJhciB7XHJcblx0XHRtaW4taGVpZ2h0OiAxMDRweDtcclxuXHRcdG1heC13aWR0aDogMTM2MHB4O1xyXG5cclxuXHRcdC5oZWFkZXItbG9nbyB7XHJcblx0XHRcdHdpZHRoOiA3MnB4O1xyXG5cdFx0XHRtaW4td2lkdGg6IDE5N3B4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAxMzAwcHgpe1xyXG5cdFx0XHRcdG1pbi13aWR0aDogNzJweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QG1lZGlhKG1heC13aWR0aDogOTkxcHgpe1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dG9wOiAxNXB4O1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5hdmJhci10b2dnbGVyIHtcclxuXHRcdFx0d2lkdGg6IDkwcHg7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDEwNHB4O1xyXG5cdFx0XHRwYWRkaW5nOiAwIDIwcHg7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMTA0cHg7XHJcblx0XHRcdGNvbG9yOiAjNUY1RjVGO1xyXG5cdFx0fVxyXG5cclxuXHRcdCNtYWluTWVudSB7XHJcblxyXG5cdFx0XHQ+IHVsIHtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG5cdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXtcclxuXHRcdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjRUVFRUVFO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwIDMwcHg7XHJcblxyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDEyNTBweCl7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAxMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAyMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMHB4O1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDFweDtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzc0NTRGO1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAwO1xyXG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0XHRcdCAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0XHRcdFx0XHQgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHRcdFx0XHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSkgYWxsO1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSkgYWxsO1xyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHQmOmhvdmVyOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMzNzQ1NEY7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQjYm9vay1ub3cge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuXHRcdFx0QG1lZGlhKG1heC13aWR0aDogMTIwMHB4KXtcclxuXHRcdFx0XHRtaW4td2lkdGg6IDIyMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0XHRcdHRvcDogMjhweDtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuXHRcdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdFx0bWluLXdpZHRoOiB1bnNldDtcclxuXHRcdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHJcblx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdW5zZXQ7XHJcblx0XHRcdFx0XHRjb2xvcjogIzVGNUY1RjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHNwYW4ge1xyXG5cclxuXHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA1NzVweCl7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aSB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHJcblx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLnNob3cge1xyXG5cdFx0dG9wOiAwICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZS1uYXYge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0Y29sb3I6ICNFOUUyREU7XHJcblxyXG5cdC5jb250YWluIHtcclxuXHRcdG1heC13aWR0aDogMTM2MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0bWluLWhlaWdodDogMTA0cHg7XHJcblx0XHR6LWluZGV4OiAyO1xyXG5cclxuXHRcdC5oZWFkZXItbG9nbyB7XHJcblx0XHRcdHdpZHRoOiA3MnB4O1xyXG5cdFx0XHRtaW4td2lkdGg6IDE5N3B4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAxMzAwcHgpe1xyXG5cdFx0XHRcdG1pbi13aWR0aDogNzJweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QG1lZGlhKG1heC13aWR0aDogOTkxcHgpe1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRtaW4td2lkdGg6IHVuc2V0O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dG9wOiAxNXB4O1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0I2hvbWVNZW51IHtcclxuXHRcdFx0ZmxleDogMTtcclxuXHRcdFx0XHJcblx0XHRcdD4gdWwge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMTA0cHg7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG5cdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMCAyMHB4O1xyXG5cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpe1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IDAgNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAyMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRhIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogNXB4IDBweDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwcHggMTVweDtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdFx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0U5RTJERTtcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMDtcclxuXHRcdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdFx0XHQgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHRcdFx0XHRcdFx0ICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0XHRcdFx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAwLjVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpIGFsbDtcclxuXHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiAwLjVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpIGFsbDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0Jjpob3ZlcjphZnRlciB7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQjYm9vay1ub3ctaG9tZSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQ4cHg7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTUsNjksNzksIDAuNSk7XHJcblx0XHRcdGNvbG9yOiAjRTlFMkRFO1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0Y29sb3I6ICMzNzQ1NEY7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0U5RTJERTtcclxuXHRcdFx0XHRib3JkZXItY29sb3I6ICMzNzQ1NEY7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5ob21lIHtcclxuXHJcblx0PiBoZWFkZXIge1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuXHRcdHRvcDogLTEwNHB4O1xyXG5cclxuXHRcdEBtZWRpYShtYXgtd2lkdGg6IDExMDBweCl7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5ob21lLW5hdiB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHJcblx0XHRAbWVkaWEobWF4LXdpZHRoOiAxMTAwcHgpe1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxyXG4vKiBGT09URVIgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuZm9vdGVyIHtcclxuXHRtaW4taGVpZ2h0OiAxNjZweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHQgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFRUVFRUU7XHJcblxyXG5cdCNmb290ZXJNZW51IHtcclxuXHRcdG1hcmdpbjogMjBweDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHRAbWVkaWEobWF4LXdpZHRoOiA5OTJweCl7XHJcblx0XHRcdG1hcmdpbjogMTBweDtcclxuXHRcdH1cclxuXHJcblx0XHQgdWwge1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cclxuXHRcdFx0IGxpIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0bWFyZ2luOiA1cHggMjBweDtcclxuXHJcblx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogMTIwMHB4KXtcclxuXHRcdFx0XHRcdG1hcmdpbjogNXB4IDEwcHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA5OTJweCl7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XHJcblxyXG5cdFx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjMzc0NTRGO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0IH1cclxuXHRcdCB9XHJcblx0fVxyXG5cclxuXHQ+IGRpdiB7XHJcblx0XHRtYXJnaW46IDEycHggMjBweCAxNnB4O1xyXG5cclxuXHRcdC5mb290ZXItbG9nbyB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0QG1lZGlhKG1heC13aWR0aDogOTkycHgpe1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTSU5HTEUgUEFHSU5BVElPTiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2luYXRpb24ge1xuXG5cdC5oNXtcblx0XHRmb250LXdlaWdodDogMjAwO1xuXHR9XG5cblx0PiBkaXYge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdCAgICBmbGV4LXdyYXA6IHdyYXA7XG5cdCAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7XG5cdCAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7XG5cdCAgICB3aWR0aDogMTAwJTtcblx0ICAgIG1heC13aWR0aDogMTIwMHB4O1xuXHQgICAgcGFkZGluZzogMnJlbSAwIDEuNXJlbSAwO1xuXHQgICAgbWFyZ2luOiBhdXRvO1xuXHR9XG5cblx0PiBkaXYgPiBkaXYge1xuXHRcdGZsZXg6IDE7XG5cdCAgICBtYXgtd2lkdGg6IDM2MHB4O1xuXG5cdCAgICBAbWVkaWEoIG1heC13aWR0aDogNzY4cHggKXtcbiAgICBcdCAgICBmbGV4OiAxMDAlO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdCAgICB9XG5cblx0ICAgIFx0aDUge1xuXHRcdFx0ICAgIEBtZWRpYSggbWF4LXdpZHRoOiA3NjhweCApe1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBcdFx0XHR9XG5cdCAgICBcdH1cblx0fVxuXHQucHJldmlvdXMsIC5uZXh0IHtcblx0XHRzcGFuIHtcblx0XHR9XG5cdH1cblxuXHQucHJldmlvdXMge1xuXHRcdHNwYW4ge1xuXHRcdFx0LmZhIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuc2hhcmUtYnV0dG9ucyB7XG5cblx0XHQ+IHVsIHtcblx0XHRcdD4gbGl7XG5cdFx0XHRcdGF7XG5cdFx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuXHRcdFx0XHRcdGNvbG9yOiAjQjhCOEI3O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICNEREREREQ7XG5cdFx0XHRcdCAgICB3aWR0aDogNDhweDtcblx0XHRcdFx0ICAgIGhlaWdodDogNDhweDtcblx0XHRcdFx0ICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuXHRcdFx0XHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHQgICAgbWFyZ2luOiAwIDAuNXJlbTtcblx0XHRcdFx0fVxuXG5cdFx0XHQgICAgYTpob3Zlcntcblx0XHRcdCAgICBcdGJhY2tncm91bmQtY29sb3I6ICM5NTU3NjM7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgIzk1NTc2Mztcblx0XHRcdCAgICB9XG5cblx0XHRcdFx0LmZhLWZhY2Vib29rOmhvdmVye1xuXHRcdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogIzNCNTk5ODtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjM0I1OTk4O1xuXHRcdFx0ICAgIH1cblxuXHRcdFx0ICAgIC5mYS10d2l0dGVyOmhvdmVye1xuXHRcdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogIzAwQUNFRDtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMDBBQ0VEO1xuXHRcdFx0ICAgIH1cblxuXHRcdFx0ICAgIC5mYS1waW50ZXJlc3Q6aG92ZXJ7XG5cdFx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IyMDI3O1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICNDQjIwMjc7XG5cdFx0XHQgICAgfVxuXG5cdFx0XHQgICAgLmZhLWxpbmtlZGluOmhvdmVye1xuXHRcdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogIzAwN0JCNjtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMDA3QkI2O1xuXHRcdFx0ICAgIH1cblx0XHRcdH0gICAgXG5cdFx0fVxuXG5cdFx0QG1lZGlhKCBtYXgtd2lkdGg6IDc2OHB4ICl7XG4gICAgXHQgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblx0ICAgIH1cblx0fVxuXHQubmV4dCB7XG5cblx0XHQudW5kZXJsaW5lLXRpdGxlOmFmdGVyIHtcblx0XHRcdGxlZnQ6IHVuc2V0O1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0c3BhbiB7XG5cblx0XHRcdC5mYSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc2hhcmUtYnV0dG9ucyB7XG5cblx0PiB1bCB7XG5cdFx0PiBsaXtcblx0XHRcdGF7XG5cdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcblx0XHRcdFx0Y29sb3I6ICNCOEI4Qjc7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjREREREREO1xuXHRcdFx0ICAgIHdpZHRoOiA0OHB4O1xuXHRcdFx0ICAgIGhlaWdodDogNDhweDtcblx0XHRcdCAgICBsaW5lLWhlaWdodDogNDZweDtcblx0XHRcdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHQgICAgbWFyZ2luOiAwIDAuNXJlbTtcblx0XHRcdH1cblxuXHRcdCAgICBhOmhvdmVye1xuXHRcdCAgICBcdGJhY2tncm91bmQtY29sb3I6ICM5NTU3NjM7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjOTU1NzYzO1xuXHRcdCAgICB9XG5cblx0XHRcdC5mYS1mYWNlYm9vazpob3Zlcntcblx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjM0I1OTk4O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgIzNCNTk5ODtcblx0XHQgICAgfVxuXG5cdFx0ICAgIC5mYS10d2l0dGVyOmhvdmVye1xuXHRcdCAgICBcdGJhY2tncm91bmQtY29sb3I6ICMwMEFDRUQ7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMDBBQ0VEO1xuXHRcdCAgICB9XG5cblx0XHQgICAgLmZhLXBpbnRlcmVzdDpob3Zlcntcblx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IyMDI3O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgI0NCMjAyNztcblx0XHQgICAgfVxuXG5cdFx0ICAgIC5mYS1saW5rZWRpbjpob3Zlcntcblx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3QkI2O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgIzAwN0JCNjtcblx0XHQgICAgfVxuXHRcdH0gICAgXG5cdH1cblxuXHRAbWVkaWEoIG1heC13aWR0aDogNzY4cHggKXtcblx0ICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLyogSEVSTyAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4jaGVybyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0PiBkaXYge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblxyXG5cdFx0LmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgICAgICAgICBib3R0b206IDI4cHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA5OTJweCl7XHJcblx0XHRcdFx0Ym90dG9tOiAxMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA1NzZweCl7XHJcblx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmNhcm91c2VsLWlubmVyIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHJcblx0XHRcdC5jYXJvdXNlbC1pdGVtIHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblxyXG5cdFx0XHRcdGltZyB7XHJcblx0XHRcdFx0XHRtYXgtaGVpZ2h0OiAxMDAlOyAgXHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7IFxyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlOyAgXHJcblx0XHRcdFx0XHR0b3A6IDA7ICBcclxuXHRcdFx0XHRcdGJvdHRvbTogMDsgIFxyXG5cdFx0XHRcdFx0bGVmdDogMDsgIFxyXG5cdFx0XHRcdFx0cmlnaHQ6IDA7ICBcclxuXHRcdFx0XHRcdG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICBcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7ICBcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7ICBcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblx0XHRcdH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcblx0XHQuaGVyby1jYXB0aW9uIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuaGVyby1sb2dvIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgKyA3NXB4KTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcblx0fVxyXG59XHJcblxyXG4jaGVyby52aWRlby1oZXJvIHtcclxuXHJcblx0PiBkaXYge1xyXG5cdFx0cG9zaXRpb246IHVuc2V0O1xyXG5cdFx0d2lkdGg6IHVuc2V0O1xyXG5cdFx0aGVpZ2h0OiB1bnNldDtcclxuXHR9XHJcblxyXG5cdC52aWRlby1jb250YWluZXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICBcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgICAgIH1cclxuXHR9XHJcblxyXG4gICAgLmhlcm8tY2FwdGlvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kaXZpZGUge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQgLmRpdmlkZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cdEBtZWRpYSggbWF4LXdpZHRoOiAxMTAwcHggKXtcclxuXHRcdGhlaWdodDogdW5zZXQ7XHJcblx0fVxyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiBTSU1QTEUgQ09OVEVOVCAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uc2ltcGxlLWNvbnRlbnQge1xyXG5cclxuXHQ+IGRpdiB7XHJcblx0XHRtYXgtd2lkdGg6IHVuc2V0O1xyXG5cdFx0d2lkdGg6IDc1JTtcclxuXHRcdG1hcmdpbjogYXV0bztcclxuXHJcblx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDhweDtcclxuXHRcdH1cclxuXHJcblx0XHQubGVmdCwgLnJpZ2h0IHtcclxuXHRcdFx0PiBoMSxcclxuXHRcdFx0PiBoMixcclxuXHRcdFx0PiBoMyxcclxuXHRcdFx0PiBoNCxcclxuXHRcdFx0PiBoNSxcclxuXHRcdFx0PiBoNixcclxuXHRcdFx0PiBwLFxyXG5cdFx0XHQ+IHVse1xyXG5cdFx0XHRcdG1hcmdpbjogMXJlbSAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG5cdFx0XHRcdHRleHQtYWxpZ24tbGFzdDogbGVmdDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aDEge1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiA1cHg7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcclxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRoMiB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAyLjVyZW07XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogNXB4O1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAxMDA7XHJcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcblx0XHRcdFx0QG1lZGlhKCBtYXgtd2lkdGg6IDc2OHB4ICl7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDJyZW07XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRmaWd1cmUge1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDJyZW07XHJcblxyXG5cdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGltZyB7XHJcblx0XHRcdFx0XHR3aWR0aDogMjYwcHg7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDI2MHB4O1xyXG5cdFx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdDpub3QobGkpID4gYTpub3QoLmJ0bil7XHJcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC52aWRlby1jb250YWluZXJ7XHJcblx0XHRcdFx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5yaWdodCB7XHJcblxyXG5cdFx0XHQuYnRuLWhvbGRlciB7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhKCBtaW4td2lkdGg6IDk5MnB4ICl7XHJcblx0XHQ+IGRpdiB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRcdFx0LmxlZnQsIC5yaWdodCB7XHJcblxyXG5cdFx0XHRcdC52aWRlby1jb250YWluZXJ7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubGVmdCB7XHJcblx0XHRcdFx0d2lkdGg6IDQwJTtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRoMSB7XHJcblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogNXB4O1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcclxuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQucmlnaHQge1xyXG5cdFx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBGRUFUVVJFIEJPQVJEICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mZWF0dXJlcy1ibG9jayB7XG5cblx0LmZlYXR1cmUtcm93IHtcblx0XHRtYXJnaW46IGF1dG87XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QG1lZGlhKG1pbi13aWR0aDogNzY5cHgpe1xuXHRcdFx0d2lkdGg6IDc1JTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0fVxuXG5cdFx0QG1lZGlhKG1pbi13aWR0aDogOTkycHgpe1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdH1cblxuXHRcdC5mdC1jb250ZW50IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDJyZW0gMDtcblx0XHRcdGZvbnQtc2l6ZTogMThweDtcblxuXHRcdFx0QG1lZGlhKG1pbi13aWR0aDogNTc2cHgpe1xuXHRcdFx0XHRwYWRkaW5nOiAyLjVyZW07XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhKG1pbi13aWR0aDogOTkycHgpe1xuXHRcdFx0XHRwYWRkaW5nOiAwcHggMHB4IDBweCAxNnB4O1xuXHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogNSU7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYShtaW4td2lkdGg6IDEzMDBweCl7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMCU7XG5cdFx0XHR9XG5cblx0XHRcdD4gZGl2IHtcblxuXHRcdFx0XHRwID4gYTpub3QoLmJ0bikge1xuXHRcdFx0XHQgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYnRuLWhvbGRlciB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogaW5pdGlhbDtcblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA1NzZweCl7XG5cdFx0XHRcdFx0XHRcdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQ+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0PiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCk6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGJsb2NrcXVvdGUge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0XHRtYXJnaW46IDAgMTZweCAxNnB4O1xuXG5cdFx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogOTkycHgpe1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIDMycHggMzJweDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9xdW90YXRpb24tZ3J5LnN2Zyk7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDMxcHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTMxcHg7XG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAwLjM7XG5cdFx0XHRcdFx0IH1cblx0IFxuXHRcdFx0XHRcdCAmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3F1b3RhdGlvbi1ncnkuc3ZnKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0XHRcdFx0XHR3aWR0aDogMzFweDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwcHg7XG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAwLjM7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXHRcdFx0XHRcdCB9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc3EtY29udGFpbiB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0QG1lZGlhKG1pbi13aWR0aDogNzY4cHgpe1xuXHRcdFx0XHR3aWR0aDogNjAlO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KXtcblx0XHRcdFx0bWFyZ2luOiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogNDUlO1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEobWluLXdpZHRoOiAxMzAwcHgpe1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwMCU7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5mdC1pbWFnZSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblxuXHRcdFx0XHQuY2Fyb3VzZWwtaW5uZXIge1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6bnRoLWNoaWxkKDJuKSB7XG5cblx0XHRcdEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KXtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdFx0fVxuXHRcblx0XHRcdC5mdC1jb250ZW50IHtcblx0XG5cdFx0XHRcdEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KXtcblx0XHRcdFx0XHRwYWRkaW5nOiAwcHggMTZweCAwcHggMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwJTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDUlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QG1lZGlhKG1pbi13aWR0aDogMTMwMHB4KXtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdFx0fVxuXG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBsaXN0LWNvbnRlbnQgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmxpc3QtY29udGVudCB7XG5cblx0PiBoMiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjRweDtcblx0XHRsZXR0ZXItc3BhY2luZzogNXB4O1xuXHRcdGZvbnQtd2VpZ2h0OiAxMDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fVxuXG5cdHVsIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNUY1RjVGO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblxuXHRcdGxpIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtYXJnaW46IDE2cHggNDBweDtcblxuXHRcdFx0QG1lZGlhKG1heC13aWR0aDogMTIwMHB4KSB7XG5cdFx0XHRcdG1hcmdpbjogMTZweCAyMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuXHRcdFx0XHRmbGV4LWJhc2lzOiAyNSU7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KSB7XG5cdFx0XHRcdGZsZXgtYmFzaXM6IDUwJTtcblx0XHRcdH1cblxuXHRcdFx0aDIge1xuXHRcdFx0XHRmb250LXNpemU6IDIuNXJlbTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLyogVElMRVMgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmxpbmstdGlsZXN7XHJcblx0bWFyZ2luLXRvcDogLTFyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogLTFyZW07XHJcblx0cGFkZGluZy1sZWZ0OiAxcmVtO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDFyZW07XHJcblxyXG5cdD4gdWx7XHJcblx0XHRkaXNwbGF5OiBmbGV4OyAgIFxyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQudGlsZXtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAxcmVtIDA7XHJcblx0XHRwYWRkaW5nOiAwIDAuNXJlbTtcclxuXHJcblx0XHRhe1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0XHQmOmFmdGVye1xyXG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRhOjpiZWZvcmV7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCAwLCAwLCAwLCAwLjMgKTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHRcdH1cclxuXHJcblx0XHRhOmhvdmVyOjpiZWZvcmV7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoIDAsIDAsIDAsIDAuNSApO1xyXG5cdFx0fVxyXG5cclxuXHRcdC50aWxlLWltYWdle1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHRoMiB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0Zm9udC1zaXplOiAyNHB4O1xyXG5cdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHRjb2xvcjogI0U5RTJERTtcclxuXHRcdFx0cGFkZGluZzogMTVweDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSggbWluLXdpZHRoOiA1NzZweCApe1xyXG5cdFx0LnRpbGV7XHJcblx0XHRcdHdpZHRoOiA1MCU7IC8qcmVzcG9uc2l2ZSBhbGwgY29scyBjb2xsYXBzZSB0byAyIGNvbCBvbiBzbSBzY3JlZW4qL1xyXG5cdFx0XHRwYWRkaW5nOiAwIDFyZW07XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAbWVkaWEoIG1pbi13aWR0aDogOTkycHggKXtcclxuXHRcdHBhZGRpbmctbGVmdDogY2FsYygxMiUgLSAxcmVtKTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IGNhbGMoMTIlIC0gMXJlbSk7XHJcblxyXG5cdFx0LnRpbGV7IC8qIGJ5LTMgaXMgZGVmYXVsdCB3aGljaCBpcyB3aHkgdGhlcmUgaXMgbm8gLmJ5LTMgY2xhc3MgKi9cclxuXHRcdFx0bWluLXdpZHRoOiAzMy4zMzMzMyU7XHJcblx0XHRcdG1heC13aWR0aDogMzMuMzMzMzMlO1xyXG5cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSggbWluLXdpZHRoOiAxMjAwcHggKXtcclxuXHRcdC5ieS00e1xyXG5cdFx0XHQudGlsZXtcclxuXHRcdFx0XHRtaW4td2lkdGg6IDI1JTtcclxuXHRcdFx0XHRtYXgtd2lkdGg6IDI1JTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5ieS01e1xyXG5cdFx0XHQudGlsZXtcclxuXHRcdFx0XHRtaW4td2lkdGg6IDIwJTtcclxuXHRcdFx0XHRtYXgtd2lkdGg6IDIwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi8qIDQuMTUgVEFCIENPTlRFTlQgKi9cclxuXHJcbi50YWJzIHtcclxuXHJcblx0ZGl2IHtcclxuXHJcblx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0LmlucHV0LXRhYiB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHQgfVxyXG5cdCBcclxuXHRcdCBsYWJlbCB7XHJcblx0XHRcdCAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHQgIG1hcmdpbjogMDtcclxuXHRcdFx0ICBwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG5cdFx0XHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0ICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdCAgZm9udC1zaXplOiAyMHB4O1xyXG5cdCBcclxuXHRcdFx0IEBtZWRpYSAoIG1heC13aWR0aDogNTc1cHggKXtcclxuXHRcdFx0XHQgZm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHQgfVxyXG5cclxuXHRcdCB9XHJcblxyXG5cdFx0IGlucHV0ICsgbGFiZWwge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogNzVweDtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDEzNTBweCl7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDY1cHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDEzMDBweCl7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDQwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDExNTBweCl7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDExMDBweCl7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiAxMDMwcHgpe1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0fVx0XHRcdFxyXG5cclxuXHRcdFx0QG1lZGlhKG1heC13aWR0aDogODUwcHgpe1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHRcdG1hcmdpbjogMCAyMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKCBtYXgtd2lkdGg6IDU3NXB4ICl7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdG1hcmdpbjogMCA1cHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0VFRUVFRTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogNTAlO1xyXG5cclxuXHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgMjVweCAwIDA7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA1NzVweCl7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgNXB4IDAgMDtcclxuXHRcdFx0XHR9XHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0IH1cclxuXHQgXHJcblx0XHQgbGFiZWw6aG92ZXIge1xyXG5cdFx0XHQgY3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0IH1cclxuXHQgXHJcblx0XHQgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsIHsgXHJcblx0XHRcdCBjb2xvcjogdW5zZXQ7XHJcblx0XHQgfVxyXG5cdCBcclxuXHRcdCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXHJcblx0XHQgaW5wdXQ6aG92ZXIgKyBsYWJlbDphZnRlciB7IFxyXG5cdFx0XHQgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XHJcblx0XHQgfVxyXG5cdCBcclxuXHRcdCAudGFiLWl0ZW0ge1xyXG5cdFx0XHQgZGlzcGxheTogbm9uZTtcclxuXHRcdFx0IHBhZGRpbmc6IDQwcHggMCAwO1xyXG5cdCBcclxuXHRcdFx0IC5sZWZ0IHtcclxuXHRcdFx0XHRmbGV4OiA1MCU7XHJcblxyXG5cdFx0XHRcdC5zcS1jb250YWluIHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdHdpZHRoOiA5MCU7XHJcblxyXG5cdFx0XHRcdFx0I21hcCB7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFxyXG5cdFx0XHRcdFx0JjphZnRlcntcclxuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQuZnQtaW1hZ2Uge1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcclxuXHRcdFx0XHRcdFx0LmNhcm91c2VsLWlubmVyIHtcclxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblxyXG5cdFx0XHRcdFx0XHRcdC5jYXJvdXNlbC1jb250cm9sLXByZXYsXHJcblx0XHRcdFx0XHRcdFx0LmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XHJcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0LmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcclxuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMzJweDtcclxuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxOXB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0bGVmdDogMTZweDtcclxuXHRcdFx0XHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9hcnJvdy13aGl0ZS5zdmcpO1xyXG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XHJcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0XHR0b3A6IGNhbGMoNTAlIC0gMTZweCk7XHJcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDMycHg7XHJcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTlweDtcclxuXHRcdFx0XHRcdFx0XHRcdHJpZ2h0OiAxNnB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvYXJyb3ctd2hpdGUuc3ZnKTtcclxuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHQuY2Fyb3VzZWwtaXRlbSB7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0IH1cclxuXHJcblx0XHRcdCAucmlnaHQge1xyXG5cdFx0XHRcdGZsZXg6IDUwJTtcclxuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHJcblx0XHRcdFx0aDIsIGgzLCBoNCwgaDUge1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMnJlbTtcclxuXHJcblx0XHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHAge1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjoganVzdGlmeTtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ24tbGFzdDogbGVmdDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuXHRcdFx0XHRcdG1hcmdpbjogNDBweCAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0IH1cclxuXHRcdCB9XHJcblx0IFxyXG5cdFx0ICN0YWItMTpjaGVja2VkIH4gLnRhYi0xLFxyXG5cdFx0ICN0YWItMjpjaGVja2VkIH4gLnRhYi0yLFxyXG5cdFx0ICN0YWItMzpjaGVja2VkIH4gLnRhYi0zLFxyXG5cdFx0ICN0YWItNDpjaGVja2VkIH4gLnRhYi00LFxyXG5cdFx0ICN0YWItNTpjaGVja2VkIH4gLnRhYi01LFxyXG5cdFx0ICN0YWItNjpjaGVja2VkIH4gLnRhYi02LFxyXG5cdFx0ICN0YWItNzpjaGVja2VkIH4gLnRhYi03LFxyXG5cdFx0ICN0YWItODpjaGVja2VkIH4gLnRhYi04IHtcclxuXHRcdFx0IGRpc3BsYXk6IGZsZXg7XHJcblxyXG5cdFx0XHQgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpe1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdH1cclxuXHRcdCB9XHJcblx0fVxyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogR0FMTEVSWSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2xpY2stZ2FsbGVyeSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXHRtYXJnaW46IDAgYXV0bztcbiAgXHRvdmVyZmxvdzogaGlkZGVuO1xuICBcdHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG5cdC5zbGljay1zbGlkZXtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgXHRtYXJnaW46IDAgMC4yNXJlbTtcblxuXHRcdDpob3Zlcntcblx0XHRcdG9wYWNpdHk6IDAuNjtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stc2xpZGU6OmJlZm9yZXtcblx0fVxuXG5cdC5zbGljay1zbGlkZTpob3Zlcjo6YmVmb3Jle1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0Y29udGVudDogJysnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogMnJlbTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggLTUwJSwgLTUwJSApO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bGluZS1oZWlnaHQ6IDNyZW07XG5cdFx0d2lkdGg6IDNyZW07XG5cdH1cblxuXHQuc2xpY2stcHJldixcblx0LnNsaWNrLW5leHR7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cblx0LnNsaWNrLXByZXZ7XG5cdFx0cGFkZGluZy1yaWdodDogMXJlbTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHR9XG5cblx0LnNsaWNrLW5leHR7XG5cdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHR9XG5cblx0aW1nIHtcblx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRoZWlnaHQ6IDIxdnc7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRAbWVkaWEoIG1heC13aWR0aDogNjAwcHggKXtcblx0XHRcdGhlaWdodDogMzB2dztcblx0XHR9XG5cdH1cbn1cblxuc2VjdGlvbjpub3QoLnNpbXBsZS1jb250ZW50KXtcblx0LnNsaWNrLWdhbGxlcnl7XG5cblx0XHRAbWVkaWEoIG1pbi13aWR0aDo5OTJweCApe1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEzcmVtO1xuXHRcdH1cblx0fVxufVxuXG4uc2ltcGxlLWNvbnRlbnR7XG5cdC5zbGljay1nYWxsZXJ5e1xuXHRcdGltZyB7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdGhlaWdodDogMTZ2dztcblxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KXtcblx0XHRcdFx0aGVpZ2h0OiAyMHZ3O1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEoIG1heC13aWR0aDogNjAwcHggKXtcblx0XHRcdFx0aGVpZ2h0OiAzMHZ3O1xuXHRcdFx0fVxuXHRcdH1cblx0fVx0XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUEFSVE5FUlMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhcnRuZXJze1xuXHQ+IGRpdntcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHQvLyB3aWR0aDogNzUlO1xuXHRcdC8vIG1hcmdpbjogYXV0bztcblx0XHRcblx0XHQucGFydG5lcntcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRwYWRkaW5nOiAycmVtO1xuXG5cdFx0XHQ+IGltZ3tcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XHRcblx0XHR9XG5cblx0XHRAbWVkaWEoIG1pbi13aWR0aDogNzY4cHggKXtcblx0XHRcdC5wYXJ0bmVye1xuXHRcdFx0XHR3aWR0aDogMjUlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLyogUE9TVCBTTElERVIqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucG9zdC1zbGlkZXIge1xyXG5cclxuICBoMiB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMTY1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgcGFkZGluZzogMCA1OHB4O1xyXG4gIH1cclxuXHJcbiAgLnNsaWNrLXBvc3Qge1xyXG4gICAgbWF4LXdpZHRoOiAxMTY1cHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwYWRkaW5nOiAwIDUwcHg7XHJcblxyXG4gICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgIHdpZHRoOiAxOXB4O1xyXG4gICAgICBsZWZ0OiAzMHB4O1xyXG4gICAgICB0b3A6IGNhbGMoNTAlIC0gODRweCk7XHJcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9hcnJvdy5zdmcpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IFxyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA2NHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1uZXh0IHtcclxuICAgICAgcmlnaHQ6IDMwcHg7XHJcbiAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWNlbnRlciB7XHJcblxyXG4gICAgICAuc2xpZGUge1xyXG4gICAgICAgIG1hcmdpbjogMCA4cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuICAgICAgICAgIG1heC13aWR0aDogMzUwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA0ODBweCl7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDUlO1xyXG4gICAgICAgICAgbWluLWhlaWdodDogODBweDtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM1RjVGNUY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE3JTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBDT05UQUNUIERFVEFJTFMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRhY3QtZGV0YWlscyAudW5kZXJsaW5lLXRpdGxle1xuXHRtYXgtd2lkdGg6IDc1JTtcblx0bWFyZ2luOiBhdXRvO1xufVxuXG4uY29udGFjdC1kZXRhaWxzIC5jb250YWN0e1xuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNCQkMxQkY7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNCQkMxQkY7XG5cdG1pbi13aWR0aDogMjUlO1xuXHRtYXgtd2lkdGg6IDQwMHB4O1xuXHRtYXJnaW46IGF1dG87XG59XG5cbkBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xuXHQuY29udGFjdC1kZXRhaWxzIC51bmRlcmxpbmUtdGl0bGV7XG5cdFx0bWF4LXdpZHRoOiA1NCU7XG5cdH1cblxuXHQuY29udGFjdC1kZXRhaWxzIC5jb250YWN0e1xuXHRcdG1heC13aWR0aDogaW5oZXJpdDtcblx0fVxuXG5cdC5jb250YWN0LWRldGFpbHMgPiBkaXYgPiAuY29udGFjdDpsYXN0LWNoaWxke1xuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIENBTEwgVE8gQUNUSU9OIChDVEEpICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5DVEEucGFkZGVke1xuXHRtYXJnaW46IGF1dG87XG5cdHdpZHRoOiBjYWxjKCAxMDAlIC0gNDBweCApO1xuXHRtYXgtd2lkdGg6IDEyMDBweDtcbn1cblxuLkNUQXtcblx0cGFkZGluZzogMS41cmVtO1xuXG5cdC5jYXB0aW9ue1xuXHRcdGRpdntcblx0XHRcdG1heC13aWR0aDogNjUwcHg7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXHRcdH1cblx0fVxuXG5cdC5idG4taG9sZGVyIHtcblx0XHQ+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdH1cblxuXHRcdD4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpOmhvdmVye1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhKCBtaW4td2lkdGg6IDk5MnB4ICl7XG5cdFx0cGFkZGluZzogNXJlbTtcblx0fVxufVxuXG4uQ1RBLmJnLWltYWdle1xuXHRjb2xvcjogI2ZmZjtcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuXHQuYnRuLWhvbGRlciB7XG5cdFx0PiAuYnRue1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblxuXHRcdD4gLmJ0bjpob3Zlcntcblx0XHRcdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cblx0XHQ+IC5idG46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtcblx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblxuXHRcdD4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpOmhvdmVye1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLkNUQSA+IC5jb250ZW50e1xuXHQgICAgcGFkZGluZzogNXJlbSAwO1xuXHQgICAgbWluLWhlaWdodDogYXV0bztcblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIElOU1RBR1JBTSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZmVlZC1yb3d7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1heC13aWR0aDogNjQwcHg7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmZlZWR7XG4gIHdpZHRoOiAzMy4zMzMzJTtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG4uc29jaWFsLWZlZWQgZmlndXJle1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLnNvY2lhbC1mZWVkIGZpZ2NhcHRpb257XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjUpO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5zb2NpYWwtZmVlZCBmaWdjYXB0aW9uOmhvdmVye1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGlrZXN7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAyMHB4O1xuICByaWdodDogMjBweDtcbn1cblxuQG1lZGlhKCBtaW4td2lkdGg6IDE2MDBweCApe1xuICAuc29jaWFsLWZlZWQgZmlnY2FwdGlvbntcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG5AbWVkaWEoIG1pbi13aWR0aDogOTkzcHggKSBhbmQgKCBtYXgtd2lkdGg6IDE0MDBweCApe1xuICAuc29jaWFsLWZlZWQgZmlnY2FwdGlvbntcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xuICAuZmVlZC1yb3d7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnNvY2lhbC1mZWVkIGZpZ2NhcHRpb257XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5mZWVke1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiBURVNUSU1PTklBTFMgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnRlc3RpbW9uaWFscyB7XHJcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZCAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuY2Fyb3VzZWwge1xyXG4gICAgbWF4LWhlaWdodDogNTUwcHg7XHJcbiAgICBoZWlnaHQ6IDYwdmg7XHJcblxyXG4gICAgLmNhcm91c2VsLWluZGljYXRvcnMge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJvdXNlbC1pbm5lciB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgIC5jYXJvdXNlbC1pdGVtIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzlweDtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHJcbiAgICAgICAgICBibG9ja3F1b3RlIHtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvcXVvdGF0aW9uLnN2Zyk7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3F1b3RhdGlvbi5zdmcpO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICAgICAgICB3aWR0aDogMzhweDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjYwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICBjb2xvcjogI0U5RTJERTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpe1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA1NzZweCl7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIE1BUCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubWFwLWFyZWF7XG5cdCNtYXB7XG5cdFx0aGVpZ2h0OiA0MHZ3O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogYXV0bztcblxuXHRcdEBtZWRpYSggbWluLXdpZHRoOiAxMjAwcHggKXtcblx0XHRcdGhlaWdodDogMzB2dztcblx0XHRcdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRcdFx0bWF4LXdpZHRoOiAxMjAwcHg7XG5cdFx0fVxuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiBQcmVzcyBMb29wICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wcmVzcy1sb29wIHtcclxuXHJcblx0PiBkaXYge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHJcblx0XHRhcnRpY2xlIHtcclxuXHRcdFx0ZmxleDogMTtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuXHRcdFx0LnByZXNzLWNvbnRlbnQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAxNTBweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQudGl0bGUge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdFx0XHRcdFx0bWluLWhlaWdodDogNTBweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC5pbWcge1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAzMDBweDtcclxuXHRcdFx0XHRcdHdpZHRoOiAzMDBweDtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAyMHB4IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4vKiBQT1NUIExPT1AgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBvc3QtbG9vcHtcblx0bWF4LXdpZHRoOiAxMjAwcHg7XG5cdG1hcmdpbjogYXV0bztcblxuXHRhcnRpY2xle1xuXHRcdC5wb3N0LWNvbnRlbnR7XG5cdFx0XHRtYXJnaW46IDNyZW07XG5cdFx0fVxuXG5cdFx0LnBvc3QtaW1hZ2V7XG5cdFx0XHRoZWlnaHQ6IDU0dnc7XG5cdFx0XHRtYXgtaGVpZ2h0OiAzNzBweDtcblx0XHR9XG5cblx0XHRAbWVkaWEoIG1pbi13aWR0aDogOTkycHggKXtcblx0XHRcdG1hcmdpbjogNnJlbSAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuXHRcdFx0PiBkaXZ7XG5cdFx0XHRcdGZsZXg6IDE7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMXJlbTtcblx0XHRcdH1cblxuXHRcdFx0LnBvc3QtY29udGVudHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRcdFx0LmJ0bi1saW5re1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5wb3N0LWltYWdle1xuXHRcdFx0XHRoZWlnaHQ6IDM2dnc7XG5cdFx0XHR9XHRcdFx0XHRcblx0XHR9XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbi8qIFNJTkdMRVMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpbmdsZSB7XG5cbiAgIC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIFxuICAgICAgaW1nIHtcbiAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgfVxuXG4gICAuY29udGVudCB7XG5cbiAgICAgIHAge1xuICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBmaWd1cmUge1xuXG4gICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG59XG4iLCIuc2luZ2xlLXByb3BlcnR5IHtcclxuICAgXHJcbiAgIG1haW4ge1xyXG5cclxuICAgICAgLmNvbnRhaW4ge1xyXG5cclxuICAgICAgICAgLnRvcC1iYXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpe1xyXG4gICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmxlZnQge1xyXG4gICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG5cclxuICAgICAgICAgICAgICAgaDEsIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkycHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucmlnaHQge1xyXG4gICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcblxyXG4gICAgICAgICAucHJvcC1sYXlvdXQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG5cclxuICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNUY1RjVGO1xyXG4gICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAubGF5b3V0IHtcclxuICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDE2cHggMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcblxyXG4gICAgICAgICAuZmVhdHVyZXMge1xyXG5cclxuICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNUY1RjVGO1xyXG4gICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICA+IGRpdiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjAlIC0gNXB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxNnB4IDVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG5cclxuICAgICAgICAgLmJyb2NodXJlIHtcclxuXHJcbiAgICAgICAgICAgID4gYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAgICBjb2xvcjogIzVGNUY1RjtcclxuICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM1RjVGNUY7XHJcblxyXG4gICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA1NzVweCl7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMzYwcHgpe1xyXG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvcm0ge1xyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xyXG5cclxuICAgICAgICAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW47XHJcbiAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAuY2xvc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgIHRvcDogMzYuNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICByaWdodDogMjcuNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvY2xvc2Uuc3ZnKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG5cclxuICAgICAgICAgLmJvb2tpbmcge1xyXG5cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XHJcbiAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgIH1cclxufSIsIi5wYWdlLXRlbXBsYXRlLXByb3BlcnRpZXMtdGVtcGxhdGUge1xyXG4gICBcclxuICAgbWFpbiB7XHJcblxyXG4gICAgICAuY29udGFpbiB7XHJcblxyXG4gICAgICAgICAudG9wLWJhciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMiU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIlO1xyXG5cclxuICAgICAgICAgICAgPiBkaXYge1xyXG5cclxuICAgICAgICAgICAgICAgaDEsIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkycHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTJweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuXHJcbiAgICAgICAgIC5wcm9wZXJ0eS1sb29wIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyJTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMiU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG4gICAgICAgICAgICBmb3JtIHtcclxuICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAgICAgICAgICAgIHVsIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNTc1cHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzVweDtcclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgIFxyXG4gICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM1RjVGNUY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM1RjVGNUY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9hcnJvd2Rvd24uc3ZnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYmxvY2sge1xyXG4gICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcclxuICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoOCwgNXZ3KTtcclxuICAgICAgICAgICAgICAgZ3JpZC1nYXA6IDhweDtcclxuICAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMDtcclxuXHJcbiAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MnB4KXtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICBhcnRpY2xlIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MnB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gOHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNHB4O1xyXG4gICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA1NzVweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgLnByb3BlcnR5LWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgIC5vdmVybGF5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC41cyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNFOUUyREU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTQwMHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMjAwcHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDE0MDBweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNHB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEyMDBweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNFOUUyREU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0U5RTJERTtcclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0U5RTJERTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRTlFMkRFOyAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7ICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTQwMHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA0cHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTIwMHB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC4ycmVtIDFyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIgLm92ZXJsYXkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSAub3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAmLmJ5LTEsICYuYnktMiB7XHJcbiAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xyXG4gICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg1LCA1dncpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgYXJ0aWNsZSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogNjtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogNztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAxMztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogNjtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICYuYnktMSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICBhcnRpY2xlIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MnB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgJi5ieS0zLCAmLmJ5LTQge1xyXG5cclxuICAgICAgICAgICAgICAgICAgYXJ0aWNsZSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogOTtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogNjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAxMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogNjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAxMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogOTtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogMTM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1lbmQ6IDk7XHJcbiAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAmLmJ5LTMge1xyXG5cclxuICAgICAgICAgICAgICAgICAgYXJ0aWNsZSB7XHJcbiAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTJweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgIFxyXG5cclxuICAgICAgICAgICAgICAgJi5ieS01IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgIGFydGljbGUge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1lbmQ6IDk7XHJcbiAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogODtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93LWVuZDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICBcclxuICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiA5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctZW5kOiA5O1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiA4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDEzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctZW5kOiA1O1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg1KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiA5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDEzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctZW5kOiA5O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkycHgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gOHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICB9XHJcbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbi8qIFJPT00gTE9PUCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucm9vbS1sb29we1xuXHRtYXgtd2lkdGg6IDEyMDBweDtcblx0bWFyZ2luOiBhdXRvO1xuXG5cdGFydGljbGV7XG5cdFx0LnJvb20tZ2FsbGVyeXtcblx0XHRcdC5jYXJvdXNlbC1pbm5lcntcblx0XHRcdFx0aGVpZ2h0OiA1NHZ3O1xuXHRcdFx0XHRtYXgtaGVpZ2h0OiA1MDBweDtcblxuXHRcdFx0XHRAbWVkaWEoIG1pbi13aWR0aDogOTkycHggKXtcblx0XHRcdFx0XHRoZWlnaHQ6IDM2dnc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQucm9vbS1jb250ZW50e1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0cGFkZGluZy10b3A6IDNyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuXHRcdFx0aDJ7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblxuXHRcdFx0LmJ0bi1ob2xkZXJ7XG5cdFx0XHRcdC5idG57XG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAuNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBtZWRpYSggbWluLXdpZHRoOiA5OTJweCApe1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblxuXHRcdFx0LnJvb20tZ2FsbGVyeXtcblx0XHRcdFx0ZmxleDogMjtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAycmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQucm9vbS1jb250ZW50e1xuXHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRhbGlnbi1pdGVtczogaW5pdGlhbDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDJyZW07XG5cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXHJcbi8qIEdSQVZJVFkgRk9STSAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uZ2Zvcm1fd3JhcHBlcntcclxuXHJcbiAgZm9ybSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5nZm9ybV90aXRsZXtcclxuICAgIGZvbnQtc2l6ZTogMi41cmVtICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcblxyXG4gIC5nZm9ybV9kZXNjcmlwdGlvbntcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMXJlbSBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBsYWJlbHtcclxuICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT10ZXh0XSxcclxuICBpbnB1dFt0eXBlPWVtYWlsXSxcclxuICB0ZXh0YXJlYSxcclxuICBzZWxlY3RcclxuICB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNUY1RjVGO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gICAgY29sb3I6ICM1RjVGNUY7XHJcbiAgfVxyXG5cclxuICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXXtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcclxuICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuICAgIG1pbi13aWR0aDogMjUwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xyXG4gIH1cclxuXHJcbiAgLmdmb3JtX2Zvb3RlcntcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5nZmllbGRfcmVxdWlyZWQge1xyXG4gICAgY29sb3I6ICM1RjVGNUYgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmhvdmVye1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcclxuICB9XHJcbn1cclxuXHJcbi8vUFJPUEVSVFkgRk9STVxyXG5cclxuLy9jaGFuZ2UgY2xhc3MgdG8gY29ycmVjdCBmb3JtIGlkXHJcbiNnZm9ybV8xIHtcclxuXHJcbiAgLmdmb3JtX2JvZHkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgLnRvcCB7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDY1JTtcclxuXHJcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDExMDBweCl7XHJcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kZXNjIHtcclxuICAgICAgZmxleC1iYXNpczogMzMlO1xyXG5cclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogMTEwMHB4KXtcclxuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxOTZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNmaWVsZF8xXzMge1xyXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgI2ZpZWxkXzE3XzMge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9FTlFVSVJFIEZPUk1cclxuXHJcbi8vY2hhbmdlIGNsYXNzIHRvIGNvcnJlY3QgZm9ybSBpZFxyXG4jZ2Zvcm1fMiB7XHJcblxyXG4gIC5nZm9ybV9ib2R5IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgIC5sZWZ0IHtcclxuICAgICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAxNnB4KTtcclxuXHJcbiAgICAgIGlucHV0W3R5cGU9dGV4dF0sXHJcbiAgICAgIGlucHV0W3R5cGU9ZW1haWxdLFxyXG4gICAgICB0ZXh0YXJlYSxcclxuICAgICAgc2VsZWN0XHJcbiAgICAgIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogMTEwMHB4KXtcclxuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJpZ2h0IHtcclxuICAgICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAxNnB4KTtcclxuXHJcbiAgICAgIGlucHV0W3R5cGU9dGV4dF0sXHJcbiAgICAgIGlucHV0W3R5cGU9ZW1haWxdLFxyXG4gICAgICB0ZXh0YXJlYSxcclxuICAgICAgc2VsZWN0XHJcbiAgICAgIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogMTEwMHB4KXtcclxuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMTVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNmaWVsZF8yXzkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgID4gaDMge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgI2ZpZWxkXzJfMTMge1xyXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vL0JST0NIVVJFIEZPUk1cclxuXHJcbi8vY2hhbmdlIGNsYXNzIHRvIGNvcnJlY3QgZm9ybSBpZFxyXG4jZ2Zvcm1fMyB7XHJcbiAgbWFyZ2luOiA1MHB4IDA7XHJcblxyXG4gIC5nZm9ybV9ib2R5IHtcclxuXHJcbiAgICAjZmllbGRfM18xIHtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA4cHgpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCApe1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDhweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2luZ2xlLXByb3BlcnR5IHtcclxuXHJcbiAgLmh1c3RsZS1ncm91cC1jb250ZW50IHtcclxuXHJcbiAgICBoMiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHAge1xyXG4gICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgI2dmb3JtX3N1Ym1pdF9idXR0b25fMyB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM1RjVGNUY7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy81JSBPRkYgRk9STVxyXG4vL2NoYW5nZSBjbGFzcyB0byBjb3JyZWN0IGZvcm0gaWRcclxuI2dmb3JtXzQge1xyXG4gIFxyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMzJweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB9XHJcblxyXG4gIC5nZm9ybV9ib2R5IHtcclxuXHJcbiAgICBsYWJlbHtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gOHB4KTtcclxuICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCApe1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDhweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNmaWVsZF80XzQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5naW5wdXRfY29udGFpbmVyX2NvbnNlbnQge1xyXG4gICAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2dmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyXzQge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vL1BERiBGT1JNXHJcbi8vY2hhbmdlIGNsYXNzIHRvIGNvcnJlY3QgZm9ybSBpZFxyXG4jZ2Zvcm1fNSB7XHJcbiAgXHJcbiAgaDMge1xyXG4gICAgZm9udC1zaXplOiAzMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gIH1cclxuXHJcbiAgLmdmb3JtX2JvZHkge1xyXG5cclxuICAgIGxhYmVse1xyXG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA4cHgpO1xyXG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgICBjb2xvcjogJHByaW1hcnk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4ICl7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gOHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2ZpZWxkXzVfMiB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogN3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdpbnB1dF9jb250YWluZXJfY29uc2VudCB7XHJcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXJfNSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vSHVzdGxlIENoYW5nZXNcclxuXHJcbi5odXN0bGUtdWkubW9kdWxlX2lkXzEgLmh1c3RsZS1sYXlvdXQgLmh1c3RsZS1ncm91cC1jb250ZW50IHVsIGxpOmJlZm9yZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaHVzdGxlLXVpIC5odXN0bGUtaW5mbyAuaHVzdGxlLWdyb3VwLWNvbnRlbnQgKiB7XHJcbiAgZm9udC1mYW1pbHk6IG1pbmVydmEtbW9kZXJuICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5odXN0bGUtcG9wdXAtY29udGVudHtcclxuICAuaHVzdGxlLWluZm8ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIFxyXG4gICAgLmh1c3RsZS1idXR0b24tY2xvc2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDM2cHg7XHJcbiAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0VBRUU7QUFJRiwrRUFBK0U7QUFDL0UsY0FBYztBQUNk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 */