/* FONTS */

@font-face {
  font-family: 'CaviarDreams';
  src: url('../font/CaviarDreams.ttf')  format('truetype');
}

@font-face{
    font-family: "GreatVibes";
    src: url('../font/GreatVibes-Regular.ttf');
}



/* ANIMATIONS */

@-webkit-keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}
         
@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}



/* UNIVERSAL */
* {
    box-sizing: border-box;
}

html {
    height: 100%;
    width: 100%;
}

body {
    height: 100%;
    width: 100%;
    background-color: #a2636b;
}

a {
    text-align: center;
    text-decoration: underline;
}

p, li, a {
    font-family: CaviarDreams;
    line-height: 1.2;
    color: white;
    font-size: calc(8px + .9vw);
}

p {
    cursor: default;
}

h2 {
    font-family: CaviarDreams;
    color: white;
    font-size: calc(12px + 3vw);
    text-align: center;
    text-transform: uppercase;
    display: flex;
    flex-flow: column;
    padding-top: 2vh;
    justify-content: center;
    cursor: default;
}

h3 {
    font-family: CaviarDreams;
    color: white;
    font-size: calc(10px + 2vw);
    text-align: center;
    text-transform: uppercase;
    display: flex;
    flex-flow: column;
    padding-bottom: 5vh;
    cursor: default;
}

.wrapper {
    width: 100%;
    height: 100%;
    display: grid;
}

picture {
    width: 90%;
    height: 90%;
    background-repeat: no-repeat;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    background-size: cover;
    background-position: 50% 50%;
    align-self: center;
    justify-self: center;
    border-radius: .5vw;
    background-color: #111;
}

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

.imgContainer {
    width: 70%;
    height: 90%;
    background-repeat: no-repeat;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    background-size: contain;
    background-position: 50% 50%;
    align-self: center;
    justify-self: center;
    border-radius: .5vw;
    background-color: #111;
}



/* HEADER */

header {
    background-color: #b66770;
    position: fixed;
    height: 20vh;
    width: 100%;
    transition-duration: .5s;
    z-index: 1000;
    display: grid;
    align-items: center;
    background-image: linear-gradient(#865057 , #9d545c);
    top: -20vh;
    grid-template-rows: 100%;
    grid-template-columns: 100%;
}

header.active {
    top: 0;
}

h1 {
    text-align: center;
    font-size: calc(24px + 5vw);
    color: white;
    width: 100%;
    font-family: GreatVibes;
    grid-column: 1;
    grid-row: 1;
    cursor: default;
    opacity: 0;
    animation: fadeIn 1.5s;
    animation-delay: .5s;
    animation-fill-mode: both;
}



/* NAVBAR */

nav {
    position: fixed;
    top: 20vh;
    width: 100%;
    height: 7vh;
    min-height: 40px;
    background-color: #b66770;
    box-shadow: 0px 5px 10px 5px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    z-index: 100;
    transition-duration: .5s;
    border-top: solid 0.25vh white;
    border-bottom: solid 0.25vh white;
}

nav.sticky {
    top: 0;
}

nav > ul {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-around;
}

nav > ul > li {
    display: inline-flex;
    height: 100%;
    color: white;
    text-align: center;
    vertical-align: middle;
    line-height: 6.5vh;
    font-size: calc(6px + 1.9vw);
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
    font-family: CaviarDreams;
    align-items: center;
}

li:hover {
    color: #662b32;
}


/* nav fade-in animation */

nav > ul > li:nth-child(1) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-fill-mode: both; 
}

nav > ul > li:nth-child(2) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .1s;
    animation-fill-mode: both; 
}

nav > ul > li:nth-child(3) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .2s;
    animation-fill-mode: both; 
}

nav > ul > li:nth-child(4) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .3s;
    animation-fill-mode: both; 
}

nav > ul > li:nth-child(5) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .4s;
    animation-fill-mode: both; 
}

nav > ul > li:nth-child(6) {
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .5s;
    animation-fill-mode: both; 
}


