*,
*::before,
*::after {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    background: none;
    text-decoration: none;
    outline: none;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
    color: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

:focus:not(:focus-visible) {
    outline: none
}

:root {
    --text-b: hsl(0, 0%, 0%);
    --text-b-lighter: hsl(240, 1%, 16%);
    --text-gold: hsl(42, 29%, 50%);
    --text-w: #FFFCF6;
    --bg-w: #fff6e9;
    --bg-gold: hsl(44, 33%, 53%);
    --bg-brown: hsl(37, 43%, 36%);
    --bg-paper: hsl(39, 100%, 88%);
    --bg-cream: hsl(50, 66%, 96%);
    --font-family-nunito: 'Nunito', sans-serif;
    --font-family-eb: 'EB Garamond', serif;
    --font-size: 16px;
    --font-height: 18px;
    --font-weight: 300;
    --font-spacing: 0.05em;
    --font-scale-xxs: 0.62;
    --font-scale-xs: 0.75;
    --font-scale-s: 0.88;
    --font-scale-m: 1.12;
    --font-scale-l: 1.50;
    --font-scale-xl: 1.75;
    --font-scale-xxl: 2.441;
    font-size: var(--font-height);
    font-family: 'EB Garamond', serif;
    font-weight: var(--font-weight);
    letter-spacing: var(--font-spacing);
    background: var(--bg-w);
    color: var(--text-b)
}

body,
html {
    margin: 0
}

body *,
html * {
/*    font-size: 16px;    */
/*    line-height: 18px   */
}

body,
html {
    min-width: 100%;
    min-height: 100%
}

a {
    text-decoration: none
}

p {
    margin-bottom: 2rem;
    text-decoration: none;
    letter-spacing: 0.04em;
}

a p {
    margin-bottom: 0rem;
}

p strong {
    font-weight: bold
}

.center-contents {
  display: flex;
  justify-content: center;
  align-items: center;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

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

.text-block-content.standard-alignment, .standard-alignment {
    text-align: left;
}

a.link, .text-block-content a {
    text-decoration: underline;
}

a.link:hover, .text-block-content a:hover {
    text-decoration: none;
}

.statistics-item p {
    font-size: 19px;
    letter-spacing: 0.04em;
    line-height: 1.2rem;
    margin-bottom: 0rem;
}

.title {
    margin: 4rem 0rem 1.2rem 0rem;
}

ol {
    padding-inline-start: 20px;
}

summary {
    font-size: 1.2rem;
    margin-bottom: 1rem 
}

h1 {
    font-family: 'Nunito', sans-serif;
    text-align: center;
    font-size: 27px;
    font-weight: light;
}

@media (min-width: 451px) {
    h1 {
        font-size: 28px;
    }
}

h2 {
    font-size: 1.5rem;
    margin-block-start: 0.63em;
    margin-block-end: 0.63em;
}

.headline, .contactheadline {
    position: relative;
    text-align: center;
}

.headline h2 {
    display: inline-block;
    font-family: 'EB Garamond', serif;
    text-align: center;sid
    font-style: italic;
    font-size: 21px;
    max-width: 35rem;
    line-height: 1.4;
    margin: 0 20px;
}

@media (min-width: 451px) {
    .headline h2 {
        font-size: 22px;
    }
}

h3 {
    display: inline-block;
    font-family: 'EB Garamond', serif;
    text-align: center;
    font-size: 27px;
    max-width: 35rem;
    line-height: 2;
    margin: 3em 20px 1em 20px;
}

.contactheadline h3 {
    margin: 0em 20px .5em 20px;
}

.top {
    position: -webkit-sticky;
    position: sticky;
    top: 0; 
    z-index: 999
}

.header {
    display: flex;
    justify-content: space-between;
    background: #fff6e9;
    border-bottom: 1px solid black
}

.header-home {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    height: 76px;
} 

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

.header-home-mob {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    padding-top: 10px
} 

@media (min-width: 451px) {
    .header-home-mob {
        display: none;
    }
}

.header-logo {
    display: block;
    margin: .85rem 0 .75rem 0
}

.header-home-mob .header-logo {
    display: block;
    height: 8vw;
    width: auto;
    margin-bottom: 20px;
/*    margin: .75rem auto  */
/*    margin: .75rem 0 1.3rem 0 */
}

.header-menu-btn-container {
    padding: 0rem 0rem;
    -webkit-box-flex: 0;
    flex: 0 1 40%;
    text-align: left;
    -webkit-align-self: flex-end;
    align-self: flex-end;
    margin-top: 10px;
    margin-bottom: 21px;
    padding: 0px 10px 0px 15px;
}
@media (max-width: 450px) {
    .header-menu-btn-container {
    /*margin-bottom: 24px;*/
    }
}

.header-book-btn-container {
    -webkit-box-flex: 0;
    flex: 0 1 40%;
    text-align: right;
    -webkit-align-self: flex-end;
    align-self: flex-end;
    padding: 0px 15px 20px 10px;
    font-family: 'Nunito', sans-serif;
}

@media (max-width: 450px) {
    .header-book-btn-container {
   padding: 0px 15px 22px 10px;   
    }
}

.menu-btn {
    display: block;
    height: 1.2rem;
    width: auto;
    margin: 0rem auto
}

.header-menu-btn {
    border: none;
    outline: none;
    -webkit-transition: color 200ms;
    transition: color 200ms
}

.header-menu-btn:hover {
    color: #AF9A61
}

.sidenav {
  z-index: 9999;
  display: none;
  position: sticky;
  height: 100%;
}

.closebtn-container {  
    border: none;
    outline: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    margin: 23px 0px 15px 15px;
    padding: 5px 5px 5px 0px;
    background-color: #fff6e9;
}

@media (max-width: 450px) {
    .closebtn-container {
    margin: 6vw 0px 15px 15px;
    }
}

.closebtn {
    display: block;
    height: 1.2rem;
    width: auto;
    margin: 0rem auto;
    z-index: 9999;
}

.sidenav-items {
    width: 330px;
    position: fixed;
    z-index: 998;
    top: 0;
    left: 0;
    background-color: #fff6e9;
    overflow: auto;
    transition: 0.5s;
    margin-top: 77px;
    height: calc(100% - 64px);
    height: -o-calc(100% - 64px); /* opera */
    height: -webkit-calc(100% - 64px); /* google, safari */
    height: -moz-calc(100% - 64px); /* firefox */
    font-family: 'Nunito', sans-serif;
    border-right: 1px solid black;
}

@media (max-width: 450px) {
    .sidenav-items {
    margin-top: calc(8vw + 46px);
    height: calc(100% - 8vw + 46px);
    height: -o-calc(100% - 8vw + 46px); /* opera */
    height: -webkit-calc(100% - 8vw + 46px); /* google, safari */
    height: -moz-calc(100% - 8vw + 46px); /* firefox */
    }
}

.sidenav-item {
    font-size: 18px;
    border-bottom: 1px solid black;
    text-align: left;
    display: block;
    padding: .75rem .80rem;
    -webkit-transition: background 200ms, color 200ms;
    transition: background 200ms, color 200ms
}

.sidenav-item:hover {
    background: black;
    color: white
}

.sidenav-item-active {
    background: black;
    color: white
}

.block-btn-container {
    text-align: center;
    padding: 20px;
    font-family: 'Nunito', sans-serif;
    margin-top: -3.5em;
}

.activities img {
    width: 100%;
}

.activities {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    list-style: none;
    grid-gap: 1px;
    margin: 3em 0;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
  .activities {grid-template-columns: repeat(1, 1fr);}
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
  .activities {grid-template-columns: repeat(2, 1fr);}
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
  .activities {grid-template-columns: repeat(2, 1fr);}
} 

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
  .activities {
    grid-template-columns: repeat(4, 1fr);
}
}

.activity-container {
    position: relative;
    text-align: center;
    color: #fff6e9;
    line-height: 0px;
}

.centered {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 27px;
  line-height: 27px;
}

.footer {
    position: relative;
    z-index: 10;
    background: #e6edbb;
    border-top: 1px solid black;
    padding: 1rem 1rem 0rem 1rem;
    font-family: 'Nunito', sans-serif;
}

@media (min-width: 500px) {
    .footer {
        padding: 1rem 1.5rem 0rem 1.5rem;
    }
}

.footer-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width: 1100px) {
    .footer-row {
        -webkit-flex-wrap: no-wrap;
        flex-wrap: no-wrap
    }
}

