/* 
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/Montserrat-Regular.ttf') format('truetype'),
        url('../fonts/Montserrat-Regular.woff') format('woff'),
        url('../fonts/Montserrat-Regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/Montserrat-Medium.ttf') format('truetype'),
        url('../fonts/Montserrat-Medium.woff') format('woff'),
        url('../fonts/Montserrat-Medium.woff2') format('woff2');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/Montserrat-Light.ttf') format('truetype'),
        url('../fonts/Montserrat-Light.woff') format('woff'),
        url('../fonts/Montserrat-Light.woff2') format('woff2');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/Montserrat-SemiBold.ttf') format('truetype'),
        url('../fonts/Montserrat-SemiBold.woff') format('woff'),
        url('../fonts/Montserrat-SemiBold.woff2') format('woff2');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/Montserrat-Bold.ttf') format('truetype'),
        url('../fonts/Montserrat-Bold.woff') format('woff'),
        url('../fonts/Montserrat-Bold.woff2') format('woff2');
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('../fonts/Montserrat-Black.ttf') format('truetype'),
        url('../fonts/Montserrat-Black.woff') format('woff'),
        url('../fonts/Montserrat-Black.woff2') format('woff2');
} */

:root {
  --color-default: #fff;
  --main-bg: #F7F0E0;
  --color-base: #000;
  --main-color: #D04B44;
  --main-color-hover: #C43C35;
  --accent-yellow: #F3C562;
  --accent-blue: #A5D3D3;
  --color-blue: #429492;
  --accent-pink: #D9A19E;
  --color-pink: #E8BDBB;
  --border:1px solid var(--color-base);

  --title : 700 1rem/1.3 "Montserrat", sans-serif;
  --title-black: 800 1rem/1.3 "Montserrat", sans-serif;
  --text-btn: 500 1rem/1 "Montserrat", sans-serif;
  --text : normal 1rem/1.3 "Roboto", sans-serif;
}
::selection{background-color:#91da87; color:#000;}
hr{border:none; border-top:var(--border); display:block; margin:0;}
.list-unstyled{list-style: none; padding:0;}
.list{list-style: none; padding:0; margin-top:0;  margin-bottom:0;}

body{background:var(--main-bg); margin:0; font:var(--text);}
a{text-decoration: none; color:inherit;}
.link:hover{color:var(--main-color-hover);}
.btn{font:var(--text-btn); text-transform: uppercase; opacity: 1; border-radius:100px; display:inline-flex; align-items: center; text-shadow:none;  box-shadow:none; vertical-align: middle;  line-height: 1; transition: color .3s ease, background .3s ease;  background:transparent; border:none; font-weight:500; text-decoration: none;  }
.btn-primary{ background:var(--main-color); color:#fff; padding:1rem 2rem; }
.btn-primary:hover{background:var(--main-color-hover); opacity: 1; color:#fff;}
.btn-border{border:1px solid var(--main-color); color:var(--main-color); padding:1rem 2rem; border-radius:100px;}
.btn-border:hover{background:var(--main-color-hover); border-color:var(--main-color-hover); color:#fff;}
.btn-border--second{border:2px solid #D9A19E; padding-top:.8rem; padding-bottom:.8rem; color:var(--color-base);}
.btn-block{display: block; width:100%; text-align: center;}
.btn-danger{background:var(--main-color); color:var(--color-default);}

.btn-circle{ display: inline-flex; align-items: center; justify-content: center; width:3.5rem; height:3.5rem; cursor:pointer; position: relative; padding: 1rem; z-index: 1; line-height:1; text-align: center; margin:auto;}
.btn-circle .svg-icon{top:auto; z-index: 2;}
.btn-circle:hover .svg-starbust{fill:var(--main-color-hover); animation: 5s linear animRotate infinite;}
.btn-circle__text, .btn-circle .svg-icon, .button_submit .svg-icon{transition: transform .25s ease;}

.button_submit:active .icon{transform: translateX(3px);}
.btn-circle--light .svg-starbust{fill:var(--main-bg); stroke:var(--main-color-hover);}
.btn-circle--light:hover{ color:#fff;}
.btn-circle--light:hover .svg-starbust{fill:var(--main-color-hover); stroke:var(--main-color-hover);}
.btn-circle--light.is-active .svg-starbust{fill:var(--main-color);}
.btn-circle--light.is-active .svg-icon{fill:#fff;}
.btn-circle--light.is-active:hover .svg-starbust{animation: none;}
.btn-corner{position:absolute; line-height: 1; width:4.5rem; height:4.5rem; display: flex; align-items: center; justify-content: center; overflow: hidden; padding:1rem; z-index: 2; }
.btn-corner__bg{ display: block; width:100%; height:100%; transition:transform .5s ease, fill .5s ease, opacity .5s ease; position:absolute; top:0; left:0; z-index: -1;fill:var(--main-color)}

.btn-corner--top{right:-.75rem; top:-.75rem;}
.btn-corner--bottom{right:-.75rem; bottom:-.75rem; top:auto}

.btn-order{padding:.5rem!important; font:var(--text-btn)!important; opacity:1!important; color:#fff; width:3.5rem; height:3.5rem; border-radius: 100px!important; border:none!important; background: transparent!important; box-shadow:none!important; text-shadow:none!important; display:inline-flex; align-items: center; justify-content: center; position:relative; z-index: 1; }
.btn-order .svg-starbust{position:absolute; display:block; fill:var(--main-color); top:0; left:0; width:100%; height:100%; z-index: -1;}
.btn-order__text{margin-right:.3rem; font:var(--text-btn); text-transform: uppercase; vertical-align: middle;}
.btn-order .icon--start{top:-1px;}
.btn-order .svg-icon{width:1.25rem; height:1.25rem;}

.navbar-nav{display:flex; align-items: center; padding:0; list-style: none;}
.dropdown{position:relative; display:block;}
.dropdown>a{padding:.5rem; display:block;}
.dropdown-menu{display:none; border:var(--border); padding:.5rem 0; background-color: var(--main-bg); position:absolute; top:100%; left:0; min-width: 10rem; float:left;}
.dropdown-menu a, .dropdown-menu__inner{display:block; padding:.5rem 1rem;}
.dropdown-menu.show{display: block;}

.tippy-box{color: var(--color-base); background:var(--color-default); text-transform: none; font-size: 0.9rem; border-radius: 40px; border: 1px solid var(--main-color); }
.tippy-content{padding:.25rem .75rem;}
.tippy-arrow {color:var(--color-default);}
.tippy-arrow:after {border-width: 9px 9px 0; content: "";position: absolute;border-color: transparent;border-style: solid;border-top-color: initial; transform-origin: center top; z-index: -1;}
.tippy-box[data-placement^='top']>.tippy-arrow:after {border-top-color: var(--main-color); bottom: -9px; left:-1px;}
.tippy-box[data-placement^='bottom']>.tippy-arrow:after {border-bottom-color: var(--main-color); top: -9px;  left:-1px;}
.tippy-box[data-placement^='left']>.tippy-arrow:after {border-left-color: var(--main-color); right: -9px; top:0;}
.tippy-box[data-placement^='right']>.tippy-arrow:after {border-right-color: var(--main-color); left: -9px; top:0;}

.share-block__dropdown{margin:.125rem 0 .25rem;}
.share-block__social{ display:block; width:2rem; height:2rem; margin-right:.375rem;}
.share-block__social svg{ width:100%; height:100%; top:0; color:var(--main-color);}
.share-block__social:hover{ color:var(--main-color-hover);}
.share-block__copy svg{top:-1px;}
.share-block__link{cursor:pointer;}
.share-block__link:hover{color:var(--main-color);}


.swiper-marquee .swiper-wrapper { transition-timing-function: linear;}
.swiper-prev:active .btn-circle__text{transform: translateY(-3px);}
.swiper-next:active .icon{transform: translate(3px, -3px);}
.swiper-prev:active .icon{transform: translate(-3px, 3px);}

.text_error{color:var(--main-color)}
.text_success{background:#F3C562; padding:1rem; border:var(--color-base); }
.text-normal{font-weight: normal;}
.text-small{font-size:.8em;}
strong{font-weight:600;}
.row-nowrap{flex-wrap: nowrap;}

.title{font:var(--title); text-transform: uppercase;}
.title--bold{font-weight:700;}
.title-xs{font-size: 1rem;}
.title-sm{font-size: 1.25rem;}
.title-md{font-size: 1.5rem;}

.section{padding:3rem 0;}
.section__title{font-weight:800; font-size:1.7rem; margin:2rem auto; text-align: center;}

.svg-icon{display: inline-block; width:1rem; height:1rem; position:relative; vertical-align: text-top; top:1px; fill:currentColor;}
.svg-icon--start{margin-right:.25rem;}
.svg-icon--end{margin-left:.5rem;}
.svg-icon--sm{width:1rem; height:1rem;}
.svg-icon--md{width:1.25rem; height:1.25rem;}
.svg-icon--lg{width:2rem; height:2rem;}
.svg-icon--xs{width:.875rem; height:.875rem;}
.svg-starbust{ display: block; position: absolute;width:100%;z-index: -1;height:100%;top:0;left:0;fill: var(--main-color);}

.link-more{display:inline-flex; align-items: center;}
.link-more .icon{width:.875rem; height:.875rem; top:0;}

.subscribe .field .text_success{
  font-size:.75rem;
  padding:.5rem;
  position:absolute; top:0; left:0;
  width:100%; height:100%; 
  z-index: 12;
}


.card-list{
  border-top:var(--border);
  border-left:var(--border);
}

.card{
  border-right:var(--border);
  border-bottom:var(--border);
  background:var(--color-pink);
  position:relative;
  overflow:hidden;
}
.card--photo{
  color:var(--main-bg);
}
.card:nth-child(2n){
  background:var(--accent-blue)
}
.card:nth-child(4n+1){
  background:var(--accent-yellow)
}
.card__caption{
  position:absolute;
  bottom:0;
  left:0;
  padding:2rem; 
  z-index: 5;
}

.card__title{
  display: inline;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 4px 0;
  box-shadow: 6px 0 0 var(--main-bg), -6px 0 0 var(--main-bg);
  background: var(--main-bg);
  color:var(--color-base);
  font: var(--title);
  text-transform: uppercase;
  font-weight: bold;
  margin:2rem 0;
}
.card__image{ display:block; width:100%; height:100%; object-fit: cover; position:absolute; left:0; top:0;}
.card__note{font:var(--title); font-weight: 900; font-size:.75rem; text-transform: uppercase; padding:.5rem 0;}

.card--photo a:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.5);
}

.card__corner{
  overflow:visible!important;
  top: auto;
  right: -.75rem;
  bottom: -.75rem;
  color:var(--color-base);
}

.card .svg-starbust{fill: var(--accent-pink); transition-duration: .7s;}
.card:hover .svg-starbust {transform: rotate(90deg) scale(20); opacity: .8;}

.photo-card{border-top:var(--border); border-left:var(--border)}


.modal-open{overflow:hidden}
.modal-open .modal{overflow-x:hidden; overflow-y:auto}
.modal{position:fixed; top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}
.modal-dialog{position:relative;width:auto; pointer-events:none; box-shadow: 0px 1.5rem 2rem rgba(49, 63, 80, 0.48);}
.modal.fade .modal-dialog{transition:transform 0.3s ease-out;transform:translate(0, -50px)}
.modal.show .modal-dialog{transform:none}
.modal.modal-static .modal-dialog{transform:scale(1.02)}
.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}
.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}
.modal-dialog-scrollable .modal-header,.modal-dialog-scrollable .modal-footer{flex-shrink:0}
.modal-dialog-scrollable .modal-body{overflow-y:auto}
.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}
.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}
.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}
.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}
.modal-dialog-centered.modal-dialog-scrollable::before{content:none}
.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:var(--main-bg); background-clip:padding-box; outline:0}
.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh; background: rgba(49, 63, 80, .4);}
.modal-backdrop.fade{opacity:0}
.modal-backdrop.show{opacity:1}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between; padding:2rem; border-bottom: var(--border);}
.modal-header h4{font: var(--title); font-size:1.5rem; text-transform: uppercase;}