/* flags */

.flag {
    float: right;
    margin-right: 1vw;
    margin-left: 1vw;
    width: 2.5vw;
    height: 2.5vw;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
    border-radius: 50%;
    opacity: 0;
    animation: fadeIn .5s;
    animation-delay: .5s;
    animation-fill-mode: both; 
}

.inactive {
    -webkit-filter: grayscale(70%);
       -moz-filter: grayscale(70%);
         -o-filter: grayscale(70%);
        -ms-filter: grayscale(70%);
            filter: grayscale(70%); 
}

.flag:hover {
    -webkit-filter: grayscale(0%);
       -moz-filter: grayscale(0%);
         -o-filter: grayscale(0%);
        -ms-filter: grayscale(0%);
            filter: grayscale(0%); 
}



/* ROOM SELECTOR */

#roomSelector {
    /*height: 40vh;*/
    height: 30vh;
    width: 30vw;
    background-color: #8c4e56;
    z-index: 10;
    transition-duration: 0.5s;
    position: absolute;
    top: -50vh;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    border-radius: 0 0 .5vw 0;
}

#roomSelector.active {
    top: 7vh;
}

#roomSelector.active.plus {
    top: 27vh;
}

#roomSelector > ul > li {
    font-family: CaviarDreams;
    color: white;
    line-height: 6.5vh;
    font-size: calc(8px + 3vh);
    padding-top: 2vh;
    padding-left: 2vw;
    cursor: pointer;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
}

#roomSelector > ul > li:hover {
    color: #662b32;
}

#arrow > img {
    display: none;
}



/* HOME */

#home {
    width: 100%;
    height: 100%;
}

#home >.wrapper {
    grid-template-columns: 50% 50%;
    grid-template-rows: 100%;
    padding-top: 27vh;
}

#home > .wrapper > .imgContainer {
    background-image: url(../img/rooms/home/0.jpg);
    opacity: 0;
    animation: fadeIn 1s;
    animation-delay: .5s;
    animation-fill-mode: both; 
}

#home > .wrapper > .textContainer {
    width: 100%;
    height: 100%;
    grid-row: 1;
    grid-column: 2;
    text-align: justify;
    align-self: center;
    justify-self: center;
    padding: 5% 10% 5% 10%;
    opacity: 0;
    animation: fadeIn 1s;
    animation-delay: .5s;
    animation-fill-mode: both; 
}


/* ROOMS */

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

.room > .wrapper {
    grid-template-rows: 15% 85%;
    padding-top: 7vh;
}

.room.leftAligned > .wrapper {
    grid-template-columns: 65% 35%;
}

.room.rightAligned > .wrapper {
    grid-template-columns: 35% 65%;
}

.room > .wrapper > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
    justify-content: center;
    padding-top: 5vh;
}

.gallery > .button {
    width: 5%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    display: flex;
    cursor: pointer;
    transition-duration: .5s;
    justify-content: center;
    align-items: center;
}

.gallery > .button:hover {
    background-color: rgba(0,0,0,0.7);
}

.button.left {
    float:left;
}

.button.right {
    float: right;
}

.button > img {
    width: 40%;
}

.room.leftAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 1;
}

.room.rightAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 2;
}

.room > .wrapper > .description {
    width: 80%;
    height: 90%;
    text-align: justify;
    align-self: center;
    justify-self: center;
}

.room.leftAligned > .wrapper > .description {
    grid-row: 2;
    grid-column: 2;
}

.room.rightAligned > .wrapper > .description {
    grid-row: 2;
    grid-column: 1;
}

.description > p {
    font-size: calc(10px + 1vw);
    line-height: 2.5;
}



/* DOUBLE ROOM */

#doubleRoom > .wrapper > .gallery {
    background-image: url(../img/rooms/doubleRoom/0.jpg);
}



/* APARTMENT */

#apartment > .wrapper > .gallery {
    background-image: url(../img/rooms/apartment/0.jpg);
}



/* DELUXE APARTMENT */