.footer-navs,
.footer-info {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}

@media (min-width: 1100px) {
    .footer-navs,
    .footer-info {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
        flex: 0 1 auto
    }
}

.footer-nav {
    margin-bottom: 1rem;
    margin-right: 1.4rem;
    display: inline-block;
    vertical-align: top
}

.footer-nav-item {
    display: block;
    font-size: 18px;
    line-height: 22px
}

.footer-nav-item:hover {
    text-decoration: underline
}

/*
.footer-nav-item-active {
    color: #AF9A61
}

.footer-nav-item-active::before {
    content: ""
} */

ul {
    list-style-type: none;
    padding-left: 0;
}

.footer-info-block {
    display: inline-block;
    vertical-align: top;
    width: auto;
    margin-right: 1rem
}

@media (min-width: 1100px) {
    .footer-info-block {
        margin-left: 1rem;
        margin-right: 0
    }
}

.footer-info-block p,
.footer-info-block a {
    font-size: 14px;
    line-height: 18px
}

.footer-info-block a {
    display: block
}

.footer-info-block a:hover {
    text-decoration: underline
}

.footer-info-block p {
    margin-bottom: 1rem
}

.footer-partners {
    margin: 3rem 0 4rem
}

.footer-partners-title {
    font-size: 14px;
    line-height: 18px;
    border-bottom: 1px solid black;
    margin-bottom: 1rem
}

.footer-partner {
    display: inline-block;
    max-width: 6rem;
    margin-right: 1rem
}

.footer-partner-link {
    display: block;
    width: 100%
}

.footer-partner-link svg {
    display: block;
    width: 100%;
    height: auto
}

.footer-copy {
    font-family: "Bookmania", sans-serif
}

.footer-credits {
    font-size: 14px;
    line-height: 18px
}

.text-container {
    margin: 2rem 1rem 4rem
}

.text-content {
    margin: 0 auto;
    max-width: 35rem
}

.text-content a {
    text-decoration: underline;
    color: var(--text-gold)
}

.text-content p:not(:last-child) {
    margin-bottom: 1rem
}

.hero {
    /* Sizing */
    width: 100vw;
    height: 100vh;
    
    /* Background styles */
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.slider {
    position: relative
}

.slides {
    position: relative;
    overflow: hidden
}

.slide {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /*-webkit-transition: opacity 400ms ease-out;
    transition: opacity 400ms ease-out; */
    opacity: 0;
    pointer-events: none
}

.slide-current {
    position: relative;
    opacity: 1;
    pointer-events: all
}

.slide-image-container {
    display: block
}

.slide-image-holder {
    position: relative;
    display: block;
    width: 100%;
    height: auto
}

.slider-btn {
    position: absolute;
    top: 50%;
    outline: none;
    border: none;
    background: none;
    padding: 1rem
}

.slider-btn-prev {
    left: 1rem;
    -webkit-transform: translateY(-50%) rotate(135deg);
    transform: translateY(-50%) rotate(135deg)
}

.slider-btn-next {
    right: 1rem;
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg)
}

