@font-face {
  font-family: Nougat;
  src: url('../fonts/NougatScriptExtraBold.otf');
}

@font-face {
  font-family: Museo100-Regular;
  src: url('../fonts/Museo100-Regular.otf');
}

@font-face {
  font-family: Museo900-Regular;
  src: url('../fonts/Museo900-Regular.otf');
}

@font-face {
  font-family: Museo700-Regular;
  src: url('../fonts/Museo700-Regular.otf');
}

@font-face {
  font-family: Museo-Slab-500;
  src: url('../fonts/Museo_Slab_500_2.otf');
}

@media (max-width: 640px) {
.table-condensed {
  padding: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-color: #f7f7f7;
}

.sec-cupon-itens{
  background-color: #f7f7f7;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 !important;
  border-radius: 10px;
  width: 100% !important;
  height: 735px;

}

.cupom-items {
  background-color: #f7f7f7;
  border-radius: 10px;
  width: 100% !important;
  padding: 0 !important;
  height: 700px !important;
  overflow-x: hidden !important;
}

.cupom-items::-webkit-scrollbar {
  width: 0 !important;
}

.items {
  --bs-gutter-x: 0.4rem !important;
}

.datepicker-switch {
  font-size: 1.5em !important;
}

.datepicker .prev,
.datepicker .next {
  transition: 0.3s;
  background-color: #97262c;
  border-radius: 100%;
  font-size: 1.5em !important;
  justify-content: center;
  align-items: center;
  color: #fff;
}

.datepicker table tr td{
  border-radius: 5px !important;
  border:0px solid #f7f7f7 !important;
  font-size: 1.1em !important;
}

.datepicker table tr td.day {
  height: 41px !important;
  width: 91px !important;
  padding: 0 7px ;
}

.datepicker table {
  width: 291px !important;
}

.subtitle-section {
  display: flex;
  justify-content: center;
}

.subtitle {
  padding-top: 0;
  padding-bottom: 0;
}

.subtitle * {
  padding: 2px;
  border-radius: 0.5rem;
}

.subtitle > div {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3em !important;
  width: 5em !important;
  margin: 1px;
  padding: 5px;
}

.subtitle-img {
  height: 25px !important; 
}

.subtitle > div > h5 {
  font-size: .5em !important;
}

.sec-subtitle-events {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100% !important;
}

.cupom-section {
  width: 100% !important;
  margin: 0 !important;
  margin-bottom: 2em !important;
}

.cupom-input-section {
  width: 80% !important;
}

.form-cupom {
  width: 100% !important;
}

.form-cupom h2{
  font-size: 1em !important;
}

.form-cupom input{
  width: 100% !important;
  font-size: 1em !important;
}

.btn-cupom {
  position: absolute;
  align-self: center;
  border: none;
  font-size: 1em !important;
  color: #00000080;
  background-color: transparent;
  height: 100%;
  right: 5px !important;
}
}

.h-nougat {
  font-family: Nougat;
}

.museo {
  font-family: Museo-Slab-500;
  src: url('../fonts/Museo_Slab_500_2.otf');
}

.font-menu {
  font-family: Museo700-Regular;
  color:#ffffff !important;
}

.font-museo {
  font-family: Museo700-Regular;
}

.font-slab {
  font-family: Museo-Slab-500;
}

.font-menu2 {
  font-family: Museo700-Regular;
  text-decoration: none !important;
  color: #c0aa6e !important;
  font-size: 1.3em;
}

.text-golden {
  color: #c0aa6e;

}

.text-red,
.title-tickets {
  color: #97262c;
}

.text-right {
  text-align: right;
}

.total_compra {
  border: 1px solid #c0aa6e;
  font-family: Museo700-Regular;
  color: #0047ba;
  padding: 1rem;
  padding: 0.5rem 2rem;
  font-size: large;
}