#deluxeApartment > .wrapper > .gallery {
    background-image: url(../img/rooms/deluxeApartment/0.jpg);
}



/* HONEYMOON SUITE */

#honeymoonSuite > .wrapper > .gallery {
    background-image: url(../img/rooms/honeymoonSuite/0.jpg);
}



/* SERVICES */

#services > .wrapper > .gallery {
    background-image: url(../img/services/0.jpg);
}

.description > .text > p {
    font-size: calc(10px + 1vw);
    line-height: 2.5;
}



/* BOOKING */

#booking {
    width: 100%;
    height: 100%;
}

#booking > .wrapper {
    grid-template-columns: 40% 60%;
    grid-template-rows: 100%;
    padding-top: 7vh;
}

#bookingSection {
    grid-row: 1;
    grid-column: 1;
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 15% 25% 60%;
    padding-left: 5%;
    padding-right: 5%;
}

#bookingSection > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
    justify-content: flex-end;
}

.bookingButton {
    width: 15vw;
    height: 15vw;
    background-size: contain;
    background-repeat: no-repeat;
    justify-self: center;
    cursor: pointer;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    border-radius: 1vw;
    align-self: center;
}

#bookingCom {
    background-image: url(../img/icons/booking.jpg);
    grid-row: 3;
    grid-column: 1;
    margin-right: 5vw;
}

#szallasHu {
    background-image: url(../img/icons/szallas.jpg);
    grid-row: 3;
    grid-column: 2;
    margin-left: 5vw;
}

#bookingSection > #direct {
    grid-row: 2;
    grid-column: 1 / span 2;
    text-align: center;
    align-self: end;
}

#direct > p {
    line-height: 2;
}

#policy {
    grid-row: 1;
    grid-column: 2;
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 15% 10% 10% 10% 10% 10% 10% 10% 10% 5%;
    padding-left: 5%;
    padding-right: 5%;
}

#policy > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
    justify-content: flex-end;
}

#policy > p:nth-child(2) {
    grid-row: 3;
    grid-column: 1;
}

#policy > p:nth-child(3) {
    grid-row: 3;
    grid-column: 2;
}

#policy > p:nth-child(4) {
    grid-row: 4;
    grid-column: 1;
}

#policy > p:nth-child(5) {
    grid-row: 4;
    grid-column: 2;
}

#policy > p:nth-child(6) {
    grid-row: 5;
    grid-column: 1 / span 2;
}

#policy > p:nth-child(7) {
    grid-row: 6;
    grid-column: 1 / span 2;
}

#policy > p:nth-child(8) {
    grid-row: 7;
    grid-column: 1 / span 2;
}

#policy > p:nth-child(9) {
    grid-row: 8;
    grid-column: 1 / span 2;
}



/* CONTACT */

#contact {
    width: 100%;
    height: 100%;
}

#contact > .wrapper {
    grid-template-columns: 60% 40%;
    grid-template-rows: 100%;
    padding-top: 7vh;
}

#map {
    grid-row: 1;
    grid-column: 1;
    width: 90%;
    height: 90%;
    display: flex;
    justify-self: center;
    margin-top: 5vh;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    border-radius: .5vw;
}

#contactDetails {
    grid-row: 1;
    grid-column: 2;
    display: flex;
    flex-flow: column;
    text-align: center;
}

#contactDetails > p {
    font-size: calc(8px + 1.5vw);
    line-height: 2;
}

#contactDetails img {
    align-self: center;
    width: 50%;
}

#address {
    padding-top: 5vh;
}

#coordinates {
    padding-bottom: 5vh;
}



/* NEARBY */

#nearby {
    width: 100%;
    height: 100%;
}

#nearby > .wrapper {
    grid-template-columns: 25% 25% 50%;
    grid-template-rows: 100%;
    padding-top: 7vh;
}


/* left column */

#nearby > .wrapper > #categories {
    grid-column: 1;
    grid-row: 1;
    padding: 10% 0 10% 10%;
    border-right: 5px solid white;
    border-radius: 5%;
}