.slider-btn-arrow {
    display: block;
    width: 1rem;
    height: 1rem;
    border-right: 1px solid #fff6e9;
    border-bottom: 1px solid #fff6e9;
}

.slider-btn-arrow.black {
    border-right: 1px solid black;
    border-bottom: 1px solid black
}

@media (min-width: 500px) {
    .slider-btn-arrow {
        width: 1.5rem;
        height: 1.5rem
    }
}

.slide-header {
    text-align: center;
    font-size: 22px;
    line-height: 1.2em;
    font-family: 'Nunito', sans-serif;
    text-align: center;
    padding: 1rem
}

@media (min-width: 600px) {
    .slide-header {
        font-size: 26px
    }
}

.slide-caption {
    margin: 2rem auto 0;
    max-width: 42rem;
    font-size: 22px;
    line-height: 1.2em;
    color: black;
    font-family: 'Nunito', sans-serif;
    text-align: center;
    padding: 0 1rem
}

@media (min-width: 600px) {
    .slide-caption {
        font-size: 28px
    }
}

.slide-caption * {
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    font-family: inherit
}

.slide-caption a {
    text-decoration: underline
}

.slide-caption p:not(:last-child) {
    margin-bottom: 1rem
}

.home-slider-block {
    width: 100%;
    height: 100vh
}

.home-slider-block .slider, .home-slider-block .slides, .home-slider-block .slide {
    width: 100%;
    height: calc(100% - 27px);
    height: -o-calc(100% - 27px); /* opera */
    height: -webkit-calc(100% - 27px); /* google, safari */
    height: -moz-calc(100% - 27px); /* firefox */
}

@media (min-width: 451px) {
.home-slider-block .slider, .home-slider-block .slides, .home-slider-block .slide {
    height: calc(100% - 25px);
    height: -o-calc(100% - 25px); /* opera */
    height: -webkit-calc(100% - 25px); /* google, safari */
    height: -moz-calc(100% - 25px); /* firefox */
}
}


.home-slider-block .slide {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover
}

.home-slider-logo {
    position: absolute;
    width: 7rem;
    height: auto;
    z-index: 100;
    fill: #fff6e9;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media (min-width: 500px) {
    .home-slider-logo {
        width: 8rem
    }
}

@media (min-width: 750px) {
    .home-slider-logo {
        width: 10rem
    }
}

@media (min-width: 1000px) {
    .home-slider-logo {
        width: 12rem
    }
}

.home-slider-logo svg {
    display: block;
    width: 100%;
    height: auto
}

.home-slider-information {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 100
}

.home-slider-link {
    font-family: "Bookmania", sans-serif;
    color: #fff6e9;
    display: inline-block;
    margin-right: 0.5rem;
    margin-bottom: 1rem;
    border-radius: 9999px;
    padding: .25rem .5rem;
    box-shadow: 0px 0px 10px 5px rgba(176, 156, 91, 0.25), inset 0px 0px 0px 50px rgba(176, 156, 91, 0.25)
}

.slider-block-big {
    height: auto;
    margin-top: 3em;
}

.slider-block-big .slide-header {
    color: #fff6e9;
    padding: 2rem 1rem 4rem;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    width: 100%
}

.slider-block-big .slide-header[data-gradient="true"] {
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.35), transparent);
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), transparent)
}

.slider-block-big .slide-image {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto
}

.slider-block-small {
    margin: 4em 0;
}

.slider-block-small.pricelist-container {
    margin: 4em 0;
}

.drawnmap.gallery-block.slider-block.slider-block-small {
    margin: 1em 0;
}

.maptext.gallery-block.slider-block.slider-block-small {
    margin: 1em 0 4em 0;
}

.slider-block-small .slider {
    text-align: center;
}

.slider-block-small .slide-image {
    text-align: center;
    margin: 0 auto;
    padding: 0 1rem;
    max-width: 100vmin;
    display: block;
}

.drawnmap.gallery-block.slider-block.slider-block-small .slide-image {
    padding: 0 0rem;
    max-width: 140vmin;
}

@media (max-width: 450px) {
.header-book-btn-container .button {
    font-size: 14px;
    padding: .25rem .45rem
}
}

.button {
    border: 1px solid black;
    outline: none;
    border-radius: 9999px;
    font-size: 16px;
    line-height: 20px;
    background: none;
    color: black;
    -webkit-transition: background 200ms linear;
    transition: background 200ms linear;
    display: inline-block;
    padding: .35rem .75rem
}

.button:hover {
    background: black;
    color: #fff6e9;
}

.buttons {
    padding: 3.5rem 1rem;
    text-align: center
}

.buttons .button {
    width: 12rem;
    margin: .5rem
}


.intro-text {
    margin: 4rem 2rem;
}

.intro-text-content {
    margin: 0 auto;
    max-width: 45rem;
    font-size: 27px;
    line-height: 1.2em;
    color: black;
    font-family: 'Nunito', sans-serif;
    text-align: center;
    padding: 0 1rem
    color: inherit;
}

.text-block, .versatile-block {
    margin: 4rem 0;
}

.hh-block {
    margin: 1rem 0;
}

.text-block-content {
    margin: 0 auto;
    max-width: 45rem;
    font-size: 20px;
    line-height: 1.2em;
    color: black;
    font-family: 'EB Garamond', serif;
    text-align: center;
    padding: 0 1rem
}

