@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;800&display=swap');
html {
    scroll-behavior: smooth;
}
body {
    font-family: Nunito;
    color: #4D4D4D;
    width: 100%;
    margin: 0;
    overflow-x: hidden;
}
h1 {
    font-size: 3.2vw;
    font-weight: 800;
    color: #e21316;
    text-align: center;
    margin: 0;
}
h2 {
    font-size: 2.3vw;
    font-weight: 800;
    color: #4d4d4d;
    text-align: center;
    margin: 5% 0;
}
h3 {
    font-size: 1.7vw;
    font-weight: 800;
    color: #4d4d4d;
    text-align: center;
    margin: 0;
    margin: 0
}
h4 {
    font-size: 1.8vw;
    margin: 0;
}
p {
    font-size: 1.5vw;
    font-weight: 400;
    color: #4d4d4d;
    text-align: center;
}
a {
    color: #ecbb00;
    text-decoration: none;
    font-weight: 600;
}
/* MENU HAMBURGUER- For mobile */
/* Style the navigation menu */
.menu-container {
    width: 100%;
    display: inline-block;
    justify-content: space-around;
    position: relative;
    background-color: #e21316;
    z-index: 1;
}
.menu-container img {
    right: 0;
    top: 0;
    max-height: 12.5vw;
}
#logotipo {
    margin-left: 5px;
    padding-top: 5px;
}
/* Hide the links inside the navigation menu (except for logo/home) */
.menu-container #LinksPaginas {
    display: none;
    text-align: center;
    position: absolute;
    margin: 15% 0 0 0;
    width: 100%;
    background-color: #e21316;
}
/* Style navigation menu links */
.menu-container a {
    display: block;
    padding-top: 10%;
}
/* Style the hamburger menu */
#LinksPaginas a {
    padding-top: 5%;
    font-size: 5vw;
    font-weight: 700;
}
/* Add a grey background color on mouse-over */
.topnav a:hover {
    background-color: #ddd;
    color: black;
}
/* Style the active link (or home/logo) */
.active {
    background-color: #e21316;
}
/* On smaller screens, decrease text size */
@media only screen and (max-width: 600px) {
	.dropbtn{
		display: none;
	}
	.text {
        font-size: 10px;
    }
    .menu-container {
        display: flex;
    }
    .dropdown-mobile {
        float: right;
    }
    .dropbtn-mobile {
        font-size: 16px;
        border: none;
        outline: none;
        color: #ecbb00;
        padding: 10% 0% 0 0%;
        background-color: #e21316;
        margin: 0;
    }
    .dropdown-mobile:hover .dropbtn {
        background-color: #C01000;
    }
    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #e21316;
        text-align: center;
        width: 110px;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
        z-index: 1;
    }
    .dropdown-content a {
        float: none;
        color: #ecbb00;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        text-align: left;
    }
    .dropdown-content a:hover {
        background-color: #C01000;
    }
    .dropdown-mobile:hover .dropdown-content {
        display: block;
    }
}
/* MENU horizontal */
.menu-horizontal {
    display: none;
}
@media only screen and (min-width : 601px) {
    .menu-container {
        display: none;
    }
    .menu-horizontal {
        width: 100%;
        background-color: #e21316;
        position: fixed;
        display: flex;
        box-shadow: 0px -15px 30px #000000;
        z-index: 1;
        top: 0;
    }
    .menu-horizontal img {
        max-height: 5vw;
    }
    #brand {
        margin: auto;
        padding-left: 1%;
    }
    .LinksPagina-Horizontal {
        width: 100%;
        display: inline-flex;
        justify-content: flex-end;
        padding: 0;
        align-items: center;
    }
    .LinksPagina-Horizontal ul {
        text-align: right;
        align-items: center;
        margin: 0;
        padding: 0;
    }
    .LinksPagina-Horizontal li {
        animation: none;
        align-content: center;
        padding: 3vw 2vw;
        margin: 0;
        border: none;
    }
    .LinksPagina-Horizontal li:hover {
        background-color: #C01000;
    }
    .LinksPagina-Horizontal a {
        color: #ecbb00;
        text-decoration: none;
        font-size: 1.5vw;
        font-weight: 700;
    }
    .dropdown {
        float: left;
        overflow: hidden;
        background-color: #ecbb00;
        padding-right: 2vw;
    }
    .dropdown .dropbtn {
        font-size: 16px;
        border: none;
        outline: none;
        color: #ecbb00;
        padding: 1.3vw 1vw;
        background-color: inherit;
        margin: 0;
    }
    .dropdown:hover .dropbtn {
        background-color: #C01000;
    }
    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #e21316;
        min-width: 160px;
        font-size: 1vw;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
        z-index: 1;
    }
    .dropdown-content a {
        float: none;
        color: #ecbb00;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        text-align: left;
    }
    .dropdown-content a:hover {
        background-color: #C01000;
    }
    .dropdown:hover .dropdown-content {
        display: block;
    }
    /*BUTTON LOGIN */
    .login {
        float: left;
        background: rgba(255, 255, 255, 0.2);
    }
    .loginbtn {
        border: none;
        outline: none;
        text-decoration: none;
        background-color: rgba(255, 255, 255, 0);
        padding: 1vw 0vw 0.5vw 0vw;
    }
    /* FINAL BUTTON LOGIN */
}
/*Final MENU horizontal */
/** SLIDESHOW **/
#slideset1 img {
    width: 100vw;
    position: relative;
    margin-top: 8%;
}
#slideset1 > * {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    animation: 12s autoplay1 infinite
}
@keyframes autoplay1 {
    0% {
        visibility: visible
    }
    33.33% {
        visibility: hidden
    }
}
#slideset1 > *:nth-child(1) {
    animation-delay: 0s
}
#slideset1 > *:nth-child(2) {
    animation-delay: 4s
}
#slideset1 > *:nth-child(3) {
    animation-delay: 8s
}
#slideset1 > *:nth-child(4) {
    animation-delay: 14s
}
/** FINAL SLIDESHOW **/
/*MAPAS E DESTINOS*/
.menu-mapas {
    margin-top: 60%;
}
#flex-container {
    width: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 7%;
}
#flex-container > div {
    padding: 10px;
    width: 200px;
}
.know-more {
    display: none;
}
@media only screen and (max-width: 600px) {
    #flex-container > div {
        padding: 5px;
        width: 25vw;
    }
    #maps-times {
        padding-top: 5%;
    }
    #slideset1 img {
        width: 100%;
        position: relative;
        margin-top: 15%;
    }
    .menu-mapas {
        margin-top: 40%;
    }
}
#flex-container > div img {
    width: 100%;
    border-radius: 2%;
    box-shadow: 3px 8px 15px #E6E6E6;
}
#flex-container > div:hover {
    transform: scale(1.1);
    transition: transform .5s;
}
/*FINAL MAPAS E DESTINOS*/
/*HORÁRIOS CAVES*/
#flex-container-caves {
    width: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 5%;
}
#flex-container-caves p {
    text-align: left;
}
#flex-container-caves > div {
    padding: 20px;
    width: 30%;
}
@media only screen and (max-width: 600px) {
    #flex-container-caves {
        margin: 0;
        width: 100%;
    }
    #flex-container-caves > div {
        width: 38vw;
    }
    #flex-container-caves h4 {
        font-size: 100%;
    }
    #flex-container-caves a {
        font-size: 80%;
    }
}
/*FINAL HORÁRIOS CAVES*/
/*BEST SELLERS*/
#flex-container-bestsellers {
    width: 100%;
    margin-bottom: 5%;
}
#flex-container-bestsellers > div {
    width: 80%;
    margin: auto;
}
#flex-container-bestsellers img {
    border-radius: 2%;
    margin-bottom: 50px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}
