@charset "UTF-8";
@font-face {
  font-family: "Schnyder";
  src: url("../fonts/SchnyderSLight.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Schnyder";
  src: url("../fonts/SchnyderSLightItalic.otf") format("opentype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Schnyder";
  src: url("../fonts/SchnyderSDemi.otf") format("opentype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "SchnyderL";
  src: url("../fonts/SchnyderLLightItalic.otf") format("opentype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Fakt";
  src: url("../fonts/FaktPro-Blond.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Fakt";
  src: url("../fonts/FaktPro-Medium.otf") format("opentype");
  font-weight: bold;
  font-style: normal;
}
* {
  box-sizing: border-box;
}

html {
  font-size: 1vw;
  width: 100vw;
  height: 100%;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  overflow-y: scroll;
  overflow-x: hidden;
  font-family: "Fakt";
  font-weight: normal;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}

body {
  width: 100vw;
  min-height: 100%;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  cursor: url("../img/cursor-1x.svg") 14 14, auto;
  cursor: -webkit-image-set(url("../img/cursor-1x.png") 1x, url("../img/cursor-2x.png") 2x) 14 14, auto;
  scroll-behavior: smooth;
}

body::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
body {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

.page-quinta, .page-valley, .page-how-to-visit, .page-contact, .videos, .page-events {
  margin-top: -6rem;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin-block-start: 0;
  margin-block-end: 0;
}

h2 {
  font-size: 6.2rem;
  width: 100%;
  font-family: "SchnyderL";
  font-style: italic;
  line-height: 0.9;
  padding-bottom: 5rem;
  margin-left: -0.01em;
  padding-right: 55%;
}

h3 {
  font-size: 1.25rem;
}
h3 b {
  font-weight: normal;
}

h6 {
  letter-spacing: 0.025rem;
  font-size: 0.82rem;
  font-weight: normal;
  line-height: 1;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: url("../img/cursor-1x.svg") 14 14, auto;
  cursor: -webkit-image-set(url("../img/cursor-1x.png") 1x, url("../img/cursor-2x.png") 2x) 14 14, auto;
}

button {
  cursor: url("../img/cursor-1x.svg") 14 14, auto;
  cursor: -webkit-image-set(url("../img/cursor-1x.png") 1x, url("../img/cursor-2x.png") 2x) 14 14, auto;
}

p {
  margin-block-start: 0;
  margin-block-end: 0;
}
p:empty {
  display: none;
}

img {
  width: 100%;
}

ul {
  list-style-type: none;
  margin-block-start: 0;
  margin-block-end: 0;
  padding-inline-start: 0;
}

figure {
  display: block;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

.bg-b {
  background-color: #2d4e78;
  color: #eeebeb;
}
.bg-b .text a:hover {
  color: #eeebeb;
}

.bg-s {
  background-color: #e0dac2;
  color: #4f420c;
}
.bg-s .text a:hover {
  color: #4f420c;
}

.bg-g {
  background-color: #444e3d;
  color: #eeebeb;
}
.bg-g .text a:hover {
  color: #eeebeb;
}

.bg-r {
  background-color: rgb(193, 88, 95);
}

.bg-map {
  background-color: #8e7f4d;
  color: #eeebeb;
}
.bg-map .text a:hover {
  color: #eeebeb;
}

.f-xs {
  letter-spacing: 0.025rem;
  font-size: 0.8rem;
  font-weight: normal;
  line-height: 1;
  font-family: "Fakt";
}

.f-s {
  letter-spacing: 0.01rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  font-family: "Fakt";
}

.f-m {
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 1.9rem;
  font-weight: normal;
  line-height: 1.2;
}

.f-l {
  font-family: "SchnyderL";
  font-style: italic;
  letter-spacing: 0.025rem;
  font-size: 4.8rem;
  font-weight: normal;
  line-height: 1;
}

.fadethis {
  opacity: 0;
  transition: opacity 2s;
}

.overlay_arrows {
  opacity: 0;
  transition: opacity 0.5s;
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 10;
  mix-blend-mode: normal !important;
}

.home main {
  position: relative;
}
.home .intro {
  height: 100vh;
}
.home .content h3 {
  margin-bottom: 2rem;
  margin-top: -0.5rem;
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
}

.intro {
  padding: 3rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
}
.intro > a {
  width: 10rem;
}
.intro.content > img {
  position: absolute;
  top: 3rem;
  left: 3rem;
}
.intro nav {
  width: 44vw;
  margin-top: -0.15rem;
}
.intro nav li {
  margin-bottom: 1.6rem;
  line-height: 1;
}
.intro nav a {
  position: relative;
}
.intro nav a:hover {
  border-bottom: 1px solid;
}
.intro nav .social a:hover {
  border-bottom: 0;
}
.intro h2 {
  padding-bottom: 1.5rem;
}
.intro article {
  padding-top: 9.75rem;
  padding-bottom: 0;
}
.intro article h3 {
  margin-bottom: 2rem;
  margin-top: 2rem;
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
}
.intro article h1 {
  font-size: 6.2rem;
  width: 100%;
  font-family: "SchnyderL";
  font-style: italic;
  line-height: 0.9;
  padding-bottom: 0;
  padding-right: 10%;
  margin-left: -0.025em;
}
.intro .text {
  position: relative;
  margin-top: 11rem;
}
.intro .text.offset {
  margin-top: 7rem;
}
.intro .hamburger-container {
  position: absolute;
  right: -0.5rem;
  top: 2rem;
}

.social {
  display: flex;
}
.social img, .social svg {
  width: 1.4rem;
}
.social svg {
  fill: #eeebeb;
}
.social + .social {
  margin-left: 0.5rem;
}

#illustration {
  pointer-events: none;
  position: absolute;
  bottom: 0.5rem;
  left: 2rem;
}

.arrow-down {
  position: fixed;
  bottom: var(--margin);
  left: var(--margin);
  font-size: 1.4rem;
  opacity: 0;
  transition: opacity 0.5s;
}
.arrow-down.active {
  opacity: 1;
}

.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 7;
  height: 100vh;
  transform: translateY(-100%);
  overflow: hidden;
  transition: transform 0.5s;
}

.content {
  width: 100vw;
  padding-left: 6rem;
  padding-right: 6rem;
  margin: auto;
}

main section:last-of-type {
  padding-bottom: 6rem;
}

header {
  padding-top: 1.8rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 4;
  color: #1c324e;
  pointer-events: none;
}

.hamburger-container {
  width: 6rem;
  text-align: center;
  position: fixed;
  top: 3.1rem;
  right: 0rem;
  z-index: 500;
}

.home .hamburger-container {
  position: sticky;
  right: 0rem;
  top: 3.1rem;
}

#leaf, #missingleaf {
  fill: #eeebeb;
}

#logo-small {
  width: 6rem;
  text-align: center;
  margin-top: 0.75rem;
}
#logo-small svg {
  width: 1.75rem;
}
#logo-small path {
  transition: all 0.3s;
}
#logo-small:hover path {
  fill: #2d4e78;
}

#logo-leaf {
  width: 3rem;
  top: 1.75rem;
  left: 2.3rem;
  position: fixed;
  display: block;
  z-index: 2;
  transform: scale(0.225);
  transition: transform 0.25s;
}
#logo-leaf.transform {
  transform: scale(0.5) translateX(-2.5rem) translateY(-2.9rem) rotate(-59deg);
}

#logo-missingleaf {
  width: 8.5rem;
  position: absolute;
  top: 1.5rem;
  left: var(--margin);
  z-index: 2;
}

.header-g #logo-small svg {
  fill: #eeebeb;
}
.header-g #logo-small svg:hover path {
  fill: #c5d0db;
}

.header-s .hamburger-inner, .header-s .hamburger-inner::before, .header-s .hamburger-inner::after, .page-template-template-quintas .hamburger-inner, .page-template-template-quintas .hamburger-inner::before, .page-template-template-quintas .hamburger-inner::after, .how-to-visit .hamburger-inner, .how-to-visit .hamburger-inner::before, .how-to-visit .hamburger-inner::after, .post-type-archive-projects .hamburger-inner, .post-type-archive-projects .hamburger-inner::before, .post-type-archive-projects .hamburger-inner::after, .page-template-template-privacy-policy .hamburger-inner, .page-template-template-privacy-policy .hamburger-inner::before, .page-template-template-privacy-policy .hamburger-inner::after {
  background-color: #4f420c;
}
.header-s #leaf, .header-s #missingleaf, .header-s .social svg, .page-template-template-quintas #leaf, .page-template-template-quintas #missingleaf, .page-template-template-quintas .social svg, .how-to-visit #leaf, .how-to-visit #missingleaf, .how-to-visit .social svg, .post-type-archive-projects #leaf, .post-type-archive-projects #missingleaf, .post-type-archive-projects .social svg, .page-template-template-privacy-policy #leaf, .page-template-template-privacy-policy #missingleaf, .page-template-template-privacy-policy .social svg {
  fill: #4f420c;
}
.header-s nav, .header-s .lang-switch, .header-s #nav-bg, .header-s .close-nav, .page-template-template-quintas nav, .page-template-template-quintas .lang-switch, .page-template-template-quintas #nav-bg, .page-template-template-quintas .close-nav, .how-to-visit nav, .how-to-visit .lang-switch, .how-to-visit #nav-bg, .how-to-visit .close-nav, .post-type-archive-projects nav, .post-type-archive-projects .lang-switch, .post-type-archive-projects #nav-bg, .post-type-archive-projects .close-nav, .page-template-template-privacy-policy nav, .page-template-template-privacy-policy .lang-switch, .page-template-template-privacy-policy #nav-bg, .page-template-template-privacy-policy .close-nav {
  color: #eeebeb;
  background-color: #4f420c;
}

.header-fixed .clip {
  position: fixed;
}

article {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
  padding-top: 6rem;
  padding-bottom: 6rem;
  width: 100%;
}
article + article {
  padding-top: 0;
}

.images {
  width: 41vw;
}
.images figcaption {
  margin-top: 0.5rem;
  line-height: 1.4;
}

.text {
  width: 41vw;
}
.text:only-child {
  margin-left: 47vw;
}
.text.offset {
  margin-top: 4rem;
}
.text h3.f-m {
  margin-top: -0.5rem;
  margin-bottom: 2rem;
}
.text h3.f-l {
  margin-bottom: 2rem;
}
.text h2 {
  margin-bottom: 2rem;
  font-family: "SchnyderL";
  font-style: italic;
  letter-spacing: 0.025rem;
  font-size: 4rem;
  padding-bottom: 0;
  padding-right: 0;
  margin-left: -0.01em;
  font-weight: normal;
  line-height: 1;
  width: 80%;
}
.text p {
  margin-bottom: 2rem;
}
.text p:first-child {
  margin-top: -0.25em;
}
.text a {
  border-bottom: 1px solid;
}
.text ul {
  list-style-type: disc;
}
.text u {
  text-decoration: none;
}

.offset-double {
  margin-top: 8.4rem;
}

.news-item {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 2.8em;
}
.news-item p + p {
  margin-top: 1.4em;
}
.news-item img {
  width: 50%;
}
.news-item video {
  width: 75%;
}
.news-item > div {
  width: 41vw;
}
.news-item .news-date p {
  border-bottom: 1px solid #eeebeb;
}

.map-container {
  padding-bottom: 3rem;
  width: 100%;
  transition: transform 0.5s;
}
.map-container .close-quinta {
  position: absolute;
  top: 3rem;
  left: 3rem;
}
.map-container.show-quinta {
  transform: translateX(-50%);
}

.map {
  position: relative;
}
.map:last-child {
  padding-bottom: 0;
}

.map-quinta {
  cursor: url("../img/cursor-1x.svg") 14 14, auto;
  cursor: -webkit-image-set(url("../img/cursor-1x.png") 1x, url("../img/cursor-2x.png") 2x) 14 14, auto;
}
.map-quinta path, .map-quinta polygon, .map-quinta rect {
  fill: #eeebeb;
}
.map-quinta .st2 {
  opacity: 0;
}
.map-quinta path, .map-quinta polygon, .map-quinta rect {
  transition: fill 0.15s;
}
.map-quinta:hover path, .map-quinta:hover polygon, .map-quinta:hover rect {
  fill: #c5d0db;
}
.map-quinta.map-quinta-active {
  pointer-events: none;
}
.map-quinta.map-quinta-active path, .map-quinta.map-quinta-active polygon, .map-quinta.map-quinta-active rect {
  fill: #c5d0db;
}