.hh-content {
    margin: 0 auto;
    max-width: 35rem;
    line-height: 1.3em;
    font-family: 'Nunito', sans-serif;
    text-align: center;
    font-size: 27px;
    font-weight: lighter;
    padding: 0 1rem;
    text-align: center;
}

.slide .text-block-content {
    padding-right: 4rem;
    padding-left: 4rem;
}


@media (min-width: 600px) {
    .text-block-content {
        font-size: 20px
    }
}

/* .text-block-content * {
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    font-family: inherit
} */

[data-page="home"] .text-block-content,
[data-page="lodges"] .text-block-content,
[data-page="sauris"] .text-block-content {
    color: #AF9A61
}

[data-page="home"] .text-block:first-child {
    margin: 0;
    padding: 4rem 0;
    box-shadow: 0px 5px 50px lightgrey
}

.statistics-container {
    padding: 0;
    margin: 4em 0;
    list-style: none;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    justify-content: space-around;
}

.statistics-item {
    padding: 10px 5px 10px 5px;
    width: 200px;
    height: 100%;
    line-height: 50px;
    font-size: 2em;
    text-align: center;
}

.subpages-block {
    padding: 0 1rem;
    margin: 4rem 0
}

.subpages-block-container {
    margin: 0 auto;
    max-width: 100vmin;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width: 500px) {
    .subpages-block-container {
        max-width: 80vmin
    }
}

.subpage-link {
    display: block;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%
}

@media (min-width: 500px) {
    .subpage-link {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 50%;
        flex: 0 1 50%
    }
}

.subpage-figure {
    display: block;
    width: 100%;
    position: relative
}

.subpage-image {
    display: block;
    width: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    position: absolute
}

.subpage-caption {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    text-align: center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 20;
    font-family: "Trade Gothic Extended", sans-serif;
    color: #fff6e9;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    text-transform: uppercase;
    font-size: 4vmin;
    line-height: 1.2em;
    letter-spacing: 0.2em;
    padding: 0 1rem
}

@media (min-width: 500px) {
    .subpage-caption {
        font-size: 2.5vmin
    }
}

.images-block {
    margin: 4rem 0
}

.images-container {
    margin: 0 auto;
    padding: 0 1rem;
    max-width: 100vmin;
    -webkit-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 1rem;
    column-gap: 1rem
}

.image-container {
    width: 100%
}

.image-spacer {
    position: relative
}

.images-block-image {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto
}

.thumb {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    border-bottom: 1px solid black;
    position: relative;
    color: black
}

@media (min-width: 600px) {
    .thumb {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 50%;
        flex: 0 1 50%
    }
    .thumb::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: -1px;
        width: 1px;
        background: black;
        display: block;
        z-index: 20
    }
    .thumb:last-child::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0px;
        width: 1px;
        background: black;
        display: block;
        z-index: 20
    }
}

@media (min-width: 900px) {
    .thumb {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 33.33333%;
        flex: 0 1 33.33333%
    }
    .thumb:last-child::after {
        content: initial
    }
}

.thumb:hover {
    color: #fff6e9
}

.thumb:hover .thumb-content::after {
    opacity: 1
}

.thumb-content {
    position: relative;
    padding-bottom: 78.33333%;
    text-align: center;
    background: url("images/maps.jpg");
    background-size: auto 200%;
    background-position-y: bottom;
    background-position-x: 0%
}

.thumb-content::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background: url("images/maps.jpg");
    background-size: auto 200%;
    opacity: 0;
    pointer-events: none;
    background-position-y: top;
    background-position-x: 0%;
    -webkit-transition: opacity 300ms ease-out;
    transition: opacity 300ms ease-out;
    z-index: 10
}

.thumb:nth-child(1) .thumb-content {
    background-position-x: 0%
}

.thumb:nth-child(1) .thumb-content::after {
    background-position-x: 0%
}

.thumb:nth-child(2) .thumb-content {
    background-position-x: 7.14%
}

.thumb:nth-child(2) .thumb-content::after {
    background-position-x: 7.14%
}

.thumb:nth-child(3) .thumb-content {
    background-position-x: 14.28%
}

.thumb:nth-child(3) .thumb-content::after {
    background-position-x: 14.28%
}

.thumb:nth-child(4) .thumb-content {
    background-position-x: 21.42%
}

.thumb:nth-child(4) .thumb-content::after {
    background-position-x: 21.42%
}

.thumb:nth-child(5) .thumb-content {
    background-position-x: 28.56%
}

.thumb:nth-child(5) .thumb-content::after {
    background-position-x: 28.56%
}

.thumb:nth-child(6) .thumb-content {
    background-position-x: 35.7%
}

.thumb:nth-child(6) .thumb-content::after {
    background-position-x: 35.7%
}

.thumb:nth-child(7) .thumb-content {
    background-position-x: 42.84%
}

.thumb:nth-child(7) .thumb-content::after {
    background-position-x: 42.84%
}

.thumb:nth-child(8) .thumb-content {
    background-position-x: 49.98%
}

.thumb:nth-child(8) .thumb-content::after {
    background-position-x: 49.98%
}

.thumb:nth-child(9) .thumb-content {
    background-position-x: 57.12%
}

.thumb:nth-child(9) .thumb-content::after {
    background-position-x: 57.12%
}

.thumb:nth-child(10) .thumb-content {
    background-position-x: 64.26%
}

.thumb:nth-child(10) .thumb-content::after {
    background-position-x: 64.26%
}

.thumb:nth-child(11) .thumb-content {
    background-position-x: 71.4%
}