.modal-title{margin-bottom:0;line-height:1.5}
.modal-body{position:relative;flex:1 1 auto;padding:1rem}
.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:0.75rem;border-top:0 solid #dee2e6;border-bottom-right-radius:0.3rem;border-bottom-left-radius:0.3rem}
.modal-footer>*{margin:0.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}
.modal-close{ opacity: .6; position:absolute; top:.25rem; right:.25rem; z-index: 3;}
.modal-close:hover{opacity:1;}
.modal-close svg{ width:1.25rem;height:1.25rem;}

.icms-photo-album__photo{position:relative;}
#icms-modal-spinner{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%; z-index: 600;
}
.sk-circle {
  width: 3rem;
  height: 3rem;
  position: absolute;
  left:0;
  right:0;
  bottom:0;
  top:0;
  margin:auto;
}
.sk-circle .sk-child {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.sk-circle .sk-child:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: var(--accent-yellow);
  border-radius: 100%;
  -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
          animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
}
.sk-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
      -ms-transform: rotate(30deg);
          transform: rotate(30deg); }
.sk-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
      -ms-transform: rotate(60deg);
          transform: rotate(60deg); }
.sk-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }
.sk-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
      -ms-transform: rotate(120deg);
          transform: rotate(120deg); }
.sk-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
      -ms-transform: rotate(150deg);
          transform: rotate(150deg); }