.quinta {
  z-index: 2;
  position: absolute;
  width: 32rem;
  height: calc(100vh - 12rem);
  max-height: 41rem;
  top: 0;
  padding: 1.5rem 1.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.15));
  cursor: move;
  will-change: filter;
  font-size: 0.95rem;
}
.quinta .f-xs {
  font-size: 0.75rem;
}

.body-quinta-active {
  cursor: url("../img/close.gif"), auto;
}

.quinta-active {
  opacity: 1;
  pointer-events: auto;
}

#quintadovallado-overlay {
  left: 24rem;
}

#niepoort-overlay {
  left: 37rem;
  margin-top: 2rem;
}

#quintadocrasto-overlay {
  left: 39rem;
  margin-top: -2rem;
}

#valedmaria-overlay {
  left: 55rem;
}

#valemeao-overlay {
  right: 24rem;
  margin-top: 1rem;
}

.facilities-content p, .facilities-content a {
  font-family: "Schnyder";
  font-size: 1.5rem;
  letter-spacing: 0.01em;
  line-height: 1.2;
}
.facilities-content a {
  border-bottom: 1px solid;
  margin-top: 0.6em;
  display: inline-block;
  transition: color 0.1s;
}
.facilities-content a:hover {
  color: #e0dac2;
}

.facilities {
  margin-top: 1.75rem;
  display: flex;
  position: relative;
}

.facility {
  width: 23%;
}
.facility + .facility {
  margin-left: 2%;
}
.facility:hover span {
  border-bottom: 1px solid;
}

.facility-image {
  width: 100%;
  padding-bottom: 66%;
  margin-bottom: 0.15rem;
  background-position: center center;
  background-size: cover;
}

.facilities-contact p {
  line-height: 1.4em;
}
.facilities-contact p + p {
  margin-top: 0.7em;
}

.owl-dots {
  margin-top: -1.4rem;
  display: inline-block;
  position: absolute;
}

.owl-dot {
  display: inline-block;
  position: relative;
  margin-right: 0.25rem;
}
.owl-dot span {
  background-color: #e0dac2;
  border: 1px solid;
  border-radius: 50%;
  width: 0.5rem;
  height: 0.5rem;
  display: block;
}
.owl-dot.active span {
  background-color: black;
}

.slick-arrow {
  position: absolute;
  background-color: transparent;
  border: 0;
  width: 55%;
  height: 105%;
  top: -10%;
  color: transparent;
  font-size: 0;
  z-index: 10;
}

.slick-prev {
  left: -5%;
  cursor: url("../img/arrow-l.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/arrow-l.png") 1x, url("../img/arrow-l-2x.png") 2x) 15 20, auto;
}

.slick-next {
  right: -5%;
  cursor: url("../img/arrow-r.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/arrow-r.png") 1x, url("../img/arrow-r-2x.png") 2x) 15 20, auto;
}

.slick-dots {
  display: inline-block;
  top: -1.32rem;
  position: relative;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button {
  line-height: 0.6rem;
  font-size: 0;
  display: block;
  cursor: pointer;
  color: transparent;
  background-color: transparent;
  outline: none;
  padding: 0;
  border: 0;
}
.slick-dots li button:after {
  content: "○";
  font-size: 0.6rem;
  color: #4f420c;
}

.slick-dots li {
  margin-right: 0.25em;
}
.slick-dots li.slick-active button:after {
  content: "●";
  font-size: 0.6rem;
  color: #4f420c;
}

.bg-b .slick-dots li button:after, .bg-g .slick-dots li button:after {
  color: #eeebeb;
}
.bg-b .slick-dots li.slick-active button:after, .bg-g .slick-dots li.slick-active button:after {
  color: #eeebeb;
}

.quinta-do-vale-meao .intro h1, .quinta-vale-d-maria .intro h1 {
  width: 80%;
}

.quinta-vale-d-maria h1:after {
  content: "";
  width: 37.75rem;
  height: 30rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: -9rem;
  left: 16.5rem;
  background-image: url(../img/vine.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}

.quinta-do-vale-meao h1:after {
  content: "";
  width: 30.75rem;
  height: 25rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: -7.7rem;
  left: 18.5rem;
  background-image: url(../img/douro_barrel.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}

.quinta-do-vallado h1:after, .quinta-do-crasto h1:after {
  content: "";
  width: 39.75rem;
  height: 30rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: -7.7rem;
  left: 12.5rem;
  background-image: url(../img/vine.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}

.niepoort h1:after {
  content: "";
  width: 32.75rem;
  height: 22rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: -3rem;
  left: 8.5rem;
  background-image: url(../img/douro_grapes.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}

.page-quinta .intro {
  height: auto;
}
.page-quinta .intro h1 {
  position: relative;
}
.page-quinta .quinta-unit:first-child {
  padding-top: 4rem;
}
.page-quinta .quinta-unit:first-child h3 {
  position: relative;
}
.page-quinta .quinta-unit:first-child h3:after {
  content: "";
  width: 26rem;
  height: 13rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: 0rem;
  left: 20rem;
  background-image: url(../img/vines-2.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-quinta .quinta-unit .text {
  margin-top: -1.5rem;
  margin-left: auto;
}
.page-quinta .quinta-unit .images {
  margin-top: 1.9em;
}

.article-header {
  width: 100%;
}
.article-header h3 {
  border-bottom: 1px solid;
  font-size: 100%;
  width: 41rem;
}

.page-how-to-visit .unit:first-child .text {
  margin-left: 47vw;
}
.page-how-to-visit .unit:first-child .article-header {
  position: relative;
}
.page-how-to-visit .unit:first-child .article-header:after {
  content: "";
  width: 45rem;
  height: 30rem;
  position: absolute;
  bottom: -16rem;
  left: 9rem;
  background-image: url(../img/douro_arrival.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-how-to-visit .unit:nth-child(3) .text {
  position: relative;
}
.page-how-to-visit .unit:nth-child(3) .text :after {
  content: "";
  width: 14rem;
  height: 14rem;
  position: absolute;
  bottom: 26.5rem;
  left: 26rem;
  background-image: url(../img/douro_watch.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}

.unit .text {
  margin-top: -1em;
}
.unit .text img {
  mix-blend-mode: multiply;
  margin-top: -6.5rem;
  margin-left: -2rem;
  margin-bottom: -4rem;
  height: auto;
}
.unit .images {
  margin-top: 1.9em;
}

.page-template-template-contact main .intro {
  min-height: calc(100vh + 1.8rem);
}
.page-template-template-contact .intro article h1 {
  padding-bottom: 0.35rem;
}

.page-template-template-event .bg-b {
  background-color: rgb(81, 143, 173);
}
.page-template-template-event main {
  cursor: url("../img/cursor-sand-1x.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/cursor-sand-1x.png") 1x, url("../img/cursor-sand-2x.png") 2x) 15 20, auto;
}
.page-template-template-event main .intro {
  position: relative;
  background-color: #f9f7f5;
}
.page-template-template-event main .intro article {
  position: relative;
}
.page-template-template-event main .intro .youtube-button {
  cursor: pointer;
  background-color: #c6bdab;
}
.page-template-template-event main .intro .youtube-button:hover {
  background-color: #c2b8a4;
}
.page-template-template-event main a {
  cursor: url("../img/cursor-sand-1x.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/cursor-sand-1x.png") 1x, url("../img/cursor-sand-2x.png") 2x) 15 20, auto;
}
.page-template-template-event .bg-s, .page-template-template-event .map-container {
  background-color: #c6bdab;
  cursor: url("../img/cursor-white-1x.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/cursor-white-1x.png") 1x, url("../img/cursor-white-2x.png") 2x) 15 20, auto;
}
.page-template-template-event .bg-s .youtube-button, .page-template-template-event .map-container .youtube-button {
  cursor: pointer;
  background-color: #f9f7f5;
}
.page-template-template-event .bg-s .youtube-button:hover, .page-template-template-event .map-container .youtube-button:hover {
  background-color: #fefcfa;
}
.page-template-template-event .bg-s a, .page-template-template-event .map-container a {
  cursor: url("../img/cursor-white-1x.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/cursor-white-1x.png") 1x, url("../img/cursor-white-2x.png") 2x) 15 20, auto;
}
.page-template-template-event .bg-s .text a:hover {
  color: black;
}
.page-template-template-event .slick-prev {
  cursor: -webkit-image-set(url("../img/arrow-white-l.png") 1x, url("../img/arrow-white-l-2x.png") 2x) 15 20, auto;
}
.page-template-template-event .slick-next {
  cursor: -webkit-image-set(url("../img/arrow-white-r.png") 1x, url("../img/arrow-white-r-2x.png") 2x) 15 20, auto;
}
.page-template-template-event footer {
  cursor: url("../img/cursor-sand-1x.svg") 10 20, auto;
  cursor: -webkit-image-set(url("../img/cursor-sand-1x.png") 1x, url("../img/cursor-sand-2x.png") 2x) 15 20, auto;
  background-color: #f9f7f5;
}
.page-template-template-event #supported_by {
  background: #f9f7f5;
  background-color: #f9f7f5;
}
.page-template-template-event #supported_by img {
  mix-blend-mode: darken;
}

.events {
  background-color: #f9f7f5;
}

.page-template-template-about main .intro {
  height: calc(100vh + 1.8rem);
  background-color: #2d4e78;
  padding-bottom: 2.5rem;
}
.page-template-template-about main .intro figure svg {
  position: absolute;
  width: 55rem;
  left: 2rem;
  bottom: 6rem;
}
.page-template-template-about .quinta-unit .text p:last-of-type {
  position: relative;
}
.page-template-template-about .quinta-unit .text p:last-of-type:before {
  content: "";
  width: 14rem;
  height: 18rem;
  position: absolute;
  bottom: -1rem;
  left: -17rem;
  background-image: url(../img/douro_bottle.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
  mix-blend-mode: multiply;
}

.page-template-template-valley .quinta-unit {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.page-template-template-valley .quinta-unit:nth-of-type(1) h2 {
  margin-left: 0;
}
.page-template-template-valley .quinta-unit:nth-of-type(1) h2:before {
  content: "";
  width: 40rem;
  height: 30rem;
  position: absolute;
  bottom: 2rem;
  left: 3rem;
  background-image: url(../img/douro_tree.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-template-template-valley .quinta-unit:nth-of-type(1) .text {
  margin-top: -5.55rem;
}
.page-template-template-valley .quinta-unit:nth-of-type(2) {
  margin-top: -1.25rem;
}
.page-template-template-valley .quinta-unit:nth-of-type(2) .images {
  margin-top: -5.3rem;
}
.page-template-template-valley .quinta-unit:nth-of-type(2) h2:after {
  content: "";
  width: 23rem;
  height: 19rem;
  position: absolute;
  bottom: -1rem;
  left: 15rem;
  background-image: url(../img/douro_scherben.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-template-template-valley .quinta-unit h2 {
  font-style: normal;
  font-family: "Schnyder";
  width: 41vw;
  margin-left: 47rem;
  padding-bottom: 2.5rem;
  position: relative;
}
.page-template-template-valley .intro {
  padding-bottom: 0;
}
.page-template-template-valley .intro h1 {
  position: relative;
}
.page-template-template-valley .intro h1:before {
  content: "";
  width: 10rem;
  height: 7.5rem;
  position: absolute;
  bottom: -0.25rem;
  left: 13.65rem;
  background-image: url(../img/douro_vegetation.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-template-template-valley .intro h1 + p {
  margin-top: 2.75rem;
}
.page-template-template-valley.the-douro-boys .quinta-unit {
  padding-top: 0.5rem !important;
}
.page-template-template-valley.the-douro-boys .quinta-unit .text {
  margin-left: auto;
}

.single-projects .intro {
  padding-bottom: 0.6rem;
}
.single-projects .intro article h1 {
  width: 103%;
  padding-right: 0;
  font-size: 6rem;
}
.single-projects .intro p {
  margin-bottom: 2rem;
  margin-top: 2rem;
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 1.9rem;
  font-weight: normal;
  line-height: 1.25;
}
.single-projects .intro .text {
  position: relative;
}
.single-projects .intro .text:before {
  content: "";
  width: 10rem;
  height: 10rem;
  mix-blend-mode: multiply;
  position: absolute;
  top: -3rem;
  left: 28.5rem;
  background-image: url(../img/douro_leaves_projects.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.single-projects .projects-content article {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.single-projects .projects-content article:last-of-type {
  padding-bottom: 6rem;
}
.single-projects .projects-content h3 {
  width: 41vw;
  position: absolute;
  border-bottom: 1px solid;
}
.single-projects .projects-content h3 + .text {
  margin-left: 47vw;
}

footer {
  height: 7rem;
  display: flex;
  background-color: #2d4e78;
  color: #eeebeb;
  align-items: center;
  line-height: 1;
}
footer a:not(.social) {
  border-bottom: 1px solid;
}
footer a {
  margin-right: 1em;
  color: #eeebeb;
}
footer .social {
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
}
footer .social img {
  width: 1.25rem;
  display: inline-block;
  margin-right: 0;
  margin-top: -0.1rem;
}

.footer-copy {
  width: 6rem;
  text-align: center;
}

.footer-left {
  width: 41vw;
  margin-right: 6rem;
}

.footer-right {
  width: 41vw;
  display: flex;
}

.footer-top {
  width: 6rem;
  text-align: center;
}

.about-target {
  opacity: 0;
}

.about-text {
  opacity: 0;
  transition: opacity 0.3s;
}

.inview {
  opacity: 1;
}

.projects {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background-color: #e0dac2;
  margin-top: -4.3rem;
}
.projects .content {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: 6rem;
}
.projects .content.intro {
  background-color: #2d4e78;
  padding-top: 0;
  padding-bottom: 9rem;
}
.projects .more-projects article:nth-of-type(even) {
  flex-direction: row-reverse;
}

.page-template-template-about .intro figure svg, .page-template-template-videos .intro figure svg {
  opacity: 0;
}

.downloads h2 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.download-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 3rem;
}
.download-group h3 {
  margin-bottom: 0.75em;
}
.download-group h3 {
  width: 100%;
}

.grid-col {
  width: 20%;
}

.grid-item {
  margin-bottom: 3rem;
  display: block;
}

.about-target {
  opacity: 0;
  position: absolute;
  transition: opacity 0.5s;
}
.about-target span {
  position: fixed;
  pointer-events: none;
  text-align: center;
}
.about-target span {
  -webkit-font-smoothing: subpixel-antialiased;
}
.about-target h3 {
  margin: 0 !important;
  -webkit-font-smoothing: subpixel-antialiased;
}

#mr {
  left: 9rem;
  bottom: 8.35rem;
  width: 7rem;
  height: 8.5rem;
}

#cz {
  width: 3.4rem;
  height: 7.9rem;
  left: 3.6rem;
  bottom: 21rem;
}

#dn {
  width: 4rem;
  height: 6rem;
  bottom: 21.75rem;
  left: 41.1rem;
}

#ro {
  width: 5em;
  height: 7em;
  bottom: 17em;
  left: 18.5em;
}

.page-template-template-privacy-policy article {
  padding-top: 16rem;
}
.page-template-template-privacy-policy .text p {
  margin-bottom: 0;
}
.page-template-template-privacy-policy p + p {
  margin-top: 0.7em;
}
.page-template-template-privacy-policy h2 {
  width: 100%;
  margin-top: -2rem;
  margin-left: -0.01em;
  font-size: 6.2rem;
  width: 100%;
  line-height: 0.9;
  padding-bottom: 1rem;
  padding-right: 55%;
}
.page-template-template-privacy-policy p + h3 {
  margin-top: 0.7em;
}
.page-template-template-privacy-policy h3 {
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
  margin-bottom: 0.15em;
}

.page-contact .intro img {
  position: absolute;
  width: 60%;
  bottom: 0;
  left: 0;
}

.map-container svg a {
  pointer-events: none;
}
.map-container svg a g {
  pointer-events: auto;
}

.video-container {
  width: 100%;
  padding-bottom: 56.25%;
  position: relative;
  margin-top: 3em;
}
.video-container iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.videos.content {
  padding-top: 3em;
}
.videos .news-item {
  padding-bottom: 6em;
  margin-bottom: 0;
}
.videos .news-item a {
  margin-top: 1.48em;
  display: inline-block;
  line-height: 1;
}
.videos .news-content p:first-of-type {
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
}
.videos .news-date p {
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
}

.page-login .content {
  height: 100%;
}

.page-template-template-login .intro .text {
  margin-top: 0;
}
.page-template-template-login .intro article {
  padding-top: 8rem;
}
.page-template-template-login .page-login {
  margin-top: -4.25rem;
}

.um-form-field {
  background-color: transparent;
  border: 0;
  border-bottom: 1px solid;
  color: black;
  font-family: "Schnyder";
  letter-spacing: 0.025rem;
  font-size: 2.1rem;
  font-weight: normal;
  line-height: 1.25;
  font-style: italic;
  width: 100%;
}
.um-form-field::placeholder {
  color: black;
}
.um-form-field:-ms-input-placeholder {
  color: black;
}
.um-form-field::-ms-input-placeholder {
  color: black;
}

.um-field-checkbox {
  display: none;
}

#um-submit-btn {
  background-color: rgb(193, 88, 95);
  border: 0;
  border-radius: 0.02em;
  width: 12em;
  padding: 0.65em;
  margin-right: 2em;
}

.um-col-alt, .um-col-alt-b {
  display: flex;
  align-items: center;
}

.um-login {
  max-width: 100% !important;
}

.um-field + .um-field {
  margin-top: 1.75em;
}

.um-form form {
  display: flex;
  flex-wrap: wrap;
}

.login .um-form-field {
  width: 95%;
}
.login .intro article h3 {
  margin-bottom: 1.65rem;
}
.login .um-col-alt-b {
  display: none;
}

.um-link-alt {
  line-height: 1;
  margin-left: 1em;
}

.um-row {
  margin-bottom: 0 !important;
  width: 100%;
}

.um-col-1 {
  margin-bottom: 2.25em;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.um-register {
  width: 100% !important;
  max-width: 100% !important;
}
.um-register .um-field {
  width: 48%;
}
.um-register .um-field-username {
  width: 100%;
}

.page-login {
  overflow-x: hidden;
}

.videos .intro {
  background-color: #2d4e78;
}
.videos .intro .images {
  position: relative;
}
.videos .intro .images .sun {
  position: absolute;
  width: 20%;
  top: -15rem;
  left: 65%;
  padding-bottom: 20%;
  background-size: 600%;
}
.videos .intro article {
  align-items: flex-end;
}
.videos .intro article h3 {
  margin-bottom: 4rem;
  margin-top: 1.9rem;
}
.videos .intro article h1 {
  margin-left: -0.12em;
}

#video-clouds {
  position: absolute;
  bottom: -3.5em;
  right: -16rem;
  width: 130%;
}

#supported_by {
  width: 100%;
  padding-left: 53vw;
  padding-bottom: 2rem;
  margin-top: -0.6rem;
  color: #eeebeb;
  background-color: #2d4e78;
}
#supported_by span {
  margin-bottom: 0.25rem;
  display: block;
}
#supported_by img {
  width: 30rem;
}

.youtube-button {
  background-color: #c1585f;
  border: 0;
  border-radius: 0.1em;
  padding: 0.8em 1em 0.75em;
  transition: background-color 0.2s;
}
.youtube-button:hover {
  background-color: rgb(212, 200, 177);
}

.um-field-type_terms_conditions {
  width: 100% !important;
  margin-bottom: 2.6rem;
}

.um-field-checkbox-gdpr input {
  display: none;
}

.intro.centered {
  text-align: center;
  width: 100%;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  height: auto;
  position: relative;
}
.intro.centered article {
  padding-top: 4rem;
  flex-direction: column;
  align-items: center;
}
.intro.centered article h1 {
  font-size: 5.3rem;
  padding-right: unset;
  margin-left: unset;
  padding-bottom: 0.17em;
}
.intro.centered article h2 {
  margin-left: unset;
  padding-right: unset;
  font-size: 1.55rem;
  padding-bottom: 0;
  line-height: 1.1;
  font-family: "Schnyder";
  font-style: normal;
  letter-spacing: 0;
}
.intro.centered article h3 {
  margin-top: 1.8rem;
  width: 39%;
  font-size: 1.55rem;
  margin-bottom: 0;
  letter-spacing: 0;
  line-height: 1.2;
}
.intro.centered .youtube-button {
  margin-bottom: 5rem;
  margin-top: 2.75rem;
}

.find-out-more {
  margin-top: 1rem;
}

.location {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.15rem;
}
.location svg {
  width: 0.57em;
  display: inline-block;
  margin-top: -0.232em;
  margin-right: 0.2em;
}
.location svg path {
  fill: #c2b8a4;
}

.page-events {
  font-size: 80%;
}
.page-events .youtube-button {
  padding: 0.59em 2em 0.45em;
}

#events-people img {
  position: absolute;
  height: auto;
}

#people-1 {
  width: 9.5rem;
  left: -39rem;
  top: -6.75rem;
}

#people-2 {
  width: 8.3rem;
  left: -28.3rem;
  top: -11.5rem;
}

#people-3 {
  width: 9.6rem;
  left: -44rem;
  top: 2.9rem;
}

#people-4 {
  width: 10.5rem;
  left: -32rem;
  top: 0.8rem;
}

#people-5 {
  width: 10.8rem;
  top: 12rem;
  right: -20rem;
}