.thumb:nth-child(11) .thumb-content::after {
    background-position-x: 71.4%
}

.thumb:nth-child(12) .thumb-content {
    background-position-x: 78.54%
}

.thumb:nth-child(12) .thumb-content::after {
    background-position-x: 78.54%
}

.thumb:nth-child(13) .thumb-content {
    background-position-x: 85.68%
}

.thumb:nth-child(13) .thumb-content::after {
    background-position-x: 85.68%
}

.thumb:nth-child(14) .thumb-content {
    background-position-x: 92.82%
}

.thumb:nth-child(14) .thumb-content::after {
    background-position-x: 92.82%
}

.thumb:nth-child(15) .thumb-content {
    background-position-x: 99.96%
}

.thumb:nth-child(15) .thumb-content::after {
    background-position-x: 99.96%
}

.thumb-header,
.thumb-footer {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 20
}

.thumb-header {
    padding: .5rem;
    font-size: 14px;
    top: 0
}

.thumb-footer {
    bottom: 0;
    padding: .5rem
}

.thumb-title,
.thumb-subtitle,
.thumb-chalet {
    -webkit-transition: color 200ms linear;
    transition: color 200ms linear
}

.thumb-title,
.thumb-subtitle {
    display: inline-block;
    white-space: nowrap
}

.thumb-title,
.thumb-chalet {
    font-family: "Trade Gothic Extended", sans-serif;
    text-transform: uppercase
}

.thumb-subtitle {
    font-size: 14px;
    font-family: "Bookmania", sans-serif
}

.thumb-chalet {
    font-size: 10px
}

.text-page-container {
    padding: 4rem 2rem
}

.text-page-content {
    max-width: 40rem;
    margin: 0 auto
}

/*
.text-page-content h1,
.text-page-content h2,
.text-page-content h3,
.text-page-content h4,
.text-page-content h5,
.text-page-content h6 {
    font-family: "Trade Gothic Extended", sans-serif;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 1rem;
    margin-top: 2rem;
    font-size: 14px
} */

.text-page-content h1 {
    margin-top: 0;
    font-size: 18px
}

.text-page-content ol,
.text-page-content ul {
    list-style-position: inside;
    margin: 1rem 0
}

.text-page-content p,
.text-page-content li {
    font-family: "Bookmania", sans-serif;
    font-size: 16px;
    line-height: 22px
}

.text-page-content a {
    text-decoration: underline
}

.text-page-content p {
    margin-bottom: 1rem
}

.grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: 1px solid black
}

body.lodges .availability {
    position: relative
}

body.lodges .availability::before {
    display: block;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    height: 1px;
    background: black
}

[data-page="soul"] {
    background: #FFEAC2
}

[data-page="soul"] .text-block-content {
    color: black
}

[data-page="soul"] .text-block-content em {
    display: block;
    text-align: right;
    font-style: normal;
    font-size: 22px;
    margin-top: 1rem
}

[data-page="soul"] .intro-content * {
    color: var(--text-b)
}

[data-page="sauris"] {
    background: #f6f1e3
}

.gmap-wrapper {
    height: 100vh;
    height: calc(100vh - 161px);
    position: -webkit-sticky;
    position: sticky;
    top: 161px
}

@media (min-width: 600px) {
    .gmap-wrapper {
        height: calc(100vh - 109px);
        top: 109px
    }
}

.gmap {
    width: 100%;
    height: 100%
}

.contact-content-wrapper {
    position: relative;
    z-index: 10;
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2))
}

.contact-content {
    background: #fff6e9;
    margin: 0 auto;
    max-width: 40rem;
    border-top: 1px solid black
}

.contacts-block {
    padding: 2rem;
    font-family: "Bookmania", serif;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.contacts-block * {
    font-size: 18px;
    line-height: 22px
}

.contacts-block p {
    margin-bottom: 1rem
}

.contacts-block a {
    display: block
}

.contacts-column {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%
}

@media (min-width: 600px) {
    .contacts-column {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 50%;
        flex: 0 1 50%
    }
}

.directions {
    border-top: 1px solid black
}

.directions-title,
.inforequest-title {
    text-align: center;
    padding: 2rem 1rem;
    font-family: "Bookmania", serif;
    font-size: 18px
}

.directions-text {
    padding: 0 2rem 2rem
}

@media (min-width: 600px) {
    .directions-text {
        -webkit-column-count: 2;
        column-count: 2;
        -webkit-column-gap: 2rem;
        column-gap: 2rem
    }
}

.directions-text p {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 14px
}

.inforequest {
    border-top: 1px solid black
}

.inforequest-form {
    padding: 0 2rem 5rem
}

.inforequest-form label {
    font-size: var(--font-size);
    line-height: 1rem;
    display: block;
    position: absolute;
    top: -999999rem;
    left: -999999rem
}

.inforequest-form input,
.inforequest-form textarea {
    font-size: var(--font-size);
    line-height: 1rem;
    margin: 0;
    padding: .25rem 0;
    width: 100%;
    border: none;
    border-bottom: 1px solid black;
    -webkit-appearance: none;
    border-radius: 0
}

.input-container {
    margin-bottom: .5rem
}

::-webkit-input-placeholder {
    color: black
}

:-ms-input-placeholder {
    color: black
}

::-ms-input-placeholder {
    color: black
}

::placeholder {
    color: black
}

input.send {
    margin: 2rem auto 0;
    font-size: 14px;
    display: block;
    background: black;
    width: 10rem;
    font-family: "Trade Gothic Extended", sans-serif;
    color: #fff6e9;
    text-align: center;
    text-transform: uppercase;
    padding: .5rem 1rem;
    letter-spacing: 0.25em;
    -webkit-transition: background 300ms;
    transition: background 300ms;
    border: none
}

input.send:hover {
    background: #AF9A61
}

.pricelist-container {
    padding: 0 1rem;
    margin-top: -2rem;
}

.pricelist-inner {
    margin: 0 auto;
    max-width: 46rem;
}

.pricelist-container .pricelist-inner:first-of-type {
    border-top: 1px solid black;
}

.pricelist-title,
.pricelist-entry-title {
    font-family: "Trade Gothic Extended", sans-serif;
    font-size: 18px;
    line-height: 22px;
    text-transform: uppercase;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    letter-spacing: 0.075em
}

.pricelist-entry-title {
    font-size: 16px;
    line-height: 22px
}

.pricelist-icon {
    display: block;
    width: 1rem;
    height: 1rem;
    position: relative
}

.pricelist-icon::before,
.pricelist-icon::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background: currentColor;
    left: 50%
}