#categories li {
    font-size: calc(10px + 1.6vw);
    line-height: 1.5;
    cursor: pointer;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
}

#categories li:hover {
    color: #b58d92;
}

#categories li.active {
    color: #b58d92;
    cursor: default;
}


/* middle column */

#nearby > .wrapper > .subcategory {
    grid-column: 2;
    grid-row: 1;
    padding: 10% 0 10% 10%;
    border-right: 5px solid white;
    border-radius: 5%;
}

.subcategory {
    display: none;
}

.subcategory.active {
    display: block;
}

.subcategory li {
    font-size: calc(10px + 1vw);
    line-height: 2;
    cursor: pointer;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
}

.subcategory li:hover {
    color: #b58d92;
}

.subcategory li.active {
    color: #b58d92;
    cursor: default;
}


/* right column */

#nearby > .wrapper > #details {
    grid-column: 3;
    grid-row: 1;
    display: grid;
    grid-template-rows: 50% 7.5% 32.5% 10%;
    grid-template-columns: 100%;
}

#details > .imgContainer {
    grid-row: 1;
    grid-column: 1;
    width: 90%;
    height: 90%;
}

#details > h3 {
    grid-column: 1;
    grid-row: 2;
}

#details > p {
    grid-column: 1;
    grid-row: 3;
    padding: 0 5% 0 5%;
    font-size: 1.2vw;
}

#details > a {
    grid-column: 1;
    grid-row: 4;
    padding-top: 5vh;
}




/* GRANT */

#grant {
    width: 100%;
    height: 100%;
}

#grant .wrapper {
    display: block;
    width: 100%;
    height: 100%;
    margin-top: 7vh;
    padding-left: 10vw;
    padding-right: 10vw;
}

#grant .description {
    padding-top: 5vh;
}

#grant p {
    line-height: 1;
    font-size: calc(8px + .6vw);
}

#grant .details {
    padding-top: 5vh;
}

#grant li:hover {
    color: white;
}

#grant .final-words {
    padding-top: 5vh;
}

#grant .final-words p {
    font-size: calc(8px + 1vw);
    text-align: center;
}

#grant .banner {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 20vh;
    background-image: url(../img/grant-banner.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 100%;
}

















/* PHONE PORTRAIT */

@media only screen and (min-width: 320px) and (max-width: 480px) and (orientation : portrait) {

/* UNIVERSAL */

p {
    font-size: calc(8px + 1vw);
}

h2 {
    font-size: calc(16px + 3.5vw);
}



/* HEADER */

header {
    height: 15vh;
    top: 0;
    box-shadow: 0px 5px 10px 5px rgba(0, 0, 0, 0.2);
}

h1 {
    font-size: calc(24px + 5vw);
}



/* NAVBAR */

nav {
    top: -22vh;
    height: 40vh;
    border-top: none;
    border-bottom: none;
    border-radius: 0 0 2vh 2vh;
}

nav.active {
    top: 15vh;
}

nav.sticky {
    top: -22vh;
}

nav.sticky.active {
    top: 15vh;
}

nav > ul {
    height: 37vh;
    display: block;
}

nav > ul > li {
    display: inline-block;
    height: 15%;
    width: 49%;
    line-height: 8vh;
    font-size: calc(8px + 2vh);
}

#languageSelector {
    margin-top: 10vh;
    width: 100%;
    display: flex;
    justify-content: space-around;
}

.flag {
    margin:5vw;
    width: 10vw;
    height: 10vw;
}

#arrow {
    width: 100%;
    height: 3vh;
    border-radius: 0 0 2vh 2vh;
    justify-content: center;
    display: flex;
    align-items: center;
    background-color: #8a4d54;
}

nav.active > #arrow {
    background-color: #b96670;
}

#arrow > img {
    display: block;
    height: 50%;
    transition-duration: .4s;
}

nav.active > #arrow > img {
    transform: rotate(180deg);
}