#people-6 {
  width: 11.4rem;
  right: -31rem;
  top: 7rem;
}

#people-left {
  width: 30rem;
  left: 0;
  bottom: 0;
}

#people-right {
  width: 31.5rem;
  right: 2.75rem;
  bottom: -1.5rem;
}

.text-centered {
  flex-direction: column;
  align-items: center;
}
.text-centered.barrel {
  position: relative;
  padding-bottom: 8rem;
}
.text-centered.barrel:after {
  content: "";
  width: 18.75rem;
  height: 20rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: -2.7rem;
  right: 5rem;
  background-image: url(../img/douro_barrel.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.text-centered p {
  text-align: center;
}
.text-centered .youtube-button {
  margin-top: 2rem;
}

.page-events .f-m {
  font-size: 1.55rem;
}
.page-events .text-centered .f-m {
  font-size: 1.55rem;
  width: 48%;
}
.page-events .article-header + .text {
  margin-top: 1.6em;
}
.page-events .text-only .article-header + .text {
  margin-left: 47vw;
  margin-top: -1em;
}
.page-events .article-header h3 {
  font-size: 1.55rem;
  font-style: normal;
  font-family: "Schnyder";
  line-height: 1.25;
  letter-spacing: 0.005em;
  font-weight: bold;
}
.page-events .article-header + .images {
  margin-top: 1.35em;
  margin-bottom: -1.8em;
}
.page-events .text + .images {
  margin-top: -1px;
}
.page-events .text {
  padding-right: 1.1rem;
}
.page-events .text.tree:before {
  content: "";
  width: 33rem;
  height: 25rem;
  mix-blend-mode: multiply;
  position: absolute;
  bottom: 4.2rem;
  left: -35rem;
  background-image: url(../img/douro_tree.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
}
.page-events .text ul {
  margin-left: 1em;
}
.page-events .text .youtube-button {
  margin-top: -0.1em;
}
.page-events p {
  margin-bottom: unset;
}
.page-events p + p {
  margin-top: 0.9em;
}
.page-events p + ul {
  margin-top: 0.9em;
}
.page-events .youtube-button {
  display: inline-block;
  margin-top: 2rem;
  border-bottom: 0;
}
.page-events .slick-dots {
  top: -1.4rem;
}

.images.full-width {
  width: 100%;
  margin-bottom: -1.5rem;
}

.find-out-more {
  position: absolute;
  bottom: -1rem;
  left: 46%;
  width: 8%;
  text-align: center;
  line-height: 1;
  font-size: 80%;
}
.find-out-more span {
  position: absolute;
  left: 4.6em;
  bottom: -1em;
  transform: rotate(90deg);
}

.text.tree p, .page-events .text p {
  font-size: 1.55rem;
  font-style: normal;
  font-family: "Schnyder";
  width: 100%;
  line-height: 1.25;
  margin-bottom: 1.25em;
  letter-spacing: 0.005em;
}
.text.tree p + p, .page-events .text p + p {
  margin-top: -0.8em;
}
.text.tree h2, .text.tree h3, .text.tree h4, .text.tree h1, .page-events .text h2, .page-events .text h3, .page-events .text h4, .page-events .text h1 {
  font-size: 1.55rem;
  font-style: normal;
  font-family: "Schnyder";
  width: 100%;
  line-height: 1.25;
  margin-bottom: 0.7em;
  letter-spacing: 0.005em;
}
.text.tree h2 + p, .text.tree h3 + p, .text.tree h4 + p, .text.tree h1 + p, .page-events .text h2 + p, .page-events .text h3 + p, .page-events .text h4 + p, .page-events .text h1 + p {
  margin-top: -0.3em;
}
.text.tree h2 span[style*="text-decoration: underline;"], .text.tree h3 span[style*="text-decoration: underline;"], .text.tree h4 span[style*="text-decoration: underline;"], .text.tree h1 span[style*="text-decoration: underline;"], .page-events .text h2 span[style*="text-decoration: underline;"], .page-events .text h3 span[style*="text-decoration: underline;"], .page-events .text h4 span[style*="text-decoration: underline;"], .page-events .text h1 span[style*="text-decoration: underline;"] {
  text-decoration: none !important;
  border-bottom: 1px solid;
  height: 1.28em;
  display: inline-block;
  font-weight: bold;
}

.page-events .text h2, .page-events .text h3, .page-events .text h4, .page-events .text h1 {
  margin-top: -0.38em;
}
.page-events .text ul {
  font-size: 1.55rem;
  font-style: normal;
  font-family: "Schnyder";
  width: 100%;
  line-height: 1.25;
  letter-spacing: 0.005em;
  margin-top: -0.3em;
  margin-bottom: 1.25em;
}
.page-events .text ul strong, .page-events .text ul b {
  font-weight: normal;
}

.page-events .unit .images + .text {
  margin-top: -1.4em;
}

.d-f {
  display: flex;
  flex-wrap: wrap;
}

.d-f-c {
  flex-direction: column;
}

.j-c {
  justify-content: center;
}

.j-s-b {
  justify-content: space-between;
}

.w-100 {
  width: 100%;
  position: relative;
}

.w-66 {
  width: 60%;
}

.w-65 {
  width: 64%;
}

.w-32 {
  width: 32.5%;
}

.w-80 {
  width: 82%;
}

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

.m-l-a {
  margin-left: auto;
}

.m-r-a {
  margin-right: auto;
}

.text-new p + p {
  margin-top: 1.4em;
}
.text-new p:last-child a {
  display: inline-block;
  background-color: #4f420c;
  color: #e0dac2;
  transition: background-color 0.3s;
  padding: 0.5em 2.5em;
  text-align: center;
  border-radius: 0.15em;
}
.text-new p:last-child a:hover {
  background-color: #2d4e78;
}

.bg-g .text-new p:last-child a {
  background-color: #eeebeb;
  color: #444e3d;
  transition: background-color 0.3s;
}
.bg-g .text-new p:last-child a:hover {
  background-color: #c5d0db;
}

#valley-tree {
  position: absolute;
  bottom: -6rem;
  width: 31rem;
  right: 49rem;
}

#valley-plant {
  position: absolute;
  left: 0;
  top: -8.5rem;
  width: 6rem;
}

.translate {
  transition: transform 3s ease;
  transform: translateY(3rem);
  opacity: 0;
}
.translate.in-view {
  opacity: 1;
  transform: translateY(0);
}

.logo-leaf-clip {
  width: 3rem;
  top: 1.75rem;
  left: 2.3rem;
  position: fixed;
  display: block;
  z-index: 2;
  transform: scale(0.225);
  transition: transform 0.25s;
  transform: scale(0.5) translateX(-2.5rem) translateY(-2.9rem) rotate(-59deg);
  opacity: 0;
}

.a-c {
  align-items: center;
}

.a-e {
  align-items: flex-end;
}

.w-50 {
  width: 50%;
}

#hero {
  height: 200svh;
  position: relative;
}
#hero .w-50 {
  height: 100svh;
  position: sticky;
  top: 0;
}
#hero figcaption {
  margin-right: auto;
  margin-top: 0.4em;
}
#hero video {
  object-position: bottom;
  transform: translateY(0);
}