.pricelist-icon::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.pricelist-info-block {
    text-align: center;
    font-family: "Bookmania", serif;
    letter-spacing: 0.05em;
    margin: 1rem 0 0
}

.pricelist-info-block * {
    font-size: calc(var(--font-size) * var(--font-scale-s));
    line-height: 1rem
}

.pricelist-info-block p:not(:last-child) {
    margin-bottom: 1rem
}

.pricelist-info-block strong {
    font-family: "Trade Gothic Extended", sans-serif
}

.pricelist-lodges {
    background: #AF9A60;
    color: #fff6e9;
    padding-top: 2rem;
    padding-bottom: 2rem
}

.pricelist-lodges .pricelist-inner {
    border-bottom: none
}

.pricelist-table {
    margin: 1.5rem 0;
    white-space: nowrap
}

.pricelist-table small {
    display: none;
    text-transform: initial;
    font-family: "Bookmania", serif;
    letter-spacing: 0.05em;
    margin-left: .5rem
}

@media (min-width: 500px) {
    .pricelist-table small {
        display: inline-block
    }
}

.pricelist-entry-spacer {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    border-bottom: 1px dotted currentColor;
    margin: 0 1rem;
    opacity: .2
}

.pricelist-entry {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    font-family: "Trade Gothic Extended", sans-serif;
    text-transform: uppercase;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    letter-spacing: 0.2em;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    align-items: baseline;
    margin-bottom: .5rem
}

.pricelist-entry:first-child .pricelist-entry-spacer {
    opacity: 0
}

.pricelist-guests {
    margin: 2rem 0
}

.pricelist-guests-header,
.pricelist-guests-entry {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

.pricelist-guests-header *,
.pricelist-guests-entry * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 33.33333%;
    flex: 0 1 33.33333%
}

.pricelist-guests-header * {
    font-family: "Bookmania", serif;
    text-align: center;
    font-size: calc(var(--font-size) * var(--font-scale-s));
    line-height: 1rem
}

@media (min-width: 500px) {
    .pricelist-guests-header * {
        font-size: var(--font-size);
        line-height: 1rem
    }
}

.pricelist-guests-entry-block {
    font-size: var(--font-size);
    line-height: 1rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    font-family: "Trade Gothic Extended", sans-serif;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    align-items: baseline;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: .25rem 0
}

@media (min-width: 500px) {
    .pricelist-guests-entry-block {
        font-size: calc(var(--font-size) * var(--font-scale-m));
        line-height: 1.17rem;
        padding-top: 0.415rem;
        padding-bottom: 0.415rem;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        margin: 0
    }
}

.pricelist-guests-entry-block .spacer {
    border: none;
    height: 0;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    border-bottom: 1px dotted currentColor;
    opacity: .2;
    margin: 0 .5rem;
    display: none
}

@media (min-width: 500px) {
    .pricelist-guests-entry-block .spacer {
        display: block
    }
}

.age {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    margin-right: .5rem;
    white-space: nowrap
}

@media (min-width: 500px) {
    .age {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 25%;
        flex: 0 1 25%
    }
}

.checkbox {
    display: none
}

.checkbox:checked+.pricelist-title .pricelist-icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#promotions:checked ~ .pricelist-promotions,
#emotions:checked ~ .pricelist-emotions,
#massages:checked ~ .pricelist-massages,
#treatments:checked ~ .pricelist-treatments {
    max-height: 9999px
}

.pricelist-show-hide {
    -webkit-transition: all 200ms linear;
    transition: all 200ms linear;
    overflow: hidden;
    max-height: 0
}

.pricelist-show-hide .pricelist-info-block {
    padding-bottom: 2rem;
    text-align: left
}

.pricelist-inner label {
    padding: 2rem 0
}

.promotion,
.emotion {
    font-family: "Bookmania", serif;
    letter-spacing: 0.05em;
    margin-bottom: 1rem
}

.promotion-title,
.emotion-title {
    text-transform: uppercase
}

.emotion-price {
    margin: 1rem 0 2rem;
    font-size: calc(var(--font-size) * var(--font-scale-m));
    line-height: 1.17rem;
    padding-top: 0.415rem;
    padding-bottom: 0.415rem;
    font-family: "Trade Gothic Extended", sans-serif
}

.benessere-intro {
    text-align: center;
    font-family: "Bookmania", serif;
    letter-spacing: 0.05em;
    margin-bottom: 1.5rem
}

.benessere-header {
    font-size: 18px;
    line-height: 22px;
    font-family: "Trade Gothic Extended", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: .5rem
}

@media (min-width: 600px) {
    .benessere-header {
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap
    }
}