/* HOME */

#home >.wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 40% 60%;
    padding-top: 18vh;
}

#home > .wrapper > .imgContainer {
    grid-row: 1;
    grid-column: 1;
}

.imgContainer {
    border-radius: 3vw;
}

picture {
    border-radius: 3vw;
}

#home > .wrapper > .textContainer {
    grid-row: 2;
    grid-column: 1;
}



/* ROOMS */

.room > .wrapper {
    grid-template-rows: 10% 50% 40%;
    padding-top: 18vh;
}

.room.leftAligned > .wrapper {
    grid-template-columns: 100%;
}

.room.rightAligned > .wrapper {
    grid-template-columns: 100%;
}

.room > .wrapper > h2 {
    grid-row: 1;
    grid-column: 1;
    justify-content: center;
    padding-top: 2vh;
}

.room.leftAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 1;
}

.room.rightAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 1;
}

.room > .wrapper > .description {
    width: 80%;
    height: 90%;
}

.room.leftAligned > .wrapper > .description {
    grid-row: 3;
    grid-column: 1;
}

.room.rightAligned > .wrapper > .description {
    grid-row: 3;
    grid-column: 1;
}

.description > p {
    font-size: calc(10px + 1vw);
    line-height: 1.5;
}

.gallery > .button {
    width: 10%;
}



/* BOOKING */

#booking > .wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 25% 75%;
    padding-top: 15vh;
}

#bookingSection {
    grid-template-columns: 50% 50%;
    grid-template-rows: 40% 50% 20%;
}

#bookingSection > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
}

#policy {
    grid-row: 2;
    grid-column: 1;
}



/* CONTACT */

#contact > .wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 65% 35%;
    padding-top: 15vh;
}

#map {
    width: 100%;
    height: 100%;
    margin-top: 0;
    border-radius: 0 0 5vw 5vw;
}

#contactDetails {
    grid-row: 2;
    grid-column: 1;
}

#contactDetails > p {
    font-size: calc(10px + 1.5vw);
    line-height: 2;
}
#contactDetails img {
    display: none;
}

#coordinates {
    padding-bottom: 5vh;
}



/* NEARBY */

#nearby {
    width: 100%;
    height: 100%;
}

#nearby > .wrapper {
    grid-template-columns: 50% 50%;
    grid-template-rows: 45% 55%;
    padding-top: 18vh;
}


/* top-left column */

#categories li {
    font-size: calc(4px + 1.5vh);
    line-height: 1.3;
}


/* top-right column */

#nearby > .wrapper > .subcategory {
    border-right: none;
}

.subcategory li {
    line-height: 1.3;
}


/* bottom row */

#nearby > .wrapper > #details {
    grid-column: 1 / span 2;
    grid-row: 2;
}

#details > p {
    font-size: calc(2px + .7vh);
}

#details > a {
    padding-top: 0;
}





/* GRANT */

#grant .wrapper {
    width: 100%;
    height: 100%;
    margin-top: 18vh;
    padding-left: 5vw;
    padding-right: 5vw;
    display: block;
}

#grant .description {
    padding-top: 3vh;
}

#grant p {
    line-height: 1;
    font-size: calc(8px + .6vw);
}

#grant .details {
    padding-top: 1vh;
}

#grant li:hover {
    color: white;
}

#grant .final-words {
    padding-top: 2vh;
}

#grant .final-words p {
    font-size: calc(8px + .6vw);
    text-align: center;
}

#grant .banner {
    height: 7vh;
}



}























/* PHONE LANDSCAPE */
@media only screen and (min-width: 481px) and (max-width: 1023px) and (orientation : landscape){

h1 {
    font-size: calc(20px + 4vw);
}

nav {
    height: 40px;
}

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

#home >.wrapper {
    padding-top: calc(40px + 20vh);
}

p {
    font-size: calc(6px + .5vw);
}

.room > .wrapper {
    padding-top: 40px;
}

.description > p {
    font-size: calc(6px + 1vw);
    line-height: 1.8;
}