#flex-container-bestsellers h4 {
    text-align: center;
    display: block;
    margin: auto;
}
#flex-container-bestsellers p {
    text-align: center;
}
@media only screen and (max-width: 600px) {
    #flex-container-bestsellers > div {
        width: 80%;
        margin-bottom: 10%;
    }
    #flex-container-bestsellers > div > img {
        width: 100%;
    }
    #flex-container-bestsellers p {
        text-align: center;
    }
    #flex-container-bestsellers h4 {
        font-size: 100%;
    }
}
/*FINAL BEST SELLERS*/
/*PRODUCTS*/
#flex-container-products {
    width: 90%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 5%;
    margin-bottom: 7%;
}
#flex-container-products > div {
    padding: 10px;
    width: 300px;
}
#flex-container-products h4 {
    text-align: left;
    font-size: 1.5vw;
}
#flex-container-products > div img {
    width: 100%;
    border-radius: 2%;
}
@media only screen and (max-width: 600px) {
    #flex-container-products > div {
        padding: 5px;
        width: 30%;
        margin-bottom: 5%;
    }
    #flex-container-products h4 {
        font-size: 70%;
    }
}
/*FINAL PRODUCTS*/
/*DESCONTOS*/
#flex-container-descontos {
    background-color: #f2f2f2;
    width: 100%;
    margin: auto;
    padding-top: 5%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 7%;
}
.p1 {
    position: relative;
    margin: 2% 2% 0% 2%;
    width: 300px;
    height: 300px;
}
.p1 img {
    display: block;
    margin: auto;
    margin-top: 20%;
}
.p1 p {
    margin: 0;
    text-align: center;
}
.percentagem-desconto {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -10px;
    right: 0px;
    width: 7vw;
    height: 7vw;
    background-color: #e21316;
    border-radius: 50%;
    color: white;
}
@media only screen and (max-width: 600px) {
    .p1 img {
        width: 80%;
    }
    .p1 {
        width: 150px;
        height: 150px;
        margin: 2% 2% 10% 2%;
    }
    .percentagem-desconto {
        width: 40px;
        height: 40px;
    }
    h4 {
        font-size: 70%;
        text-align: left;
    }
}
/*FINAL DESCONTOS*/
/*ACORDEAO INFORMATIONS*/
.accordion-section {
    background-color: #f2f2f2;
    width: 100%;
    padding-top: 1%;
    padding-bottom: 3%;
    margin-top: 3%;
    margin-bottom: 0;
}
.accordion-menu {
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    max-width: 80%;
    padding: 10px 20px 20px;
}
ul {
    list-style: none;
    perspective: 900;
    padding: 0 20px 10px;
    margin: 0;
}
ul li {
    position: relative;
    padding: 0 6% 0 0;
    margin: 0;
    padding-bottom: 4px;
    padding-top: 18px;
    border-top: 1px dotted #f2f2f2;
}
ul li:nth-child(1) {
    border: none;
}
ul li:nth-of-type(1) {
    animation-delay: 0.5s;
}
ul li:nth-of-type(2) {
    animation-delay: 0.75s;
}
ul li:nth-of-type(3) {
    animation-delay: 1.0s;
}
ul li .arrow {
    position: absolute;
    transform: translate(-6px, 0);
    margin-top: 10px;
    right: 0;
}
ul li .fas {
    color: #e21316;
    font-size: 15px;
    margin-right: 10px;
}
ul li .arrow:before, ul li .arrow:after {
    content: "";
    position: absolute;
    background-color: #e21316;
    width: 3px;
    height: 9px;
}
ul li .arrow:before {
    transform: translate(-2px, 0) rotate(45deg);
}
ul li .arrow:after {
    transform: translate(2px, 0) rotate(-45deg);
}
ul li input[type=checkbox] {
    position: absolute;
    cursor: pointer;
    width: 100%;
    height: 50%;
    opacity: 0;
}
ul li input[type=checkbox]:checked ~ p {
    margin-top: 0;
    max-height: 0;
    opacity: 0;
    transform: translate(0, 50%);
}
ul li input[type=checkbox]:checked ~ .arrow:before {
    transform: translate(2px, 0) rotate(45deg);
}
ul li input[type=checkbox]:checked ~ .arrow:after {
    transform: translate(-2px, 0) rotate(-45deg);
}
.transition, p, ul li .arrow:before, ul li .arrow:after {
    transition: all 0.5s ease-in-out;
}
.flipIn, h1, ul li {
    animation: flipdown 0.5s ease both;
}
.no-select, h3 {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    user-select: none;
}
@keyframes flipdown {
    0% {
        opacity: 0;
        transform-origin: top center;
        transform: rotateX(-90deg);
    }
    5% {
        opacity: 1;
    }
    80% {
        transform: rotateX(8deg);
    }
    83% {
        transform: rotateX(6deg);
    }
    92% {
        transform: rotateX(-3deg);
    }
    100% {
        transform-origin: top center;
        transform: rotateX(0deg);
    }
}
/*FINAL ACORDEAO INFORMATIONS*/
.css-tour {
    margin: 0 20vw;
}
@media screen and (max-width: 600px) {
    .css-tour {
        margin: 0 10vw;
    }
}
.banner img {
    width: 100%;
    max-height: 90vh;
    object-fit: cover;
    object-position: bottom;
}
.mapa-interativo {
    margin-top: 5%;
    width: 100%;
}
.destaque {
    width: 100%;
    margin-top: 5%;
}
.destaque img {
    width: 100%;
    object-fit: cover;
}
/* Tabela As Nossas Vantagens */
table {
    width: 100%;
    padding-right: 5%;
    padding-left: 5%;
    margin: 0;
}
td p {
    text-align: left;
    margin: 0;
    line-height: 100%;
}
td img {
    width: 10vw;
    padding-top: 25%;
}
td h3 {
    text-align: left;
    margin: 0;
}
td button {
    font-family: Nunito;
    font-weight: 600;
    background-color: white;
    text-decoration: none;
    border: 2px solid #e21316;
    border-radius: 14px;
    margin: 3% 0;
    padding: 3px 12px;
    display: inline-block;
    transition-duration: 0.4s;
}
td a {
    text-decoration: none;
    color: #e21316;
}
td button :hover {
    text-decoration: none;
}
@media screen and (max-width: 600px) {
    td {
        padding-bottom: 5%;
    }
}
/* Final Tabela As Nossas Vantagens */
/* Formulário */
input[type=text], select, textarea {
    width: 90%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    resize: vertical;
    font-family: Nunito;
}
label {
    padding: 12px 12px 12px 0;
    display: inline-block;
}
input[type=submit] {
    background-color: #e21316;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    float: right;
}
input[type=submit]:hover {
    background-color: #45a049;
}
#container {
    border-radius: 5px;
    background-color: #f2f2f2;
    padding: 6% 10% 6% 10%;
}
.col-25 {
    float: left;
    width: 25%;
    margin-top: 6px;
}
.col-75 {
    float: left;
    width: 75%;
    margin-top: 6px;
}
/* Clear floats after the columns */
.row:after {
    content: "";
    display: table;
    clear: both;
}
/* Responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
    .col-25, .col-75, input[type=submit] {
        width: 100%;
        margin-top: 0;
    }
    h1, h2 {
        font-size: 120%;
    }
    h3 {
        font-size: 100%;
    }
    p {
        font-size: 90%;
        text-align: center;
    }
    td img {
        width: 20vw;
    }
    .accordion-menu h3 {
        font-size: 80%;
    }
    .know-more {
        display: block;
    }
}
/*BLOG*/
.post-blog {
    margin: 0 0 10% 0;
    padding: 0 10%;
}
.post-blog div {
    display: inline-block;
    height: 30vw;
    width: 50%;
    padding: 0;
    align-items: center;
}
.column-left-post {
    float: left;
}
.column-left-post {
    background-size: cover;
}
.column-right-post h2 {
    text-align: left;
    margin: 0 0 0 10%;
}
.column-right-post p {
    text-align: left;
    margin: 0 0 10% 10%;
    color: #e21316;
}
#idioma-blog {
    padding: 0;
    margin: 0 0 0 10%;
    text-align: left;
}
#idioma-blog {
    width: 50%;
    margin-top: 5%;
}
.btn-quadrado {
    border-radius: 3vw;
    background-color: #e21316;
    color: white;
    font-size: 3vw;
    font-weight: 400;
    border-style: none;
    padding: 5% 8%;
}
.bandeira img {
    height: 3vw;
    padding: 0;
}
/*MENU FILTRO BLOG*/
#filtro-blog a {
    background-color: #f2f2f2;
    border-radius: 3vw;
    padding: 10px 20px;
    font-size: 1.5vw;
    color: #4d4d4d;
}
#filtro-blog {
    width: 70%;
    margin: auto;
    margin-bottom: 10%;
}
#filtro-blog a:hover {
    background-color: #ebc100;
    color: white;
}
/*ARTIGO BLOG*/
.post {
    width: 100%;
    margin: auto;
}
.post h1 {
    width: 80%;
    color: #e21316;
    margin: auto;
    margin-top: 5%;
    margin-bottom: 5%;
}
.text-copyright {
    font-size: 15px;
}
.post img {
    display: block;
    margin: auto;
    margin-top: 5%;
    margin-bottom: 5%;
    width: 80%;
}
/*GALERIA POST BLOG*/
#flex-container-blog {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 10%;
}
#flex-container-blog p {
    margin-bottom: 0;
    margin-top: 0;
}
#flex-container-blog > div {
    padding: 5% 2%;
    width: 400px;
    height: 400px;
}
#flex-container-blog img {
    width: 400px;
    height: 400px;
    object-fit: cover;
    border-radius: 1%;
}
@media only screen and (max-width: 600px) {
    #flex-container-blog > div {
        padding: 10% 2%;
        width: 40vw;
        height: 40vw;
    }
    .text-copyright {
        font-size: 50%;
    }
    #flex-container-blog img {
        width: 40vw;
        height: 40vw;
        object-fit: cover;
    }
}
@media screen and (min-width : 601px) {
    .btn-quadrado {
        font-size: 1.5vw;
    }
}
@media screen and (max-width: 600px) {
    .post-blog div {
        height: 40vw;
    }
    .column-right-post {
        font-size: 60%;
    }
    .bandeira img {
        height: 5vw;
    }
    .btn-quadrado {
        font-size: 95%;
    }
    #idioma-blog {
        width: 90%;
    }
    #filtro-blog {
        font-size: 60%;
        width: 95%;
    }
    #filtro-blog a {
        padding: 2px 3px;
        font-size: 2.5vw;
        color: #4d4d4d;
    }
}
/* Footer */
footer {
    background-color: #e21316;
    text-align: center;
    padding: 5% 0;
}
footer div {
    display: flex;
    justify-content: center;
}
footer p {
    text-align: center;
    margin: 0;
    color: white;
}
footer h3 {
    color: white;
}