@media (max-width: 599px) {
    .benessere-header .benessere-title {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 100%;
        flex: 1 1 100%
    }
    .benessere-header .benessere-duration,
    .benessere-header .benessere-price {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
        flex: 0 1 auto
    }
}

.benessere-header::after {
    content: "";
    position: absolute;
    bottom: 3px;
    left: 0;
    right: 0;
    border-bottom: 1px dotted currentColor;
    opacity: 0.25;
    z-index: -1
}

.benessere-title {
    position: relative;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 50%;
    flex: 0 1 50%
}

.benessere-duration {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    text-align: center
}

.benessere-price {
    position: relative;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    text-align: right
}

.benessere-txt {
    background: #fff6e9
}

.benessere-text {
    font-family: "Bookmania", serif;
    letter-spacing: 0.05em;
    margin-bottom: 1.5rem;
    max-width: 50%;
    font-size: 14px;
    line-height: 18px
}

.pricelist-lodges .pricelist-info-block:last-child {
    text-align: left
}

.pricelist-lodges .pricelist-info-block:last-child p {
    margin-bottom: 0
}

.pricelist-lodges .pricelist-info-block:last-child ul {
    list-style-position: inside
}

.pricelist-lodges .pricelist-inner {
    border-bottom: none !important
}

.lodge-header {
    padding: 2rem 1rem 1.5rem;
    text-align: center;
    background: #AF9A61;
    color: #fff6e9;
    border-bottom: 1px solid black
}

.lodge-title {
    font-size: 22px;
    font-family: "Trade Gothic Extended", sans-serif;
    text-transform: uppercase;
    display: inline-block
}

.lodge-subtitle {
    font-size: 18px;
    font-family: "Bookmania", sans-serif;
    display: inline-block
}

.lodge-chalet {
    font-size: 12px;
    text-transform: uppercase;
    font-family: "Trade Gothic Extended", sans-serif;
    margin-top: 0.5rem
}

.lodge-map-container {
    width: 100%;
    position: relative;
    padding-bottom: 6rem;
    background: #AF9A61
}

@media (min-width: 900px) {
    .lodge-map-container {
        padding-bottom: 0
    }
}

.lodge-map-wrapper {
    width: 100%;
    position: relative
}