.btn-back,
.btn-next {
  background-color: #97262c;
  border-radius: 0.25rem;
  color: white;
  font-weight: bolder;
  padding: 0.5rem 3.5rem;
  font-size: large;
}

.btn-back:hover,
.btn-next:hover {
  color: white;
}

.btn-card-quant{
  background:#8F7C4C;
  color: #fff;
  border-radius: 100%;
  border:2px solid #8F7C4C;
  font-size: large;
}

.plano_quant{
  border:none;
  background: #ffffff !important;
  font-family: Museo700-Regular;
  color: #0047ba;
  font-size: large;
}

.plan-description{
  font-family: Museo700-Regular;
  font-size: small;
  text-align: center;
  padding:5px;
}

.plan-name{
  font-size: medium;
  text-align: center;
  padding:5px;
}

.valor_plano{
  font-family: Museo700-Regular;
  font-size: medium;
  text-align: center;
  color: #0047ba;
  padding:5px;
}

.plan-description a{
  color:#000000;
  text-decoration: none; 
}

hr.bt-sl {
  opacity: 1;
}

.bg-dark-red {
  background-color: #97262c;
}
.bt-sl {
  border-top: 2px solid #c0aa6e;
}

.bl-sl {
  border-left: 2px solid #c0aa6e;
}

.botoes-act{
  position: absolute;
  bottom: 10px;
  z-index: 2;
  margin:0 auto;
  left: 33%;
}

.section-1 {
  background-repeat: no-repeat;
  background-size: cover;
}

.section-2 {
  margin-top:-24px;
  background: url('../img/header-neve2.png') no-repeat top center;
  background-size: contain;
}

.mh-md-8 img {
  max-height: 8rem;
}

.mh-md-6 img {
  max-height: 6rem;
}

.mh-md-9 img {
  max-height: 9rem;
}

.mh-md-4 img {
  max-height: 4rem;
}

.btn-conheca {
  width: 100%;
}

.attractions-btns {
  display: block;
  background-image: url('../img/madeira.png');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom;
}

.hr-neve {
  background-image: url('../img/neve.png');
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

.redes a {
  text-decoration: none;
  color: inherit;
}

.viel-spass {
  margin-top: -1rem;
  text-transform: uppercase;
  font-weight: 300;
}

.calendar,
.infos-ticket {
  background-color: #f7f7f7;
  border-radius: 0.75rem;
  padding: 2rem;
}

.calendar {
  background-color: #f7f7f7 !important;
  width: 670px;
}

.calendar h1 {
  font-size: 3rem;
}

.items{
  width: 100%;
}

.items > div > div{
  width: 100%;
  
}

.plan-name-item {
  font-size: medium;
  text-align: center;
  color: #000000;
}

.img-items{
  width: 70%;
  height: auto;
}

.subtitle-section {
  display: flex;
  justify-content: center;
}

.subtitle {
  padding-top: 0;
  padding-bottom: 0;
}

.subtitle-img {
  height: 30px; 
}

.subtitle * {
  padding: 2px;
  border-radius: 0.5rem;
}

.subtitle > div {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 5em;
  width: 9em;
  margin: 3px;
  padding: 5px;
}

.subtitle > div > h5 {
  font-size: 1em;
}

.subtitle-events {
  object-fit: scale-down;
  width: 200px;
  height: 300px;
}

.cupom-section {
  margin: 0 0 2.5em 1em;
  width: 600px;
  height: 60px;
}

.sec-cupon-itens{
  background-color: #f7f7f7;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 1em;
  border-radius: 10px;
  width: 600px;
  height: 735px;
}
.cupom-items {
  background-color: #f7f7f7;
  border-radius: 10px;
  width: 570px;
  overflow-y: auto;
  padding: 2em 4em;
  height: 700px;
}
.cupom-items::-webkit-scrollbar {
  width: 35px;
}

.cupom-items::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;        
}

.cupom-items::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border: 5px solid #fff;
  border-top: 0;
  border-bottom: 0;
  padding: 50px;   
  margin: 2px;
}