#about-teaser figcaption {
  margin-right: auto;
  margin-top: 0.4em;
}
#about-teaser .f-m {
  margin-top: 1em;
  margin-bottom: 1em;
}

#hero-content {
  z-index: 2;
  margin-top: -100svh;
}

.hero-item {
  height: 100svh;
}
.hero-item h2 {
  font-style: inherit;
  line-height: inherit;
  padding-bottom: unset;
  margin-left: unset;
  padding-right: unset;
}
.hero-item .f-m {
  margin-top: 1em;
  margin-bottom: 1em;
}

.cover {
  object-fit: cover;
}
.cover img, .cover video {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

nav {
  background-color: #eeebeb;
  border-radius: 1.2rem;
  padding: 0.85em 1.4em;
  margin-right: 1rem;
  position: relative;
  pointer-events: auto;
}

#nav-bg {
  height: 16.5rem;
  border-radius: 1.2rem;
  opacity: 0;
  left: 0;
  padding: 0.8em 1.4em 0.9em;
  top: 0;
  pointer-events: none;
  transition: opacity 0.3s;
  background-color: #eeebeb;
  position: absolute;
  width: 100%;
  align-items: flex-end;
}
#nav-bg a:hover {
  text-decoration: underline;
}
#nav-bg a:nth-child(1) {
  margin-right: 1.87em;
}

.sub-nav + .top-nav {
  margin-left: 9em;
}

.sub-nav {
  position: absolute;
  width: 100%;
  display: flex;
  flex-direction: column;
  top: 0;
  left: 0;
  border-radius: 1.2rem;
  padding: 3.55em 1.4em 0;
  margin-left: -0.07em;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
  z-index: 2;
}
.sub-nav a:hover {
  text-decoration: underline;
}

.top-nav {
  z-index: 3;
  position: relative;
  top: 0.07em;
}
.top-nav:hover {
  text-decoration: underline;
}

.margin {
  padding-left: var(--margin);
  padding-right: var(--margin);
}

.current-lang {
  display: none;
}

.lang-switch {
  margin-right: 0.8rem;
  width: 3.29em;
  background-color: #eeebeb;
  border-radius: 2em;
  font-size: 85%;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.05em;
}
.lang-switch li {
  position: relative;
  top: 0.1em;
  left: 0.02em;
}
.lang-switch a {
  padding: 1em;
}

.invert {
  color: #eeebeb;
}

.arrow {
  position: relative;
}
.arrow:hover {
  text-decoration: underline;
}
.arrow:after {
  content: "";
  width: 4rem;
  height: 0.85rem;
  background-repeat: no-repeat;
  background-position: center left;
  background-size: contain;
  background-image: url("../img/arrow-long.svg");
  right: -4.75rem;
  position: absolute;
}

.map > h3 {
  position: relative;
  top: 2em;
  padding-bottom: 2em;
}

#home-valley h2 {
  padding-right: unset;
}

#nav-container {
  margin-top: -0.5em;
  pointer-events: auto;
}

#home-valley h2 {
  font-family: "Schnyder";
  font-style: normal;
}

.lt-title {
  padding-left: 1.35em;
  text-indent: -1.35em;
  font-style: italic;
  padding-bottom: 10rem;
}

.page-luxury-travel h2 {
  padding-right: 0;
  line-height: 1;
}
.page-luxury-travel .f-s {
  line-height: 1.25;
}
.page-luxury-travel .f-s p + p {
  margin-top: 1.25em;
}

.lt-date h2 {
  padding-bottom: 1.5rem;
}
.lt-date a {
  margin-left: -4.75rem;
}

.luxury-travel footer, .luxury-travel #supported_by {
  background-color: #8e7f4d;
}

.lt-logo {
  max-width: 17rem;
  margin-top: 1rem;
  margin-left: -1rem;
}

@keyframes fish {
  100% {
    background-position: 0 0;
  }
}
@keyframes miguel {
  0% {
    background-position: 300% 0;
  }
  10% {
    background-position: 300% 0;
  }
  15% {
    background-position: 100% 0;
  }
  45% {
    background-position: 100% 0;
  }
  50% {
    background-position: 300% 0;
  }
  100% {
    background-position: 300% 0;
  }
}
@keyframes xito {
  0% {
    background-position: 100% 0;
  }
  5% {
    background-position: 300% 0;
  }
  10% {
    background-position: 100% 0;
  }
  15% {
    background-position: 300% 0;
  }
  20% {
    background-position: 100% 0;
  }
  100% {
    background-position: 100% 0;
  }
}
.fish {
  position: absolute;
  width: 10%;
  bottom: 20%;
  right: 40%;
  background-image: url(../img/fish.png);
  padding-bottom: 5%;
  background-size: 1100%;
  background-position: 1100% 0;
  animation: none;
  display: block;
}

.fish-flip {
  position: absolute;
  width: 6%;
  bottom: 41%;
  right: 38%;
  background-image: url(../img/fish.png);
  padding-bottom: 3%;
  background-size: 1100%;
  background-position: 1100% 0;
  animation: none;
  display: block;
  transform: scaleX(-1);
}

.birds {
  position: absolute;
  width: 7%;
  /* height: 10%; */
  top: 16.5%;
  left: 25%;
  background-image: url(../img/birds.png);
  padding-bottom: 5%;
  background-size: 600%;
  background-position: 600% 0;
  animation: fish 2s steps(6) infinite;
  display: block;
}

.birds-2 {
  position: absolute;
  width: 8%;
  /* height: 10%; */
  top: 19%;
  right: 42%;
  background-image: url(../img/birds-2.png);
  padding-bottom: 7%;
  background-size: 400%;
  background-position: 400% 0;
  animation: fish 2s steps(4) infinite;
  display: block;
}

.sun {
  position: absolute;
  width: 13%;
  top: 1%;
  left: 28%;
  background-image: url(../img/sun.png);
  padding-bottom: 13%;
  background-size: 600%;
  background-position: 600% 0;
  animation: fish 2s steps(6) infinite;
  display: block;
}

.waves {
  position: absolute;
  width: 21%;
  top: 46.7%;
  left: 44%;
  background-image: url(../img/waves.png);
  padding-bottom: 21%;
  background-size: 300%;
  background-position: 300% 0;
  animation: fish 1s steps(3) infinite;
  display: block;
}

.surfer {
  position: absolute;
  width: 8.5%;
  top: 74.7%;
  left: 35%;
  background-image: url(../img/surfer.png);
  padding-bottom: 7.5%;
  background-size: 900%;
  background-position: 900% 0;
  animation: fish 3s steps(9) infinite;
  display: block;
}

.boys {
  position: absolute;
  width: 34%;
  bottom: 13.5%;
  left: 11.9%;
  background-image: url(../img/douro_anim_boys.png);
  padding-bottom: 26%;
  background-size: 700%;
  background-position: 700% 0;
  animation: fish 3s steps(7) infinite;
  display: block;
}

#about-bull {
  position: absolute;
  width: 14.75%;
  bottom: 33.5%;
  left: 6.1%;
  background-image: url(../img/about_bull.png);
  padding-bottom: 8.5%;
  background-size: 1200%;
  background-position: 1200% 0;
  animation: fish 3s steps(12) infinite;
  display: block;
}

#about-bg {
  position: absolute;
  width: 58%;
  bottom: 12.3%;
  left: 2.1%;
  background-image: url(../img/about_bg.png);
  padding-bottom: 30%;
  background-size: contain;
  display: block;
  background-repeat: no-repeat;
}

#about-boat {
  position: absolute;
  width: 40.75%;
  bottom: 17.5%;
  left: 14.6%;
  background-image: url(../img/about_boat.png);
  padding-bottom: 36%;
  background-size: 500%;
  background-position: 500% 0;
  animation: fish 2s steps(5) infinite;
  display: block;
}

#about-surfer {
  position: absolute;
  width: 11.3%;
  bottom: 11.5%;
  left: 7%;
  background-image: url(../img/about_surfer.png);
  padding-bottom: 10.4%;
  background-size: 500%;
  background-position: 500% 0;
  animation: fish 2s steps(5) infinite;
  display: block;
}

#events-title {
  width: 17%;
  background-image: url(../img/db_events_title.png);
  padding-bottom: 8%;
  background-size: 300%;
  background-position: 300% 0;
  animation: fish 1s steps(3) infinite;
  display: block;
  margin-bottom: -0.7rem;
}

#events-cat {
  width: 6%;
  background-image: url(../img/db_events_cat.png);
  padding-bottom: 6%;
  background-size: 300%;
  background-position: 300% 0;
  animation: fish 1s steps(3) infinite;
  display: block;
  position: absolute;
  top: 5.2rem;
  left: -8.1rem;
}

#events-chicken {
  width: 9%;
  background-image: url(../img/db_events_chicken-3.png);
  padding-bottom: 6%;
  background-size: 100%;
  background-position: center center;
  display: block;
  position: absolute;
  bottom: -12rem;
  right: -20rem;
}