.gallery > .button {
    width: 7.5%;
}

#booking > .wrapper {
    padding-top: 40px;
}

#contact > .wrapper {
    padding-top: 40px;
}

#contactDetails > p {
    font-size: calc(6px + 1.5vw);
}

#nearby > .wrapper {
    padding-top: 40px;
}

#nearby > .wrapper > #categories {
    padding: 5% 0 10% 10%;
}

#nearby > .wrapper > .subcategory {
    padding: 5% 0 10% 10%;
}

#categories li {
    font-size: calc(6px + 1vw);
    line-height: 1.8;
}

.subcategory li {
    font-size: calc(6px + .8vw);
    line-height: 1.8;
}

#nearby > .wrapper > #details {
    grid-template-rows: 50% 5% 35% 10%;
}

#details > h3 {
    font-size: calc(6px + 1vw);
}

#details > p {
    font-size: calc(4px + .5vw);
}

#details > a {
    padding-top: 1.5vh;
}

}


























/* TABLET PORTRAIT */

@media only screen and (min-width: 481px) and (max-width: 1024px) and (orientation : portrait){

header {
    top: 0;
    height: 15vh;
    box-shadow: 0px 5px 10px 5px rgba(0, 0, 0, 0.2);
}

p {
    font-family: CaviarDreams;
    line-height: 1.2;
    color: white;
    font-size: calc(8px + 1vw);
}

h2 {
    font-size: calc(16px + 3.5vw);
}

nav {
    top: -22vh;
    height: 40vh;
    border-top: none;
    border-bottom: none;
    border-radius: 0 0 2vh 2vh;
}

nav.active {
    top: 15vh;
}

nav.sticky {
    top: -22vh;
}

nav.sticky.active {
    top: 15vh;
}

nav > ul {
    height: 37vh;
    display: block;
}

nav > ul > li {
    display: inline-block;
    height: 15%;
    width: 49%;
    text-align: center;
    vertical-align: middle;
    line-height: 8vh;
    font-size: calc(8px + 2vh);
}

#languageSelector {
    margin-top: 10vh;
    width: 100%;
    display: flex;
    justify-content: space-around;
}

.flag {
    float: right;
    margin:5vw;
    width: 10vw;
    height: 10vw;
}


#arrow {
    width: 100%;
    height: 3vh;
    border-radius: 0 0 1vh 1vh;
    justify-content: center;
    display: flex;
    align-items: center;
    background-color: #8a4d54;
}

nav.active > #arrow {
    /*background-color: #b96670;*/
}

#arrow > img {
    display: block;
    height: 50%;
    transition-duration: .4s;
}

nav.active > #arrow > img {
    transform: rotate(180deg);
}

#home >.wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 60% 40%;
    padding-top: 18vh;
}

#home > .wrapper > .imgContainer {
    grid-row: 1;
    grid-column: 1;
}

.imgContainer {
    border-radius: 1.5vw;
}

picture {
    border-radius: 1.5vw;
}

#home > .wrapper > .textContainer {
    grid-row: 2;
    grid-column: 1;
}


/* ROOMS */

.room > .wrapper {
    grid-template-rows: 10% 50% 40%;
    padding-top: 18vh;
}

.room.leftAligned > .wrapper {
    grid-template-columns: 100%;
}

.room.rightAligned > .wrapper {
    grid-template-columns: 100%;
}

.room > .wrapper > h2 {
    grid-row: 1;
    grid-column: 1;
    justify-content: center;
    padding-top: 2vh;
}

.room.leftAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 1;
}

.room.rightAligned > .wrapper > .gallery {
    grid-row: 2;
    grid-column: 1;
}

.room > .wrapper > .description {
    width: 80%;
    height: 90%;
    text-align: justify;
    align-self: center;
    justify-self: center;
}

.room.leftAligned > .wrapper > .description {
    grid-row: 3;
    grid-column: 1;
}

.room.rightAligned > .wrapper > .description {
    grid-row: 3;
    grid-column: 1;
}