.plan-price-old-value {
  text-decoration: line-through;
  font-size: 1.4em;
  font-weight: bold;
  color: red;
  margin-right: 10px;
}

.plan-info {
  text-align: center;
  font-size: .7em;
  font-weight: 600;
  color: black;width: 30px;
}

.modal-content > div{
  color: #000000;
}

.form-cupom {
  background-color: darkred;
  height: 90px;
  width: 100%;
  border-radius: 15px;
  display: flex;
  align-items: center;
}

.form-cupom h2{
  margin: 0 .5em;
  font-size: 2.5em;
  color: #fff;
  font-weight: bolder;

}

.form-cupom input{
  height: 70px;
  width: 375px;
  border-radius: 10px;
  border: none;
  padding-left: 1em;
  font-size: 2em;
}

.btn-cupom {
  position: absolute;
  align-self: center;
  border: none;
  font-size: 1.2em;
  color: #00000080;
  background-color: transparent;
  height: 100%;
  right: 10px;
}

.icon-info {
  background-image: url('../img/itens/info.png');
  background-size: contain;
  height: 4rem;
  background-repeat: no-repeat;
  background-position: center;
  margin-top: -4rem;
  margin-bottom: 1rem;
}

.page-header {
  text-align: center;
  margin-bottom: 20px;
}

.page-title,
h1 {
  font-family: Nougat;
  color: #97262c;
  text-decoration: none;
}

.page-subtitle {
  font-family: Museo-Slab-500;
  font-weight: normal !important;
  color: #97262c;
}

.page-content {
  font-family: Museo700-Regular !important;
  font-size: 1em;
}

.page-content p,
.page-content div,
.page-content span,
.page-content,
.page-content h2,
.page-content h3,
.page-content h4 {
  font-family: Museo700-Regular !important;
  font-size: 1em;
}

/* Bootstrap */
.form-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*='col-'] {
  padding-right: 5px;
  padding-left: 5px;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover,
a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover,
a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}

a.badge-primary:focus,
a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover,
a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus,
a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

a.badge-success:hover,
a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}

a.badge-success:focus,
a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover,
a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus,
a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover,
a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus,
a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover,
a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}

a.badge-danger:focus,
a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover,
a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus,
a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover,
a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus,
a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
/* fim bootstrap */

.contador {
  position: absolute;
  text-align: center;
  border-radius: 10px;
  padding: 10px;
  background: rgba(255, 255, 255, 0.7);
}

.contador-text {
  text-shadow: 2px 2px 2px #ffffff;
  color: #254581;
}

.header-top {
  position: relative;
  z-index: 3;
}

.sub-choice {
  color: #0047ba;
}

/* Calendário */

