@keyframes appearIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}body,html{position:relative;margin:0;padding:0}body{background:url(img/overlay.png) #9ccf36;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif}body.welcome{display:flex;min-height:100%;padding:20px;align-items:center;justify-content:center;box-sizing:border-box}body.welcome #main-content{position:relative;flex-grow:1;max-width:500px;background:#fff;margin:auto;padding:20px;box-sizing:border-box;border-radius:10px;text-align:center;opacity:0;animation:appearIn 1s 1s ease-out forwards;transition:all 1s ease-in-out}body.welcome #main-content.move-left-desktop{position:absolute;top:0;left:0;width:50%;height:100vh;max-width:none;border-radius:0;opacity:1}body.welcome #main-content.move-down-phone #first-page,body.welcome #main-content.move-left-desktop #first-page{opacity:0}body.welcome #main-content.move-down-phone{position:absolute;top:50vh;left:0;width:100vw;max-width:none;border-radius:0;opacity:1}body.places #main-content #first-page,body.welcome #main-content #second-page,body.welcome #navigation{display:none}body.places,html{height:100%;min-height:100%}body.places #main-content{position:relative;width:100%;min-height:100%;box-sizing:border-box;padding-bottom:50px}button{outline:0}h1{font-family:"Sacramento",cursive;font-weight:100;font-size:40px;color:#9ccf36}a.button.primary,button.primary{display:inline-block;background:0 0;border:1px solid #9ccf36;border-radius:20px;padding:10px 30px;font-size:16px;color:#9ccf36;cursor:pointer;outline:0;text-decoration:none;transition:background .2s ease-in-out}a.button.primary:hover,button.primary:hover{background:rgba(156,207,54,.1)}.arrow{width:20px}.left-arrow{transform:rotate(180deg)}#main-content #first-page{opacity:1;transition:opacity 1s ease-in-out;font-weight:100}#main-content #first-page #gift-description{margin:40px 0}#main-content #first-page button{margin-bottom:20px}#main-content #second-page{position:relative;display:flex;flex-direction:row;min-height:100vh;margin-bottom:-50px}#main-content #second-page p{text-align:center;font-size:14px}#main-content #second-page h1{margin:14px 0;text-align:center}#main-content #second-page #place-description{width:100vw;min-height:100%;box-sizing:border-box;padding-bottom:50px;transform:translateX(0);transition:all .8s ease-in-out}#main-content #second-page #place-description.show-description{transform:translateX(-50%)}#main-content #second-page #place-description.show-description #place-description-intro{position:absolute;overflow:hidden;top:0;max-height:100%;bottom:0}#main-content #second-page #place-description.show-description div.place-description{left:50%}#main-content #second-page #place-description #place-description-container{position:relative;width:100%;height:100%;display:flex}#main-content #second-page #place-description #place-description-list{margin:0;padding:0;list-style-type:none}#main-content #second-page #place-description #place-description-list button{position:relative;display:block;width:100%;margin-bottom:10px;padding:10px 24px 10px 10px;font-size:14px;background:#f0f0f0;color:#6e6e6e;border:0;text-align:left;border-radius:6px;cursor:pointer;transition:all .2s ease-in-out}#main-content #second-page #place-description #place-description-list button .right-arrow{position:absolute;width:16px;right:8px;top:8px;fill:#8d8d8d;transition:all .2s ease-in-out}#main-content #second-page #place-description #place-description-list button:hover{background:#e3e3e3}#main-content #second-page #place-description #place-description-list button:hover .right-arrow,#main-content #second-page #place-description div.place-description .back-to-list:hover .left-arrow{fill:#414141}#main-content #second-page #place-description #place-description-intro{width:50vw;box-sizing:border-box;background:#fff;margin-bottom:-50px;padding:30px 30px 80px}#main-content #second-page #place-description div.place-description{width:50vw;padding:30px;background:#fff;position:relative;height:100%;padding-bottom:80px;box-sizing:border-box;text-align:center;transition:all 1s ease-in-out}#main-content #second-page #place-description #place-description-intro-container{opacity:1;transition:opacity 1s ease-in-out}#main-content #second-page #place-description div.place-description img{margin:5px;border:5px solid #f0f0f0;cursor:pointer;transition:.2s ease-in-out}#main-content #second-page #place-description div.place-description img:hover{border-color:#9ccf36}#main-content #second-page #place-description div.place-description .link{position:absolute;display:block;box-sizing:border-box;width:100%;max-width:200px;bottom:0;left:50%;transform:translateX(-50%);margin:20px 0}#main-content #second-page #place-description div.place-description .back-to-list{position:relative;display:block;padding:10px 20px 10px 30px;background:#f0f0f0;border:0;border-radius:20px;color:#606060;font-size:12px;text-align:left;cursor:pointer;outline:0;transition:all .2s ease-in-out}#main-content #second-page #place-description div.place-description .back-to-list .left-arrow{position:absolute;width:14px;top:13px;left:10px;fill:gray;transition:all .2s ease-in-out}#main-content #second-page #place-description div.place-description .back-to-list:hover{background:#e3e3e3}#main-content #second-page #place-description div.place-description.show{position:absolute;opacity:0;z-index:10}#main-content #second-page #map,#navigation{position:fixed;transform:none;transition:all 1s ease-out}#main-content #second-page #map{padding-bottom:50px;box-sizing:border-box;width:50%;left:50%;height:100%;transform-origin:bottom left}#main-content #second-page #map #map-container{height:100%}#main-content #second-page #map .marker{background:url(img/pin.svg) no-repeat;background-size:contain;width:20px;height:29px;cursor:pointer}#navigation{width:100%;height:50px;bottom:0;left:0;z-index:10;background:#fff;box-shadow:0 0 10px #787878;transform-origin:top left}#navigation #navigation-container{display:flex;align-items:center;justify-content:space-between;max-width:1090px;height:100%;margin:auto}#navigation #navigation-container .arrow-button{height:100%;padding:0 20px;background:0 0;border:0;outline:0;cursor:pointer}#navigation #navigation-container .arrow-button svg{transition:all .2s ease-in-out}#navigation #navigation-container .arrow-button:hover svg{fill:#4e4e4e}#navigation #navigation-container #navigation-links{display:flex;padding:0;margin:0;list-style-type:none}#navigation #navigation-container #navigation-links button.button-link{position:relative;cursor:pointer;background:0 0;box-shadow:inset 0 0 0 1px #d1d1d1;border:0;border-radius:50%;width:14px;height:14px;margin:0 2px;padding:0;outline:0;transition:all .2s ease-in-out}#navigation #navigation-container #navigation-links button.button-link:hover{box-shadow:inset 0 0 0 2px #d1d1d1}#navigation #navigation-container #navigation-links button.button-link.active{box-shadow:inset 0 0 0 4px #d1d1d1;transform:scale(1.25)}#navigation #navigation-container #navigation-links button.back-to-list{position:relative;margin-right:10px;background:0 0;border:0;cursor:pointer;outline:0}#navigation #navigation-container #navigation-links button.back-to-list::after{content:"";position:absolute;bottom:0;width:0;height:1px;background:#d1d1d1;left:50%;transform:translateX(-50%);transition:all .2s ease-in-out}#navigation #navigation-container #navigation-links button.back-to-list:hover::after{width:6px}#navigation #navigation-container #navigation-links button.back-to-list img,#navigation #navigation-container #navigation-links button.back-to-list.active::after{width:14px}#logo{width:150px;height:150px;margin:30px 0 20px}@media (max-width:900px){#main-content #second-page{flex-direction:column-reverse;overflow-x:hidden}#main-content #second-page #place-description{width:200vw}#main-content #second-page #place-description #place-description-intro,#main-content #second-page #place-description .place-description,#main-content #second-page #place-description div.place-description{width:100vw}#main-content #second-page #place-description.show-description div.place-description{left:50%}#main-content #second-page #map{position:relative;width:100vw;height:50vh;left:0;padding-bottom:0}}@media (max-width:640px){#main-content #first-page h1{font-size:34px;line-height:40px}#main-content #first-page #gift-description{margin:20px 0 30px}#logo{width:100px;height:100px;margin:14px 0}}@media (max-width:338px){#navigation .back-to-list{display:none}}@media (max-width:300px){#navigation #navigation-container #navigation-links{display:none}}