.description > p {
    font-size: calc(10px + 1vw);
    line-height: 1.5;
}

.gallery > .button {
    width: 5%;
}



/* BOOKING */

#booking > .wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 30% 70%;
    padding-top: 15vh;
}

#bookingSection {
    grid-row: 1;
    grid-column: 1;
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 40% 40% 20%;
    padding-left: 5%;
    padding-right: 5%;
}

#bookingSection > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
    padding-bottom: 1vh;
}

#bookingCom {
    width: 10vw;
    height: 10vw;
    grid-row: 2;
    grid-column: 1;
    justify-self: flex-end;
    margin-right: 5vw;
}

#szallasHu {
    width: 10vw;
    height: 10vw;
    grid-row: 2;
    grid-column: 2;
    justify-self: flex-start;
    margin-left: 5vw;
}

#bookingSection > p {
    grid-row: 3;
    grid-column: 1 / span 2;
    text-align: center;
    padding-top: 3vh;
}

#policy {
    grid-row: 2;
    grid-column: 1;
}

#policy > h2 {
    grid-row: 1;
    grid-column: 1 / span 2;
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
}



/* CONTACT */

#contact > .wrapper {
    grid-template-columns: 100%;
    grid-template-rows: 65% 35%;
    padding-top: 15vh;
}

#map {
    grid-row: 1;
    grid-column: 1;
    width: 100%;
    height: 100%;
    display: flex;
    justify-self: center;
    margin-top: 0;
    box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.3);
    border-radius: 0 0 5vw 5vw;
    margin-top: 2.7vh;
}

#contactDetails {
    grid-row: 2;
    grid-column: 1;
    display: flex;
    flex-flow: column;
    justify-content: center;
    text-align: center;
}

#contactDetails > p {
    font-size: calc(8px + 1.5vw);
    line-height: 2;
}

#coordinates {
    padding-bottom: 5vh;
}



/* NEARBY */

#nearby {
    width: 100%;
    height: 100%;
}

#nearby > .wrapper {
    grid-template-columns: 25% 25% 50%;
    grid-template-rows: 100%;
    padding-top: 18vh;
}

#nearby > .wrapper > #categories {
    grid-column: 1;
    grid-row: 1;
    padding: 10% 0 10% 10%;
    border-right: 5px solid white;
    border-radius: 5%;
}

#nearby > .wrapper > .subcategory {
    grid-column: 2;
    grid-row: 1;
    padding: 10% 0 10% 10%;
    border-right: 5px solid white;
    border-radius: 5%;
}

#nearby > .wrapper > #details {
    grid-column: 3;
    grid-row: 1;
    display: grid;
    grid-template-rows: 50% 7.5% 32.5% 10%;
    grid-template-columns: 100%;
}

#details > .imgContainer {
    grid-row: 1;
    grid-column: 1;
    background-image: url('../img/adventures/SarudAquaglide.jpg');
    width: 90%;
    height: 90%;
}

#details > h3 {
    grid-column: 1;
    grid-row: 2;
}

#details > p {
    grid-column: 1;
    grid-row: 3;
    padding: 0 5% 0 5%;
    font-size: calc(4px + 1.1vw);
}

#details > a {
    grid-column: 1;
    grid-row: 4;
    padding-top: 5vh;
}

#categories li {
    font-size: calc(10px + 1.6vw);
    line-height: 1.5;
    cursor: pointer;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
}

#categories li:hover {
    color: #b66770
}

#categories li.active {
    color: #b66770;
    cursor: default;
}


.subcategory {
    display: none;
}

.subcategory.active {
    display: block;
}

.subcategory li {
    font-size: calc(10px + 1vw);
    line-height: 2;
    cursor: pointer;
    transition-timing-function: ease,linear,ease;
    transition-duration: .3s,.4s,.3s;
}

.subcategory li:hover {
    color: #b66770
}

.subcategory li.active {
    color: #b66770;
    cursor: default;
}

}