.sk-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }
.sk-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
      -ms-transform: rotate(210deg);
          transform: rotate(210deg); }
.sk-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
      -ms-transform: rotate(240deg);
          transform: rotate(240deg); }
.sk-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg); }
.sk-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
      -ms-transform: rotate(300deg);
          transform: rotate(300deg); }
.sk-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
      -ms-transform: rotate(330deg);
          transform: rotate(330deg); }
.sk-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s; }
.sk-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s; }
.sk-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s; }
.sk-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s; }
.sk-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s; }
.sk-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s; }
.sk-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s; }
.sk-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s; }
.sk-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s; }
.sk-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s; }
.sk-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s; }
@-webkit-keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  } 40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  } 40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}


#breadcrumbs ul{list-style:none; padding:0; display:flex;}
#breadcrumbs ul>li{padding-right: 1rem;}

.widget{position: relative;}
.widget__buttons{margin-top:1rem;}
.widget__title{text-align:left;}
.widget-slider__body{
  overflow:hidden;
}

@media screen and (min-width: 47em){
  .title-xs{font-size:1.125rem;}
  .title-sm{font-size: 1.5rem;}
  .title-md{font-size: 2rem;}

  .card__title{font-size:1.25rem;}
  .news-card__more{position: relative; top:1rem;}
  .places-card .card__photo{width:auto;margin:0 -1rem;}

  .modal-dialog{max-width:80rem; margin:1.75rem auto}
  .modal-city{max-width:40rem;}
  .modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}
  .modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}
  .modal-dialog-centered{min-height:calc(100% - 3.5rem)}
  .modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:min-content}
  .modal-sm{max-width:20rem}
  .modal-body{padding:2rem;}
  .modal-open{padding-right:17px;}
  .modal-close svg{ width:1.5rem;height:1.5rem;}

  .swiper-button-disabled{
    opacity: .4;
    color:inherit!important;
  }
  .swiper-button-disabled:hover .svg-starbust{
    animation: none!important;
    fill: transparent!important;
  }
  .swiper-button-disabled:hover{
    color:inherit!important;
  }

  .widget__buttons{margin-top:2rem;}

  .btn-order{width:auto; height:auto; background:var(--main-color)!important; padding:.75rem 1rem!important; line-height:1;}
  .btn-order:hover{background: var(--main-color-hover)!important;}
  .btn-order .svg-starbust{display:none;}
  .btn-order .svg-icon{margin-left:.25rem; width:1.25rem; height:1.25rem;}

}
@media screen and (min-width: 63em){
  .modal-dialog{margin:3rem auto}

  .btn-corner{width:5rem; height:5rem;}
  .btn-corner--top{right:-1.25rem; top:-1.25rem;}
  .btn-corner--bottom, .card__corner{right:-1.25rem; bottom:-1.25rem;}
}