#events-bunting {
  width: 52%;
  background-image: url(../img/db_events_bunting.png);
  padding-bottom: 19%;
  background-size: 300%;
  background-position: 300% 0;
  animation: fish 1s steps(3) infinite;
  display: block;
  margin-top: -12rem;
  margin-left: 0;
  position: relative;
}
#events-bunting:before {
  content: "";
  position: absolute;
  left: -18rem;
  top: -6rem;
  width: 19rem;
  height: 19rem;
  background-image: url(../img/db_events_tree_left.png);
  background-size: contain;
  background-repeat: no-repeat;
}
#events-bunting:after {
  content: "";
  position: absolute;
  right: -18rem;
  bottom: -11rem;
  width: 20rem;
  height: 22rem;
  background-image: url(../img/db_events_tree_right.png);
  background-size: contain;
  background-repeat: no-repeat;
}

#miguel {
  background-size: 300%;
  background-position: 300% 0;
  display: block;
  position: absolute;
  width: 6.35%;
  background-image: url(../img/db_events_miguel.png);
  padding-bottom: 13%;
  right: 18.68rem;
  bottom: 0.8rem;
  animation-name: miguel;
  animation-duration: 10s;
  animation-fill-mode: forwards;
  -webkit-animation-fill-mode: forwards;
  animation-timing-function: steps(2);
  animation-iteration-count: infinite;
}

#xito {
  background-size: 300%;
  background-position: 100% 0;
  display: block;
  position: absolute;
  width: 5.8%;
  background-image: url(../img/db_events_xito.png);
  padding-bottom: 12.7%;
  left: 24.2rem;
  bottom: 1.1rem;
  animation-name: xito;
  animation-duration: 10s;
  animation-fill-mode: forwards;
  -webkit-animation-fill-mode: forwards;
  animation-timing-function: steps(2);
  animation-iteration-count: infinite;
}

.hamburger {
  padding: 0 0;
  display: inline-block;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.hamburger:focus {
  outline: none;
}
.hamburger:hover {
  opacity: 0.7;
}
.hamburger.is-active:hover {
  opacity: 0.7;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #ede9e9;
}

.hamburger-box {
  width: 1.85rem;
  height: 1.11rem;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.035rem;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 1.85rem;
  height: 0.07rem;
  background-color: #ede9e9;
  border-radius: 0;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -0.52rem;
}
.hamburger-inner::after {
  bottom: -0.52rem;
}

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 0.035rem;
}
.hamburger--slider .hamburger-inner::before {
  top: 0.52rem;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 1.04rem;
}
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 0.52rem, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-0.2642857143rem, -0.45rem, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -1.04rem, 0) rotate(-90deg);
}

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
  top: -1.04rem;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -0.52rem, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  outline: none;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-dots > li {
  display: inline-block;
}
.slick-dots > li:only-child {
  display: none;
  width: 0;
  overflow: hidden;
  margin-right: 0;
}