.datepicker table tr td.active, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled:hover, .datepicker table tr td.active:hover {
  background-color: #C0AA6E !important;
  background-image: linear-gradient(to bottom,#C0AA6E,#C0AA6E) !important;  
}
.datepicker table {
  border-collapse: unset !important;
}
.datepicker table tr td.active {
  background-color: #C0AA6E !important;
  background-image: linear-gradient(to bottom,#C0AA6E,#C0AA6E) !important;
  border: 0;
}

.datepicker table tr td.day {
  height: 71px;
  width: 61px;
}

.datepicker table tr td.disabled, .datepicker table tr td.disabled:hover {
  background-color: #CCCCCC !important;
  background-image: linear-gradient(to bottom,#cccccc,#cccccc) !important;
  color:#ffffff;
  cursor: default;
}

.datepicker table tr td{
  border-radius: 15px;
  border:3px solid #f7f7f7;
  font-size: 2em;
  font-weight: bold;
}

.day-value {
  font-size: .4em !important;
  font-weight: 400;
  margin:  -10px -5px 0 -5px;
  padding: 0;
}

.weekend-day{
  /*background-color: #0047ba !important;
  background-image: linear-gradient(to bottom,#0047ba,#0047ba) !important;
  color:#fff;*/
  background: #274581 !important;
  background: linear-gradient(45deg, #274581 80%, #9B1D29 80%, #9B1D29 100%) !important;
  color:#fff;
}

.holidays {
  /*background-color: #0047ba !important;
  background-image: linear-gradient(to bottom,#0047ba,#0047ba) !important;
  color:#fff;*/
  background: #274581 !important;
  background: linear-gradient(45deg, #274581 80%, #9B1D29 80%, #9B1D29 100%) !important;
  color:#fff;
}

.week-day{
  background-color: #97262c ;
  background-image: linear-gradient(to bottom,#97262c,#97262c) !important;
  color:#fff;
}

.alta-temporada{
  background-color: #236E45 !important;
  background-image: linear-gradient(to bottom,#236E45,#236E45) !important;
  color:#fff;
}

.open{
  background: #274581 !important;
  background: linear-gradient(45deg, #274581, #274581) !important;
  color:#fff;
}

.alta-temporada{
  background-color: #236E45 !important;
  background-image: linear-gradient(to bottom,#236E45,#236E45) !important;
  color:#fff;
}

.blank{
  background: #fff !important;
  color:#fff;
}

.bootstrap-datetimepicker-widget .weekend  {
  color:#0047BA !important;
}

.datepicker-switch {
  font-family: Nougat;
  color: #97262c;
  font-size: 3em;
}

.table-condensed {
  padding: 20px;
  width: 600px;
  height: 600px ;
  background-color: #f7f7f7;
}

.table {
  caption-side: bottom;
  border-collapse: none !important;
}

.datepicker .prev,
.datepicker .next {
  transition: 0.3s;
  background-color: #97262c;
  border-radius: 100%;
  font-size: 2.5em;
  justify-content: center;
  align-items: center;
  color: #fff;
}

.datepicker .prev:hover,
.datepicker .next:hover {
  transition: 0.3s;
  background-color: #fff;
  color: #97262c;
}

/*Data atual*/
.datepicker table tr td.today,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today:hover {
  background-image: linear-gradient(to bottom, #fcc23d, #fcc23d) !important;
  border: 0;
}

/* Fim calendário */

/* Mobile */
@media screen and (max-width: 767px) {
  .full-page {
    margin-top: 2rem;
  }

  .btn-back,
  .btn-next {
    width: 100%;
  }

  .header-neve {
    position: absolute;
    margin-top: -2rem;
    z-index: 1;
    background: url('../img/header-neve-vermelha.png') no-repeat top center;
    background-size: contain;
    width: 100%;
    height: 717px;
  }

  .footer-neve {
    background: url('../img/footer-neve.jpg') repeat-x top center;
    background-size: cover;
    width: 100%;
    height: 80px;
  }

  .section-3 .h-nougat {
    font-size: smaller;
    text-align: start;
  }
  .hr-neve {
    margin-top: -2rem;
    height: 4rem;
  }
  .attractions-btns {
    min-height: 14rem;
  }
  
  .no-mobile{
    display:none;
  }

  .bl-sl {
    border-left:0px solid;
  }

  .no-desktop{
    display:block;
  }

  .btn-conheca img {
    max-height: 4.5rem;
  }
  .btn-ingressos-2 img {
    max-height: 4rem;
  }
  .section-2 {
    background-size: contain;
    margin-top: -2rem;
    background-position: top;
  }
  .section-2 .row:first-child {
    padding-top: 4rem;
  }
  .mh-md-8 img {
    max-height: 5rem;
  }
  .mh-md-6 img {
    max-height: 4rem;
  }
  .mh-md-4 img {
    max-height: 3rem;
  }
  .address {
    margin-top: -2.5rem;
    border-radius: 1.5rem;
    padding: 0.5rem 0.5rem 0.54rem 1.5rem;
    color: #fff;
    font-size: small;
    font-weight: 300;
    line-height: initial;
  }
  .address img {
    max-height: 4rem;
    margin-top: -1.5rem;
  }
  .partners img {
    max-width: 5rem;
  }
  .section-footer-2 img {
    max-height: 4rem;
    margin-bottom: -1.5rem;
  }
  .section-footer-2 {
    font-size: small;
    border-bottom: 2.5rem solid #97262c;
    align-items: center;
    padding-top: 1rem;
  }

  .page-title {
    font-size: 2em;
    display: block;
    text-align: center;
  }

  .page-content {
    padding: 0px 2% 0px 2%;
  }

  h1 {
    font-size: 1.5em !important;
  }

  .page-subtitle {
    display: block;
    text-align: center;
    font-size: 1em !important;
  }

  .contador {
    top: 250px;
    margin: 5px;
  }
}

/* Desktop */
@media screen and (min-width: 1200px) {
  .title-tickets .sub-tickets {
    margin-top: -1.75rem;
  }

  .no-mobile{
    display:block;
  }

  
  .no-desktop{
    display:none;
  }

  .title-tickets h1 {
    font-size: 5.5rem;
  }
  .title-tickets h2 {
    font-size: 3.5rem;
  }
  .btn-conheca img {
    max-height: 9rem;
  }
  .btn-ingressos-2 img {
    max-height: 8rem;
  }
  .btn-tickets img {
    max-height: 6rem;
  }

  .header .container-fluid:first-child {
    margin-bottom: -2.2rem;
  }

  
  .section-1 .row:first-child {
    padding-top: 34rem;
  }

  .section-2 .row:first-child {
    padding-top: 10rem;
  }

  .header-neve {
    position: absolute;
    margin-top: -2rem;
    z-index: 1;
    background: url('../img/header-neve-vermelha.png') no-repeat top center;
    background-size: contain;
    width: 100%;
    height: 717px;
  }

  .footer-neve {
    background: url('../img/footer-neve.jpg') repeat-x top center;
    background-size: cover;
    width: 100%;
    height: 150px;
  }

  .contador {
    top: 500px;
    left: 25%;
  }

  .page-content {
    padding: 0px 10% 0px 10%;
  }

  .page-title {
    font-size: 4em;
  }

  .h1 {
    font-size: 3em !important;
  }

  .page-subtitle {
    font-size: 2em !important;
    padding-left: 30px;
  }

  .page-back-content {
    margin-top: -80px;
    background-image: url('../img/madeira-com-neve.png');
    background-repeat: no-repeat;
    background-size: cover;
    padding: 100px 30px 0px 30px;
  }

  .attractions-btns {
    min-height: 26rem;
  }

  .address {
    margin-top: -10rem;
    border-radius: 5rem 5rem 0rem 0rem;
    padding: 2rem 5rem;
    color: #fff;
    font-size: xx-large;
    font-weight: 300;
    line-height: 2.5rem;
  }

  .address img {
    max-height: 10rem;
    margin-top: -3.5rem;
  }

  .section-footer-2 {
    padding-top: 1.5rem;
    border-bottom: 5rem solid #97262c;
    align-items: end;
  }

  .section-footer-2 img {
    max-height: 8rem;
    margin-bottom: -3.5rem;
  }

  .partners img {
    max-width: 8rem;
  }

  .hr-neve {
    background-image: url('../img/neve.png');
    height: 18rem;
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }

  .sub-choice {
    border-left: 3px solid #0047ba;
  }
}

.icon-ap-g{
  background: url("../img/icon-ap.png");
  width:69px !important;
  height:50px;
  background-size:cover;
}

.product-type{
  font-family: MuseoSlab 500;
  font-size: 3em !important;
  color: #97262c;
  text-decoration: none;
  border-bottom: 2px solid #97262c;
  padding:0px 0px 4px 0px;
  margin:0px 0px 20px 0px;
}