.lodge-map-wrapper svg {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.lodge-dots {
    position: absolute;
    bottom: 0.75rem;
    left: 0;
    right: 0;
    text-align: center
}

@media (min-width: 900px) {
    .lodge-dots {
        text-align: left;
        right: initial;
        top: 1rem;
        left: 1rem
    }
}

.lodge-dot {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: inline-flex;
    vertical-align: middle;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-content: center;
    align-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 50%;
    background: #836534;
    color: #fff6e9;
    text-align: center;
    margin: 0 .25rem
}

@media (min-width: 900px) {
    .lodge-dot {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        margin: 0 0 1rem 0
    }
}

.lodge-dot span {
    display: block;
    width: 100%
}

.lodge-size {
    font-size: 22px;
    padding: 0
}

.lodge-info {
    border-top: 1px solid #fff6e9;
    border-bottom: 1px solid #fff6e9;
    background: #AF9A61;
    color: #fff6e9;
    padding: 1rem
}

@media (min-width: 900px) {
    .lodge-info {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        padding: 1rem 2rem
    }
}

.lodge-desc,
.lodge-specs {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 45%;
    flex: 0 1 45%;
    margin-bottom: 2rem
}

@media (min-width: 900px) {
    .lodge-desc,
    .lodge-specs {
        margin-bottom: 0
    }
}

.lodge-desc p,
.lodge-specs p {
    margin-bottom: 1rem
}

.lodge-desc ul,
.lodge-specs ul {
    list-style-position: inside
}

.lodge-desc a,
.lodge-specs a {
    background: -webkit-linear-gradient(bottom, white 1px, transparent 1px);
    background: linear-gradient(to top, white 1px, transparent 1px);
    background-repeat: no-repeat
}

.lodge-desc .lodge-info-specs,
.lodge-specs .lodge-info-specs {
    margin-bottom: 3rem
}

.lodge-desc .lodge-info-title,
.lodge-specs .lodge-info-title {
    margin-bottom: 1rem
}

.lodge-desc .lodge-specs-list,
.lodge-specs .lodge-specs-list {
    list-style: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.lodge-desc .lodge-spec,
.lodge-specs .lodge-spec {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 100%;
    flex: 1 1 100%;
    border-bottom: 1px solid white;
    padding: 2px 0
}

@media (min-width: 400px) {
    .lodge-desc .lodge-spec,
    .lodge-specs .lodge-spec {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 50%;
        flex: 1 1 50%
    }
}

@media (min-width: 750px) {
    .lodge-desc .lodge-spec,
    .lodge-specs .lodge-spec {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 100%;
        flex: 1 1 100%
    }
}

@media (min-width: 900px) {
    .lodge-desc .lodge-spec,
    .lodge-specs .lodge-spec {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 50%;
        flex: 1 1 50%
    }
}

body.lodge .buttons {
    background: #AF9A61
}

body.lodge .buttons .button {
    color: #AF9A61;
    background: white;
    -webkit-transition: color 300ms, background 300ms;
    transition: color 300ms, background 300ms
}

body.lodge .buttons .button:hover {
    background: black;
    color: white
}

body.disponibilita .availability {
    overflow: auto;
    max-height: none
}

[data-page="error"] body,
[data-page="error"] {
    width: 100%;
    height: 100%;
    background: #948354;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    text-align: center
}

[data-page="error"] .error-container {
    padding: 1rem;
    max-width: 40rem
}

[data-page="error"] .error-message {
    color: white;
    font-family: "Trade Gothic Extended", sans-serif;
    font-size: 18px;
    line-height: 22px;
    text-transform: uppercase
}

[data-page="error"] .header,
[data-page="error"] .footer {
    display: none
}

/* Archive Accordion */

.input-checkbox {
  position: absolute;
  opacity: 0;
  z-index: -1;
}

.row {
  display: flex;
}
.row .col {
  flex: 1;
}

/* Accordion styles */
.tabs {
  overflow: hidden;
}

.tab {
  border-bottom: 1px solid black;
  width: 100%;
  color: black;
  overflow: hidden;
}
.tab-label {
  display: flex;
  justify-content: space-between;
  padding: 1em;
  cursor: pointer;
  font-size: 22px;

  /* Icon */
}
.tab-label:hover {
}
.link-label::after, .tab-label::after {
  content: "\2B";
  width: 1em;
  height: 100%;
  text-align: center;
  transition: all 0s;
}
.link-label::after {
  content: "\276F";  
}
.tab-content {
  max-height: 0;
  padding: 0 0em;
  transition: all 0s;
}
.tab-close {
  display: flex;
  justify-content: flex-end;
  padding: 1em;
  font-size: 0.75em;
  cursor: pointer;
}
.tab-close:hover {
}

input:checked + .tab-label {
}
input:checked + .tab-label::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
input:checked ~ .tab-content {
  max-height: 9999px;
  padding-bottom: 1em;
  padding-top: 1em;
}

.publications {
  border-bottom: 1px solid black;
  width: 100%;
  color: black;
  padding: 1 0em;
  overflow: hidden;
  margin-bottom: 3em;
}

.tab-content .publication {
  margin: 1em 0em;
}

.publication {
  margin: 2em 0em;
}

.publication:hover {
    text-decoration: underline
}

.expimages {
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.expitem {
    padding-right: 20px;
    padding-bottom: 20px;
    max-width: 210px;
    text-align: center;
}


/* Map */

.map {
    margin-bottom: 3em;
}

.overlay {
background: transparent;
position: relative;
width: 100%; /* your iframe width */
height: 400px; /* your iframe height */
top: 400px; /* your iframe height */
margin-top: -400px; /* your iframe height */
}

@media (min-width: 451px) {
.overlay {
height: 600px; /* your iframe height */
top: 600px; /* your iframe height */
margin-top: -600px; /* your iframe height */
    }
}

.googlemap {
    width: 100%;
    height: 400px
}

@media (min-width: 451px) {
.googlemap {
    height: 600px
}
}

.contact-container {
    padding: 0 1rem;
    margin-bottom: 3em;
}

.contact-inner {
    margin: 0 auto;
    max-width: 46rem;
}

.transport {
  overflow: hidden;
  margin-bottom: 3em;
}

.contact-info {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto
}

@media (min-width: 1100px) {
    .contact-info {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
        flex: 0 1 auto
    }
}

.contact-info-block {
    display: inline-block;
    vertical-align: top;
    width: auto;
    margin-right: 1rem
}

@media (min-width: 300px) {
    .contact-info-block {
        margin-right: 20%;
    }
}

.contact-info-block p,
.contact-info-block a {
    line-height: 18px
}

.contact-info-block a {
    display: block
}

.contact-info-block a:hover {
    text-decoration: underline
}

.contact-info-block p {
    margin-bottom: 1rem
}

.video-container {
  padding: 0 1rem;
}

.video-center {
  max-width: 740px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.video-wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  margin: 1.5em 0;
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* --- Tienda --- */

.card {
  padding: 1rem;
  text-align: center;
}

.cards {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-gap: 0rem;
}

.card-img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* Screen larger than 600px? 2 column */
@media (min-width: 600px) {
  .cards { grid-template-columns: repeat(2, 1fr); }
}

/* Screen larger than 900px? 3 columns */
@media (min-width: 900px) {
  .cards { grid-template-columns: repeat(2, 1fr); }
}

.product-details {
    display: flex;
}

.product-details > div {
    width: 50%;
}

.product-details > div:first-of-type {
    text-align: right;
    padding: 20px;
}

.add-to-cart {
    padding: 20px;
    text-align: left
}

/* --- Grid Gallery w/ Fancy Box --- */

.grid-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    grid-gap: 1px;
}

a:hover img {
    opacity: 80%
}

.grid-gallery img {
    display: block;
    width: 100%;
}

.grid-gallery-wrapper {
    margin-top: 3em;
}

/* Swiper for products */
.swiper-container {
    max-width: 800px;
    overflow: hidden;
    margin: 0 auto
}

.swiper-container img {
    max-width: 600px
}

.swiper-button-next {
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
    margin-right: 2rem;
}

.swiper-button-prev {
    -webkit-transform: translateY(-50%) rotate(135deg);
    transform: translateY(-50%) rotate(135deg);
    margin-left: 2rem;
}

.swiper-button-next, .swiper-button-prev {
    margin-top: 0;
    height: 1.5rem;
    width: 1.5rem;
    display: block;
    border-right: 1px solid black;
    border-bottom: 1px solid black;
    background-position: center;
}

.swiper-button-next::after, .swiper-button-prev::after {
  display: none;
}

.pdf-embed {
    width: 100%;
    height: 350px;
}

/* DESKTOP */
@media (min-width: 400px) {
  .grid-gallery {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.pdf-embed {
    width: 100%;
    height: 600px;
}
}

@media (min-width: 600px) {
    .cards {
    grid-gap: 2rem;
    }
}

.margin-top-s {
    margin-top: 1rem
}