@media screen and (min-aspect-ratio: 1750/1000) {
  .intro > a {
    width: 9.1rem;
  }
}
@media screen and (min-aspect-ratio: 1400/1000) {
  .page-contact .intro img {
    width: 51%;
  }
}
@media screen and (min-aspect-ratio: 800/1000) and (max-aspect-ratio: 1000/1000) {
  .page-contact .intro img {
    width: 78%;
  }
}
@media screen and (min-aspect-ratio: 600/1000) and (max-aspect-ratio: 800/1000) {
  .page-contact .intro img {
    width: 90%;
    position: relative;
  }
  .page-contact .intro article {
    flex-direction: column-reverse;
  }
}
@media screen and (max-aspect-ratio: 600/1000) {
  .page-contact .intro img {
    width: 90%;
    position: relative;
  }
  .page-contact .intro article {
    flex-direction: column-reverse;
  }
}
@media screen and (min-aspect-ratio: 850/1000) {
  .hide-desktop {
    display: none;
  }
  #watch-now-desktop {
    position: absolute;
    top: 0.4em;
    width: 2.8em;
    left: -3.2em;
  }
}
@media screen and (min-aspect-ratio: 850/1000) {
  :root {
    --margin: 2.5vw;
    --gutter: 1.5vw;
    --unit: calc((100vw - var(--margin) * 2 - var(--gutter) * 11) / 12);
  }
  .s-1 {
    width: calc(var(--unit) * 1 + var(--gutter) * (1 - 1));
  }
  .s-2 {
    width: calc(var(--unit) * 2 + var(--gutter) * (2 - 1));
  }
  .s-3 {
    width: calc(var(--unit) * 3 + var(--gutter) * (3 - 1));
  }
  .s-4 {
    width: calc(var(--unit) * 4 + var(--gutter) * (4 - 1));
  }
  .s-5 {
    width: calc(var(--unit) * 5 + var(--gutter) * (5 - 1));
  }
  .s-6 {
    width: calc(var(--unit) * 6 + var(--gutter) * (6 - 1));
  }
  .s-7 {
    width: calc(var(--unit) * 7 + var(--gutter) * (7 - 1));
  }
  .s-8 {
    width: calc(var(--unit) * 8 + var(--gutter) * (8 - 1));
  }
  .s-9 {
    width: calc(var(--unit) * 9 + var(--gutter) * (9 - 1));
  }
  .s-10 {
    width: calc(var(--unit) * 10 + var(--gutter) * (10 - 1));
  }
  .s-11 {
    width: calc(var(--unit) * 11 + var(--gutter) * (11 - 1));
  }
  .s-12 {
    width: calc(var(--unit) * 12 + var(--gutter) * (12 - 1));
  }
  .s-1-g {
    width: calc(var(--unit) * 1 + var(--gutter) * 1);
  }
  .s-2-g {
    width: calc(var(--unit) * 2 + var(--gutter) * 2);
  }
  .s-3-g {
    width: calc(var(--unit) * 3 + var(--gutter) * 3);
  }
  .s-4-g {
    width: calc(var(--unit) * 4 + var(--gutter) * 4);
  }
  .s-5-g {
    width: calc(var(--unit) * 5 + var(--gutter) * 5);
  }
  .s-6-g {
    width: calc(var(--unit) * 6 + var(--gutter) * 6);
  }
  .s-7-g {
    width: calc(var(--unit) * 7 + var(--gutter) * 7);
  }
  .s-8-g {
    width: calc(var(--unit) * 8 + var(--gutter) * 8);
  }
  .s-9-g {
    width: calc(var(--unit) * 9 + var(--gutter) * 9);
  }
  .s-10-g {
    width: calc(var(--unit) * 10 + var(--gutter) * 10);
  }
  .s-11-g {
    width: calc(var(--unit) * 11 + var(--gutter) * 11);
  }
  .s-12-g {
    width: calc(var(--unit) * 12 + var(--gutter) * 12);
  }
  .m-b-1 {
    margin-bottom: calc(1rem * 1);
  }
  .m-b-2 {
    margin-bottom: calc(1rem * 2);
  }
  .m-b-3 {
    margin-bottom: calc(1rem * 3);
  }
  .m-b-4 {
    margin-bottom: calc(1rem * 4);
  }
  .m-b-5 {
    margin-bottom: calc(1rem * 5);
  }
  .m-b-6 {
    margin-bottom: calc(1rem * 6);
  }
  .m-b-7 {
    margin-bottom: calc(1rem * 7);
  }
  .m-b-8 {
    margin-bottom: calc(1rem * 8);
  }
  .m-b-9 {
    margin-bottom: calc(1rem * 9);
  }
  .m-b-10 {
    margin-bottom: calc(1rem * 10);
  }
  .m-b-11 {
    margin-bottom: calc(1rem * 11);
  }
  .m-b-12 {
    margin-bottom: calc(1rem * 12);
  }
  .m-b-13 {
    margin-bottom: calc(1rem * 13);
  }
  .m-b-14 {
    margin-bottom: calc(1rem * 14);
  }
  .m-b-15 {
    margin-bottom: calc(1rem * 15);
  }
  .m-b-16 {
    margin-bottom: calc(1rem * 16);
  }
  .m-b-17 {
    margin-bottom: calc(1rem * 17);
  }
  .m-b-18 {
    margin-bottom: calc(1rem * 18);
  }
  .m-b-19 {
    margin-bottom: calc(1rem * 19);
  }
  .m-b-20 {
    margin-bottom: calc(1rem * 20);
  }
  .m-b-21 {
    margin-bottom: calc(1rem * 21);
  }
  .m-b-22 {
    margin-bottom: calc(1rem * 22);
  }
  .m-b-23 {
    margin-bottom: calc(1rem * 23);
  }
  .m-b-24 {
    margin-bottom: calc(1rem * 24);
  }
  .m-t-1 {
    margin-top: calc(1rem * 1);
  }
  .m-t-2 {
    margin-top: calc(1rem * 2);
  }
  .m-t-3 {
    margin-top: calc(1rem * 3);
  }
  .m-t-4 {
    margin-top: calc(1rem * 4);
  }
  .m-t-5 {
    margin-top: calc(1rem * 5);
  }
  .m-t-6 {
    margin-top: calc(1rem * 6);
  }
  .m-t-7 {
    margin-top: calc(1rem * 7);
  }
  .m-t-8 {
    margin-top: calc(1rem * 8);
  }
  .m-t-9 {
    margin-top: calc(1rem * 9);
  }
  .m-t-10 {
    margin-top: calc(1rem * 10);
  }
  .m-t-11 {
    margin-top: calc(1rem * 11);
  }
  .m-t-12 {
    margin-top: calc(1rem * 12);
  }
  .m-t-13 {
    margin-top: calc(1rem * 13);
  }
  .m-t-14 {
    margin-top: calc(1rem * 14);
  }
  .m-t-15 {
    margin-top: calc(1rem * 15);
  }
  .m-t-16 {
    margin-top: calc(1rem * 16);
  }
  .m-t-17 {
    margin-top: calc(1rem * 17);
  }
  .m-t-18 {
    margin-top: calc(1rem * 18);
  }
  .m-t-19 {
    margin-top: calc(1rem * 19);
  }
  .m-t-20 {
    margin-top: calc(1rem * 20);
  }
  .m-t-21 {
    margin-top: calc(1rem * 21);
  }
  .m-t-22 {
    margin-top: calc(1rem * 22);
  }
  .m-t-23 {
    margin-top: calc(1rem * 23);
  }
  .m-t-24 {
    margin-top: calc(1rem * 24);
  }
  .m-t-25 {
    margin-top: calc(1rem * 25);
  }
  .m-t-26 {
    margin-top: calc(1rem * 26);
  }
  .m-t-27 {
    margin-top: calc(1rem * 27);
  }
  .m-t-28 {
    margin-top: calc(1rem * 28);
  }
  .m-t-29 {
    margin-top: calc(1rem * 29);
  }
  .m-t-30 {
    margin-top: calc(1rem * 30);
  }
  .m-t-31 {
    margin-top: calc(1rem * 31);
  }
  .m-t-32 {
    margin-top: calc(1rem * 32);
  }
  .m-t-33 {
    margin-top: calc(1rem * 33);
  }
  .m-t-34 {
    margin-top: calc(1rem * 34);
  }
  .m-t-35 {
    margin-top: calc(1rem * 35);
  }
  .m-t-36 {
    margin-top: calc(1rem * 36);
  }
  .m-t--1 {
    margin-top: calc(1rem * -1);
    z-index: 2;
  }
  .m-t--2 {
    margin-top: calc(1rem * -2);
    z-index: 2;
  }
  .m-t--3 {
    margin-top: calc(1rem * -3);
    z-index: 2;
  }
  .m-t--4 {
    margin-top: calc(1rem * -4);
    z-index: 2;
  }
  .m-t--5 {
    margin-top: calc(1rem * -5);
    z-index: 2;
  }
  .m-t--6 {
    margin-top: calc(1rem * -6);
    z-index: 2;
  }
  .m-t--7 {
    margin-top: calc(1rem * -7);
    z-index: 2;
  }
  .m-t--8 {
    margin-top: calc(1rem * -8);
    z-index: 2;
  }
  .m-t--9 {
    margin-top: calc(1rem * -9);
    z-index: 2;
  }
  .m-t--10 {
    margin-top: calc(1rem * -10);
    z-index: 2;
  }
  .m-t--11 {
    margin-top: calc(1rem * -11);
    z-index: 2;
  }
  .m-t--12 {
    margin-top: calc(1rem * -12);
    z-index: 2;
  }
  .m-t--13 {
    margin-top: calc(1rem * -13);
    z-index: 2;
  }
  .m-t--14 {
    margin-top: calc(1rem * -14);
    z-index: 2;
  }
  .m-t--15 {
    margin-top: calc(1rem * -15);
    z-index: 2;
  }
  .m-t--16 {
    margin-top: calc(1rem * -16);
    z-index: 2;
  }
  .m-t--17 {
    margin-top: calc(1rem * -17);
    z-index: 2;
  }
  .m-t--18 {
    margin-top: calc(1rem * -18);
    z-index: 2;
  }
  .m-t--19 {
    margin-top: calc(1rem * -19);
    z-index: 2;
  }
  .m-t--20 {
    margin-top: calc(1rem * -20);
    z-index: 2;
  }
  .m-t--21 {
    margin-top: calc(1rem * -21);
    z-index: 2;
  }
  .m-t--22 {
    margin-top: calc(1rem * -22);
    z-index: 2;
  }
  .m-t--23 {
    margin-top: calc(1rem * -23);
    z-index: 2;
  }
  .m-t--24 {
    margin-top: calc(1rem * -24);
    z-index: 2;
  }
  .m-t--25 {
    margin-top: calc(1rem * -25);
    z-index: 2;
  }
  .m-t--26 {
    margin-top: calc(1rem * -26);
    z-index: 2;
  }
  .m-t--27 {
    margin-top: calc(1rem * -27);
    z-index: 2;
  }
  .m-t--28 {
    margin-top: calc(1rem * -28);
    z-index: 2;
  }
  .m-t--29 {
    margin-top: calc(1rem * -29);
    z-index: 2;
  }
  .m-t--30 {
    margin-top: calc(1rem * -30);
    z-index: 2;
  }
  .m-t--31 {
    margin-top: calc(1rem * -31);
    z-index: 2;
  }
  .m-t--32 {
    margin-top: calc(1rem * -32);
    z-index: 2;
  }
  .m-t--33 {
    margin-top: calc(1rem * -33);
    z-index: 2;
  }
  .m-t--34 {
    margin-top: calc(1rem * -34);
    z-index: 2;
  }
  .m-t--35 {
    margin-top: calc(1rem * -35);
    z-index: 2;
  }
  .m-t--36 {
    margin-top: calc(1rem * -36);
    z-index: 2;
  }
  #nav-bg.active {
    opacity: 1;
    pointer-events: auto;
  }
  .sub-nav.active {
    opacity: 1;
    pointer-events: auto;
  }
  .close-nav {
    display: none;
  }
  .m-l-1 {
    margin-left: calc(var(--unit) * 1);
  }
  .m-l-2 {
    margin-left: calc(var(--unit) * 2);
  }
  .m-l-3 {
    margin-left: calc(var(--unit) * 3);
  }
  .m-l-4 {
    margin-left: calc(var(--unit) * 4);
  }
  .m-l-5 {
    margin-left: calc(var(--unit) * 5);
  }
  .m-l-6 {
    margin-left: calc(var(--unit) * 6);
  }
  .m-l-7 {
    margin-left: calc(var(--unit) * 7);
  }
  .m-l-8 {
    margin-left: calc(var(--unit) * 8);
  }
  .m-l-9 {
    margin-left: calc(var(--unit) * 9);
  }
  .m-l-10 {
    margin-left: calc(var(--unit) * 10);
  }
  .m-l-11 {
    margin-left: calc(var(--unit) * 11);
  }
}
@media screen and (min-aspect-ratio: 850/1000) and (max-aspect-ratio: 1100/1000) {
  html {
    font-size: 1.3vw;
  }
  .footer-left {
    margin-right: 2.5vw;
  }
  #supported_by {
    padding-left: 51.23vw;
  }
  .lt-copy {
    width: calc(var(--unit) * 5 + var(--gutter) * 5);
  }
  .m-b-1 {
    margin-bottom: calc(0.77rem * 1);
  }
  .m-b-2 {
    margin-bottom: calc(0.77rem * 2);
  }
  .m-b-3 {
    margin-bottom: calc(0.77rem * 3);
  }
  .m-b-4 {
    margin-bottom: calc(0.77rem * 4);
  }
  .m-b-5 {
    margin-bottom: calc(0.77rem * 5);
  }
  .m-b-6 {
    margin-bottom: calc(0.77rem * 6);
  }
  .m-b-7 {
    margin-bottom: calc(0.77rem * 7);
  }
  .m-b-8 {
    margin-bottom: calc(0.77rem * 8);
  }
  .m-b-9 {
    margin-bottom: calc(0.77rem * 9);
  }
  .m-b-10 {
    margin-bottom: calc(0.77rem * 10);
  }
  .m-b-11 {
    margin-bottom: calc(0.77rem * 11);
  }
  .m-b-12 {
    margin-bottom: calc(0.77rem * 12);
  }
  .m-b-13 {
    margin-bottom: calc(0.77rem * 13);
  }
  .m-b-14 {
    margin-bottom: calc(0.77rem * 14);
  }
  .m-b-15 {
    margin-bottom: calc(0.77rem * 15);
  }
  .m-b-16 {
    margin-bottom: calc(0.77rem * 16);
  }
  .m-b-17 {
    margin-bottom: calc(0.77rem * 17);
  }
  .m-b-18 {
    margin-bottom: calc(0.77rem * 18);
  }
  .m-b-19 {
    margin-bottom: calc(0.77rem * 19);
  }
  .m-b-20 {
    margin-bottom: calc(0.77rem * 20);
  }
  .m-b-21 {
    margin-bottom: calc(0.77rem * 21);
  }
  .m-b-22 {
    margin-bottom: calc(0.77rem * 22);
  }
  .m-b-23 {
    margin-bottom: calc(0.77rem * 23);
  }
  .m-b-24 {
    margin-bottom: calc(0.77rem * 24);
  }
  .m-t-1 {
    margin-top: calc(0.77rem * 1);
  }
  .m-t-2 {
    margin-top: calc(0.77rem * 2);
  }
  .m-t-3 {
    margin-top: calc(0.77rem * 3);
  }
  .m-t-4 {
    margin-top: calc(0.77rem * 4);
  }
  .m-t-5 {
    margin-top: calc(0.77rem * 5);
  }
  .m-t-6 {
    margin-top: calc(0.77rem * 6);
  }
  .m-t-7 {
    margin-top: calc(0.77rem * 7);
  }
  .m-t-8 {
    margin-top: calc(0.77rem * 8);
  }
  .m-t-9 {
    margin-top: calc(0.77rem * 9);
  }
  .m-t-10 {
    margin-top: calc(0.77rem * 10);
  }
  .m-t-11 {
    margin-top: calc(0.77rem * 11);
  }
  .m-t-12 {
    margin-top: calc(0.77rem * 12);
  }
  .m-t-13 {
    margin-top: calc(0.77rem * 13);
  }
  .m-t-14 {
    margin-top: calc(0.77rem * 14);
  }
  .m-t-15 {
    margin-top: calc(0.77rem * 15);
  }
  .m-t-16 {
    margin-top: calc(0.77rem * 16);
  }
  .m-t-17 {
    margin-top: calc(0.77rem * 17);
  }
  .m-t-18 {
    margin-top: calc(0.77rem * 18);
  }
  .m-t-19 {
    margin-top: calc(0.77rem * 19);
  }
  .m-t-20 {
    margin-top: calc(0.77rem * 20);
  }
  .m-t-21 {
    margin-top: calc(0.77rem * 21);
  }
  .m-t-22 {
    margin-top: calc(0.77rem * 22);
  }
  .m-t-23 {
    margin-top: calc(0.77rem * 23);
  }
  .m-t-24 {
    margin-top: calc(0.77rem * 24);
  }
  .m-t-25 {
    margin-top: calc(0.77rem * 25);
  }
  .m-t-26 {
    margin-top: calc(0.77rem * 26);
  }
  .m-t-27 {
    margin-top: calc(0.77rem * 27);
  }
  .m-t-28 {
    margin-top: calc(0.77rem * 28);
  }
  .m-t-29 {
    margin-top: calc(0.77rem * 29);
  }
  .m-t-30 {
    margin-top: calc(0.77rem * 30);
  }
  .m-t-31 {
    margin-top: calc(0.77rem * 31);
  }
  .m-t-32 {
    margin-top: calc(0.77rem * 32);
  }
  .m-t-33 {
    margin-top: calc(0.77rem * 33);
  }
  .m-t-34 {
    margin-top: calc(0.77rem * 34);
  }
  .m-t-35 {
    margin-top: calc(0.77rem * 35);
  }
  .m-t-36 {
    margin-top: calc(0.77rem * 36);
  }
  .m-t--1 {
    margin-top: calc(0.77rem * -1);
    z-index: 2;
  }
  .m-t--2 {
    margin-top: calc(0.77rem * -2);
    z-index: 2;
  }
  .m-t--3 {
    margin-top: calc(0.77rem * -3);
    z-index: 2;
  }
  .m-t--4 {
    margin-top: calc(0.77rem * -4);
    z-index: 2;
  }
  .m-t--5 {
    margin-top: calc(0.77rem * -5);
    z-index: 2;
  }
  .m-t--6 {
    margin-top: calc(0.77rem * -6);
    z-index: 2;
  }
  .m-t--7 {
    margin-top: calc(0.77rem * -7);
    z-index: 2;
  }
  .m-t--8 {
    margin-top: calc(0.77rem * -8);
    z-index: 2;
  }
  .m-t--9 {
    margin-top: calc(0.77rem * -9);
    z-index: 2;
  }
  .m-t--10 {
    margin-top: calc(0.77rem * -10);
    z-index: 2;
  }
  .m-t--11 {
    margin-top: calc(0.77rem * -11);
    z-index: 2;
  }
  .m-t--12 {
    margin-top: calc(0.77rem * -12);
    z-index: 2;
  }
  .m-t--13 {
    margin-top: calc(0.77rem * -13);
    z-index: 2;
  }
  .m-t--14 {
    margin-top: calc(0.77rem * -14);
    z-index: 2;
  }
  .m-t--15 {
    margin-top: calc(0.77rem * -15);
    z-index: 2;
  }
  .m-t--16 {
    margin-top: calc(0.77rem * -16);
    z-index: 2;
  }
  .m-t--17 {
    margin-top: calc(0.77rem * -17);
    z-index: 2;
  }
  .m-t--18 {
    margin-top: calc(0.77rem * -18);
    z-index: 2;
  }
  .m-t--19 {
    margin-top: calc(0.77rem * -19);
    z-index: 2;
  }
  .m-t--20 {
    margin-top: calc(0.77rem * -20);
    z-index: 2;
  }
  .m-t--21 {
    margin-top: calc(0.77rem * -21);
    z-index: 2;
  }
  .m-t--22 {
    margin-top: calc(0.77rem * -22);
    z-index: 2;
  }
  .m-t--23 {
    margin-top: calc(0.77rem * -23);
    z-index: 2;
  }
  .m-t--24 {
    margin-top: calc(0.77rem * -24);
    z-index: 2;
  }
  .m-t--25 {
    margin-top: calc(0.77rem * -25);
    z-index: 2;
  }
  .m-t--26 {
    margin-top: calc(0.77rem * -26);
    z-index: 2;
  }
  .m-t--27 {
    margin-top: calc(0.77rem * -27);
    z-index: 2;
  }
  .m-t--28 {
    margin-top: calc(0.77rem * -28);
    z-index: 2;
  }
  .m-t--29 {
    margin-top: calc(0.77rem * -29);
    z-index: 2;
  }
  .m-t--30 {
    margin-top: calc(0.77rem * -30);
    z-index: 2;
  }
  .m-t--31 {
    margin-top: calc(0.77rem * -31);
    z-index: 2;
  }
  .m-t--32 {
    margin-top: calc(0.77rem * -32);
    z-index: 2;
  }
  .m-t--33 {
    margin-top: calc(0.77rem * -33);
    z-index: 2;
  }
  .m-t--34 {
    margin-top: calc(0.77rem * -34);
    z-index: 2;
  }
  .m-t--35 {
    margin-top: calc(0.77rem * -35);
    z-index: 2;
  }
  .m-t--36 {
    margin-top: calc(0.77rem * -36);
    z-index: 2;
  }
}
@media screen and (max-aspect-ratio: 850/1000) {
  html {
    font-size: 2.6vw;
    background-color: unset;
  }
  .m-b-1 {
    margin-bottom: calc(1rem * 1);
  }
  .m-b-2 {
    margin-bottom: calc(1rem * 2);
  }
  .m-b-3 {
    margin-bottom: calc(1rem * 3);
  }
  .m-b-4 {
    margin-bottom: calc(1rem * 4);
  }
  .m-b-5 {
    margin-bottom: calc(1rem * 5);
  }
  .m-b-6 {
    margin-bottom: calc(1rem * 6);
  }
  .m-b-7 {
    margin-bottom: calc(1rem * 7);
  }
  .m-b-8 {
    margin-bottom: calc(1rem * 8);
  }
  .m-b-9 {
    margin-bottom: calc(1rem * 9);
  }
  .m-b-10 {
    margin-bottom: calc(1rem * 10);
  }
  .m-b-11 {
    margin-bottom: calc(1rem * 11);
  }
  .m-b-12 {
    margin-bottom: calc(1rem * 12);
  }
  .m-b-13 {
    margin-bottom: calc(1rem * 13);
  }
  .m-b-14 {
    margin-bottom: calc(1rem * 14);
  }
  .m-b-15 {
    margin-bottom: calc(1rem * 15);
  }
  .m-b-16 {
    margin-bottom: calc(1rem * 16);
  }
  .m-b-17 {
    margin-bottom: calc(1rem * 17);
  }
  .m-b-18 {
    margin-bottom: calc(1rem * 18);
  }
  .m-b-19 {
    margin-bottom: calc(1rem * 19);
  }
  .m-b-20 {
    margin-bottom: calc(1rem * 20);
  }
  .m-b-21 {
    margin-bottom: calc(1rem * 21);
  }
  .m-b-22 {
    margin-bottom: calc(1rem * 22);
  }
  .m-b-23 {
    margin-bottom: calc(1rem * 23);
  }
  .m-b-24 {
    margin-bottom: calc(1rem * 24);
  }
  .m-t-1 {
    margin-top: calc(1rem * 1);
  }
  .m-t-2 {
    margin-top: calc(1rem * 2);
  }
  .m-t-3 {
    margin-top: calc(1rem * 3);
  }
  .m-t-4 {
    margin-top: calc(1rem * 4);
  }
  .m-t-5 {
    margin-top: calc(1rem * 5);
  }
  .m-t-6 {
    margin-top: calc(1rem * 6);
  }
  .m-t-7 {
    margin-top: calc(1rem * 7);
  }
  .m-t-8 {
    margin-top: calc(1rem * 8);
  }
  .m-t-9 {
    margin-top: calc(1rem * 9);
  }
  .m-t-10 {
    margin-top: calc(1rem * 10);
  }
  .m-t-11 {
    margin-top: calc(1rem * 11);
  }
  .m-t-12 {
    margin-top: calc(1rem * 12);
  }
  .m-t-13 {
    margin-top: calc(1rem * 13);
  }
  .m-t-14 {
    margin-top: calc(1rem * 14);
  }
  .m-t-15 {
    margin-top: calc(1rem * 15);
  }
  .m-t-16 {
    margin-top: calc(1rem * 16);
  }
  .m-t-17 {
    margin-top: calc(1rem * 17);
  }
  .m-t-18 {
    margin-top: calc(1rem * 18);
  }
  .m-t-19 {
    margin-top: calc(1rem * 19);
  }
  .m-t-20 {
    margin-top: calc(1rem * 20);
  }
  .m-t-21 {
    margin-top: calc(1rem * 21);
  }
  .m-t-22 {
    margin-top: calc(1rem * 22);
  }
  .m-t-23 {
    margin-top: calc(1rem * 23);
  }
  .m-t-24 {
    margin-top: calc(1rem * 24);
  }
  .m-t-25 {
    margin-top: calc(1rem * 25);
  }
  .m-t-26 {
    margin-top: calc(1rem * 26);
  }
  .m-t-27 {
    margin-top: calc(1rem * 27);
  }
  .m-t-28 {
    margin-top: calc(1rem * 28);
  }
  .m-t-29 {
    margin-top: calc(1rem * 29);
  }
  .m-t-30 {
    margin-top: calc(1rem * 30);
  }
  .m-t-31 {
    margin-top: calc(1rem * 31);
  }
  .m-t-32 {
    margin-top: calc(1rem * 32);
  }
  .m-t-33 {
    margin-top: calc(1rem * 33);
  }
  .m-t-34 {
    margin-top: calc(1rem * 34);
  }
  .m-t-35 {
    margin-top: calc(1rem * 35);
  }
  .m-t-36 {
    margin-top: calc(1rem * 36);
  }
  .m-t--1 {
    margin-top: calc(1rem * -1);
    z-index: 2;
  }
  .m-t--2 {
    margin-top: calc(1rem * -2);
    z-index: 2;
  }
  .m-t--3 {
    margin-top: calc(1rem * -3);
    z-index: 2;
  }
  .m-t--4 {
    margin-top: calc(1rem * -4);
    z-index: 2;
  }
  .m-t--5 {
    margin-top: calc(1rem * -5);
    z-index: 2;
  }
  .m-t--6 {
    margin-top: calc(1rem * -6);
    z-index: 2;
  }
  .m-t--7 {
    margin-top: calc(1rem * -7);
    z-index: 2;
  }
  .m-t--8 {
    margin-top: calc(1rem * -8);
    z-index: 2;
  }
  .m-t--9 {
    margin-top: calc(1rem * -9);
    z-index: 2;
  }
  .m-t--10 {
    margin-top: calc(1rem * -10);
    z-index: 2;
  }
  .m-t--11 {
    margin-top: calc(1rem * -11);
    z-index: 2;
  }
  .m-t--12 {
    margin-top: calc(1rem * -12);
    z-index: 2;
  }
  .m-t--13 {
    margin-top: calc(1rem * -13);
    z-index: 2;
  }
  .m-t--14 {
    margin-top: calc(1rem * -14);
    z-index: 2;
  }
  .m-t--15 {
    margin-top: calc(1rem * -15);
    z-index: 2;
  }
  .m-t--16 {
    margin-top: calc(1rem * -16);
    z-index: 2;
  }
  .m-t--17 {
    margin-top: calc(1rem * -17);
    z-index: 2;
  }
  .m-t--18 {
    margin-top: calc(1rem * -18);
    z-index: 2;
  }
  .m-t--19 {
    margin-top: calc(1rem * -19);
    z-index: 2;
  }
  .m-t--20 {
    margin-top: calc(1rem * -20);
    z-index: 2;
  }
  .m-t--21 {
    margin-top: calc(1rem * -21);
    z-index: 2;
  }
  .m-t--22 {
    margin-top: calc(1rem * -22);
    z-index: 2;
  }
  .m-t--23 {
    margin-top: calc(1rem * -23);
    z-index: 2;
  }
  .m-t--24 {
    margin-top: calc(1rem * -24);
    z-index: 2;
  }
  .m-t--25 {
    margin-top: calc(1rem * -25);
    z-index: 2;
  }
  .m-t--26 {
    margin-top: calc(1rem * -26);
    z-index: 2;
  }
  .m-t--27 {
    margin-top: calc(1rem * -27);
    z-index: 2;
  }
  .m-t--28 {
    margin-top: calc(1rem * -28);
    z-index: 2;
  }
  .m-t--29 {
    margin-top: calc(1rem * -29);
    z-index: 2;
  }
  .m-t--30 {
    margin-top: calc(1rem * -30);
    z-index: 2;
  }
  .m-t--31 {
    margin-top: calc(1rem * -31);
    z-index: 2;
  }
  .m-t--32 {
    margin-top: calc(1rem * -32);
    z-index: 2;
  }
  .m-t--33 {
    margin-top: calc(1rem * -33);
    z-index: 2;
  }
  .m-t--34 {
    margin-top: calc(1rem * -34);
    z-index: 2;
  }
  .m-t--35 {
    margin-top: calc(1rem * -35);
    z-index: 2;
  }
  .m-t--36 {
    margin-top: calc(1rem * -36);
    z-index: 2;
  }
  :root {
    --margin: 4vw;
    --gutter: 2vw;
    --unit: calc((100vw - var(--margin) * 2 - var(--gutter) * 3) / 4);
  }
  .hide-mobile {
    display: none;
  }
  article {
    flex-direction: column;
  }
  .images {
    width: 100%;
    margin-bottom: 2rem;
  }
  .text {
    width: 100%;
  }
  .content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .unit:first-child .text {
    margin-left: 0;
  }
  .unit .unit .text {
    margin-top: 0;
  }
  .page-how-to-visit .unit:first-child .text {
    margin-left: 0;
  }
  .intro {
    flex-direction: column;
    flex-wrap: wrap;
    padding: 1.5rem 1.5rem 0 1.5rem;
    justify-content: flex-start;
  }
  .intro > a {
    width: 7.75rem;
    margin-bottom: 2.25rem;
    margin-left: -0.15rem;
  }
  .intro nav {
    width: 100%;
  }
  .intro nav li {
    margin-bottom: 0.75rem;
  }
  nav h4 {
    padding-top: 0.25rem;
  }
  .f-m {
    font-size: 1.6rem;
  }
  .social img {
    width: 1.5rem;
  }
  .social {
    padding-bottom: 0;
    padding-top: 0.45rem;
  }
  h2 {
    padding-right: 0;
    margin-right: -0.01em;
  }
  main section:last-of-type {
    padding-bottom: 0;
  }
  .news-item {
    flex-direction: column;
  }
  .news-item > div {
    width: 100%;
  }
  .map {
    overflow: hidden;
  }
  #logo-leaf {
    left: 1rem;
    z-index: 5;
  }
  #logo-leaf.transform {
    transform: scale(0.7) translateX(-0.3rem) translateY(-1.9rem) rotate(-59deg);
  }
  .logo-leaf-clip {
    left: 1rem;
    z-index: 5;
    transform: scale(0.7) translateX(-0.3rem) translateY(-1.9rem) rotate(-59deg);
  }
  .home .hamburger-container {
    right: 1.5rem;
    margin-top: 0.5rem;
  }
  .hamburger-container {
    width: auto;
    top: 1.5rem;
    right: 1.5rem;
  }
  .text.offset {
    margin-top: 0;
  }
  #douro_valley {
    padding-bottom: 3rem;
  }
  #douro_valley:before {
    display: none;
  }
  #updates:before {
    display: none;
  }
  .quinta-vale-d-maria h1:after {
    display: none;
  }
  .niepoort h1:after {
    display: none;
  }
  .quinta-do-vale-meao h1:after {
    display: none;
  }
  .page-quinta, .page-valley, .page-how-to-visit, .page-template-template-login {
    overflow-x: hidden;
    margin-top: unset;
  }
  .page-quinta .intro, .page-valley .intro, .page-how-to-visit .intro, .page-template-template-login .intro {
    padding-top: 6rem;
  }
  .page-template-template-about main .intro, .page-template-template-login main .intro {
    flex-direction: row;
    height: auto;
  }
  .page-template-template-about main .intro article, .page-template-template-login main .intro article {
    flex-direction: column-reverse;
  }
  .page-template-template-about main .intro figure, .page-template-template-login main .intro figure {
    height: 22rem;
    position: relative;
  }
  .page-template-template-login .page-login {
    margin-top: 0;
    height: unset;
  }
  #about-bg {
    width: 92%;
    padding-bottom: 60%;
    bottom: 3rem;
  }
  #about-boat {
    width: 85%;
    bottom: 4rem;
    left: 11.6%;
    padding-bottom: 75%;
  }
  #about-bull {
    width: 30%;
    bottom: 16.5rem;
    left: 10%;
    padding-bottom: 15%;
  }
  #about-surfer {
    width: 21%;
    bottom: 5.5%;
    left: 60%;
    padding-bottom: 17%;
  }
  .about-target.active {
    display: none;
  }
  article {
    padding-top: 3rem;
    padding-bottom: 0;
  }
  .home .content article:first-of-type {
    padding-top: 6rem;
  }
  #header-bg {
    position: sticky;
    width: 100%;
    height: 4rem;
    top: 0;
    left: 0;
    z-index: 2;
    margin-top: 2rem;
    /*
    		&:after {
    			content: '';
    			position: absolute;
    			bottom: 0;
    			left:1.5rem;
    			width: calc(100% - 3rem);
    			border-bottom: 1px solid;
    		}
    */
  }
  .intro .text.offset {
    margin-top: 0rem;
  }
  .intro article {
    padding-top: 4.5rem;
  }
  .intro article h1 {
    padding-right: 0;
    margin-left: 0;
  }
  .news-item .news-date p {
    border-bottom: 0;
  }
  .page-template-template-valley .quinta-unit {
    padding-bottom: 0;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(2) h2 {
    margin-left: 0;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(2) h2:after {
    width: 17rem;
    height: 15rem;
    left: 14.5rem;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(2) .images {
    margin-top: 0;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(1) .text {
    margin-top: 0rem;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(1) h2:before {
    width: 20rem;
    height: 15rem;
    bottom: 2.25rem;
    left: 8rem;
  }
  .quinta-do-vallado h1:after, .quinta-do-crasto h1:after {
    display: none;
  }
  .article-header h3 {
    width: 100%;
    border-bottom: 0;
  }
  .page-quinta .quinta-unit:first-child {
    padding-top: 6rem;
  }
  .page-quinta .quinta-unit:first-child h3:after {
    width: 25rem;
    height: 10rem;
    mix-blend-mode: multiply;
    position: absolute;
    bottom: -1.5rem;
    left: 4rem;
  }
  .page-how-to-visit .content {
    padding-top: 9rem;
  }
  .page-how-to-visit .unit:first-child .article-header:after {
    width: 29rem;
    height: 31rem;
    position: absolute;
    bottom: -16rem;
    left: 3rem;
  }
  .page-how-to-visit .unit:nth-child(3) .text :after {
    content: unset;
  }
  .unit:first-child .article-header:after {
    width: 33rem;
    height: 28rem;
    bottom: -12rem;
    left: -1rem;
  }
  .unit:nth-child(3) .text :after {
    width: 7rem;
    height: 7rem;
    top: 13.5rem;
    left: 23rem;
  }
  .unit:first-child .article-header:after {
    width: 33rem;
    height: 28rem;
    bottom: -12rem;
    left: -1rem;
  }
  .unit:nth-child(3) .text :after {
    width: 7rem;
    height: 7rem;
    top: 13.5rem;
    left: 23rem;
  }
  footer {
    flex-direction: column-reverse;
    align-items: flex-start;
    height: auto;
    padding: 1.5rem;
  }
  footer a {
    margin-bottom: 0.5em;
  }
  .footer-right {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
  }
  .footer-left {
    margin-top: 1rem;
  }
  .footer-top {
    display: none;
  }
  .footer-left {
    width: 100%;
    margin-right: 0;
  }
  .map.bg-s {
    background-color: transparent;
    overflow: hidden;
  }
  .map-container {
    overflow-x: scroll;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .map-container::-webkit-scrollbar { /* WebKit */
    width: 0;
    height: 0;
  }
  .map-container svg {
    width: 300%;
    margin-top: -6rem;
    margin-bottom: -8rem;
  }
  .download-group figure {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }
  .map-container svg a {
    pointer-events: auto;
  }
  .projects {
    margin-top: -6rem;
  }
  .projects article {
    padding-bottom: 6rem;
  }
  .projects .content {
    padding-top: 3rem;
    margin-top: -1.5rem;
  }
  .grid-col {
    width: 44.5%;
  }
  .grid-col--3, .grid-col--4 {
    display: none;
  }
  #logo-small {
    width: 4.5rem;
  }
  .waves {
    width: 27%;
    top: 46.5%;
    left: 57%;
    padding-bottom: 26%;
  }
  .sun {
    width: 17%;
    top: 1%;
    left: 39%;
    padding-bottom: 17%;
  }
  .birds {
    left: 33%;
  }
  .birds-2 {
    right: 25%;
  }
  .fish {
    width: 14%;
    bottom: 20%;
    right: 20%;
    padding-bottom: 9%;
  }
  .fish-flip {
    width: 8%;
    bottom: 41%;
    right: 21%;
    padding-bottom: 5%;
  }
  .boys {
    width: 45%;
    bottom: 10%;
    left: 10%;
    padding-bottom: 35%;
  }
  .surfer {
    width: 10.8%;
    top: 79.7%;
    left: 39%;
    padding-bottom: 10%;
  }
  .page-quinta .quinta-unit .text {
    margin-top: 0;
  }
  .how-to-visit .unit:first-child .article-header {
    margin-bottom: 3rem;
  }
  .videos .intro .images {
    display: none;
  }
  .videos .intro article {
    padding-top: 6.5rem;
  }
  .videos .news-item .news-date p {
    border-bottom: 1px solid;
  }
  .videos .page-valley {
    margin-top: 0;
  }
  .videos .video-container {
    margin-top: 1.7em;
  }
  .videos .news-content {
    margin-top: 2em;
  }
  #supported_by {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  #supported_by img {
    width: 100%;
  }
  #events-title {
    width: 45%;
    padding-bottom: 20%;
  }
  .intro.centered article h1 {
    font-size: 4rem;
  }
  #events-bunting {
    width: 64%;
    padding-bottom: 22%;
    margin-left: 2rem;
    margin-top: -0.5rem;
    background-image: url(../img/db_events_bunting-m.png);
  }
  #events-bunting:before {
    left: -11.15rem;
    top: -3.8rem;
    width: 12rem;
    height: 13rem;
  }
  #events-bunting:after {
    right: -9.5rem;
    top: -1rem;
    width: 12rem;
    height: 13rem;
    background-image: url(../img/db_events_tree_right-m.png);
  }
  #events-cat {
    width: 9%;
    padding-bottom: 9%;
    top: 3.5rem;
    left: -4.4rem;
  }
  .intro.centered article h3 {
    margin-top: 11.5rem;
    width: 100%;
    font-size: 1.7rem;
  }
  #events-people img {
    image-rendering: optimizeQuality;
  }
  #people-1 {
    width: 6rem;
    left: -14rem;
    top: 3rem;
  }
  #people-2 {
    width: 4.9rem;
    left: -8rem;
    top: -1rem;
  }
  #people-3 {
    width: 5.5rem;
    left: -5.6rem;
    top: 4.55rem;
  }
  #people-4 {
    width: 6rem;
    left: 2rem;
    top: 5rem;
  }
  #people-5 {
    width: 5.5rem;
    top: 3rem;
    right: -13rem;
  }
  #people-6 {
    width: 5.5rem;
    right: -5rem;
    top: 0.5rem;
  }
  .page-events .content article {
    padding-bottom: 3rem;
  }
  .page-events .article-header + .text {
    margin-left: unset;
    margin-top: 0;
  }
  .page-events .article-header {
    margin-bottom: 1.45em;
  }
  .page-events .images {
    margin-bottom: unset;
  }
  .text-centered .f-l {
    font-size: 3.2rem;
  }
  .text-centered.barrel:after {
    display: none;
  }
  .text-centered.barrel {
    position: relative;
    margin-bottom: 2.5rem;
  }
  .text:only-child {
    margin-left: unset;
  }
  .page-events .text.tree:before {
    display: none;
  }
  .page-events .text-only .article-header + .text {
    margin-left: 0;
    margin-top: 0;
  }
  .page-events .article-header + .images {
    margin-top: 1.8em;
    margin-bottom: -1.8em;
  }
  .page-events .article-header + .images {
    margin-top: 0;
    margin-bottom: 2.1em;
  }
  .page-events .text + .images {
    margin-top: 2.2em;
  }
  #people-right {
    width: 17.24rem;
    right: -1.8rem;
    bottom: -9.25rem;
  }
  #people-left {
    width: 17.24rem;
    left: -0.5rem;
    bottom: -10rem;
  }
  #events-people {
    position: relative;
    width: 100%;
  }
  .find-out-more {
    bottom: 1.55rem;
    left: 40%;
    width: 20%;
  }
  .find-out-more span {
    left: 3.4em;
  }
  .page-events .text-centered .f-m {
    width: 85%;
  }
  .intro.centered article {
    padding-top: 2.5rem;
  }
  .intro.centered {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
  }
  .intro.centered .youtube-button {
    margin-bottom: 3.5rem;
    margin-top: 2rem;
  }
  .text-centered .youtube-button {
    margin-bottom: 0.4rem;
  }
  #miguel {
    width: 10.8%;
    padding-bottom: 23%;
    right: 6.9rem;
    bottom: -8.3rem;
  }
  #xito {
    width: 10.5%;
    padding-bottom: 23%;
    left: 13.4rem;
    bottom: -9.4rem;
  }
  .w-66 {
    width: 100%;
  }
  .w-65 {
    width: 100%;
  }
  .w-32 {
    width: 100%;
  }
  .w-80 {
    width: 100%;
  }
  .home .content {
    padding-bottom: 6rem;
  }
  .home .images {
    display: flex;
    margin-bottom: 0.75em;
  }
  .home .slick-list {
    width: 100%;
  }
  .home #douro_valley + div {
    margin-bottom: 0;
  }
  .page-template-template-about .intro .images {
    width: 100%;
    margin-bottom: 2rem;
    padding-top: 7em;
  }
  .page-template-template-valley .quinta-unit:nth-of-type(1) h2 {
    margin-top: 3rem;
  }
  .social + .social {
    margin-left: unset;
  }
  .hero-item {
    padding: 0 5rem;
    width: 100%;
  }
  .lang-switch {
    bottom: unset;
    position: fixed;
    top: 1rem;
    right: 5rem;
    height: 3em;
    width: 3em;
    font-size: 80%;
  }
  #nav-container {
    margin-top: 0;
    position: fixed;
    bottom: 3rem;
    width: 100%;
    left: 0;
    justify-content: center;
  }
  #nav-container > a:nth-of-type(1) {
    position: fixed;
    top: 1rem;
    right: 1rem;
  }
  #nav-container > a:nth-of-type(2) {
    position: fixed;
    top: 1rem;
    right: 3rem;
  }
  .top-nav.mobile-active {
    text-decoration: underline;
  }
  #nav-bg.mobile-active {
    opacity: 1;
    pointer-events: auto;
  }
  .sub-nav.mobile-active {
    opacity: 1;
    pointer-events: auto;
  }
  nav {
    transition: transform 0.5s ease;
    margin-right: unset;
  }
  nav.mobile-active {
    transform: translateY(-14rem);
  }
  .close-nav {
    bottom: 17.25rem;
    top: unset;
    right: 0;
    position: fixed;
    height: 3em;
    width: 3em;
    font-size: 80%;
    margin-right: 0.8rem;
    background-color: #eeebeb;
    border-radius: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.05em;
    opacity: 0;
    pointer-events: 0;
    transition: opacity 0.5s;
  }
  .close-nav li {
    font-size: 150%;
  }
  .close-nav.mobile-active {
    opacity: 1;
    pointer-events: auto;
  }
  .sub-nav + .top-nav {
    margin-left: 6.5em;
  }
  #home-valley .m-t--11 {
    margin-top: -42rem;
  }
  #home-valley .m-t-7 {
    margin-top: 24rem;
  }
  #home-valley .m-t-12.m-b-5 {
    margin-top: 7rem;
    margin-bottom: 7rem;
  }
  #hero {
    height: 100svh;
    position: relative;
  }
  #hero .w-50 {
    width: 100%;
    height: 50%;
    top: 0;
  }
  .hero-item h2 {
    width: 12rem;
    position: relative;
    top: calc(-25% - 0.5em);
  }
  #about-teaser {
    z-index: 2;
    position: relative;
    padding-bottom: 4rem;
  }
  .map h3 {
    display: none;
  }
  .page-luxury-travel h2 {
    margin-bottom: 1rem;
    margin-top: 2rem;
    padding-bottom: 0;
    font-size: 4.9rem;
    order: 1;
    padding-left: 1em;
    text-indent: -1em;
  }
  .lt-hero-image {
    order: 1;
    margin-top: 10rem;
  }
  .lt-title {
    order: 2;
  }
  .lt-hero-copy {
    order: 3;
    margin-top: 1em;
    margin-bottom: 14rem;
  }
  .lt-content-img-1 {
    margin-top: -10rem;
    width: 80%;
  }
  .lt-content-img-2 {
    margin-top: 2rem;
    width: 80%;
    margin-left: auto;
  }
  .lt-copy {
    margin-top: 2em;
  }
  .lt-logo {
    max-width: 12rem;
    margin-left: -0.5rem;
  }
  .lt-date {
    margin-top: 6rem;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    margin-bottom: 12rem;
  }
  .lt-date a {
    margin-left: -4.5rem;
  }
  .lt-date .arrow {
    margin-top: 1.5rem;
    display: inline-block;
  }
  .lt-date .arrow:after {
    right: -4.5rem;
    position: absolute;
  }
  .lt-full-width {
    margin-top: -3rem;
  }
  .lt-closing-img-1 {
    width: 80%;
  }
  .lt-closing-img-2 {
    width: 60%;
    margin-left: auto;
  }
}
@media screen and (max-aspect-ratio: 650/1000) {
  html {
    font-size: 3.5vw;
  }
  #illustration figure {
    width: 122%;
  }
  .sub-nav + .top-nav {
    margin-left: 4em;
  }
}

/*# sourceMappingURL=app.css.map */
