/*** Font families ***/
@font-face {
    font-family: "NunitoSans";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/NunitoSans-Light.ttf") format("truetype");
}

@font-face {
    font-family: "NunitoSans";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/NunitoSans-Regular.ttf") format("truetype");
}

@font-face {
    font-family: "NunitoSans";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/NunitoSans-SemiBold.ttf") format("truetype");
}

@font-face {
    font-family: "NunitoSans";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/NunitoSans-Bold.ttf") format("truetype");
}
/**** end of font families***/

body {
    font-family: "NunitoSans";
    background-image: url("../images/background_beam.png");
    background-size: auto;
    background-repeat: no-repeat;
    height: 100%;
}

section h1 {
    margin-bottom: 1.6rem;
}
section h2 {
    margin-bottom: 1rem;
    font-weight: 600;
}
section h3 {
    margin-bottom: 0.5rem;
}

h2 {
    font-weight: 600;
}

.zoom-hover img {
    transition: transform 1s ease;
}

.zoom-hover:hover img {
    transform: scale(1.08);
}
.event-card svg {
    transition: opacity 1500ms ease;
}
.event-card:hover svg {
    opacity: 0;
}

a {
    text-decoration: underline;
}
.content-text p,
.content-text {
    font-size: 20px;
    line-height: 30px;
}
.content-text p {
    margin-bottom: 15px;
}
.content-text h1 {
    font-size: 40px;
}
.content-text h2 {
    font-size: 30px;
}
.content-text h3 {
    font-size: 25px;
}
.content-text ul {
    list-style-type: disc;
    list-style-position: inside;
}
.content-text ol {
    list-style-type: decimal;
}
.content-text ul,
.content-text ol {
    list-style-position: inside;
    margin: 0rem 0rem 0rem 1.6rem;
}
.content-text ul > li,
.content-text ol > li {
    margin-bottom: 0.5rem;
    text-indent: -1.6rem;
}

/*** Using content-text class in roomList.twig ***/
.content-text.room-list-fact-text p,
.content-text.room-list-fact-text {
    font-size: 16px;
    line-height: 25px;
}
.content-text.room-list-fact-text p {
    margin-bottom: 0;
    margin-bottom: 1px;
}
.content-text.room-list-fact-text ul > li,
.content-text.fatcst ol > li {
    margin-bottom: 0;
    text-indent: -1.6rem;
}
/*** end of using contex-text in roomList.twig ***/

/*** Button styles ***/
.button-graphite {
    color: var(--color-graphite);
    border: 1px solid var(--color-graphite);
    background-color: white;
    transition: all 0.2s ease;
}

.button-graphite:hover {
    color: white !important;
    background-color: var(--color-graphite) !important;
}

.button-crimson-inverted {
    color: var(--color-crimson);
    border: 1px solid var(--color-crimson);
    background-color: white;
    transition: all 0.2s ease;
}

.button-crimson-inverted:hover {
    color: white;
    background-color: var(--color-crimson);
}

.button-mist {
    background-color: var(--color-mist);
    color: var(--color-graphite);
    border: 1px solid var(--color-graphite);
    transition: all 0.2s ease;
}

.button-mist:hover {
    background-color: var(--color-graphite);
    color: var(--color-mist);
    border-color: var(--color-graphite);
}

.button-crimson {
    background-color: var(--color-crimson) !important;
}

.button-crimson:hover {
    color: var(--color-crimson) !important;
    border: 1px solid var(--color-crimson) !important;
    background-color: white !important;
}
.button-text-crimson {
    text-decoration: unset;
}
.button-text-crimson:hover {
    color: white !important;
    background-color: var(--color-crimson) !important;
}
/*** End of button styles***/

.component__testimonialBubble a:hover blockquote {
    background-color: var(--color-crimson);
    color: white;
}

input[type="radio"]:checked + label.button-crimson-inverted {
    background-color: var(--color-crimson);
    color: white;
}

.tab-group-button .button-crimson:hover {
    color: white;
    background-color: var(--color-crimson);
}
.no-underline {
    text-decoration: unset;
}
.underline-hover:hover {
    text-decoration: underline;
}
header a {
    text-decoration: unset;
}

.entry-elements section {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/****Accordion****/
.accordion section:first-of-type {
    padding-top: 0px !important;
}
/*** end of accordion ***/

/*** Gallery ***/
.pswp__button {
    visibility: visible !important;
}
.pswp__button--close > svg {
    width: 50px !important;
    height: 50px !important;
}
.pswp__button--zoom {
    display: none !important;
}
/*** end of gallery ***/

/*** fade in scrolling ***/
.fade-in-scrolling {
  opacity: 0;
  transform: translateY(40px); 
  transition: opacity 1s ease-out, transform 1s ease-out; 
}
.fade-in-left-scrolling, .fade-in-rigth-scrolling {
  opacity: 0;
  transform: translateX(100px); 
  transition: opacity 1s ease-out, transform 1s ease-out;
}
.fade-in-left-scrolling {
  transform: translateX(-100px);
}
.fade-in-left-scrolling.inview,
.fade-in-rigth-scrolling.inview {
  opacity: 1;
  transform: translateX(0);
}
.fade-in-scrolling.inview {
  opacity: 1;
  transform: translateY(0);
}


@keyframes expandTestimonialInScrolling {
  0% {
    transform: scale(0);
    transform-origin: 32px 100%;
    opacity: 0;
  }
  100% {
    transform: scale(1);
    transform-origin: 32px 100%;
    opacity: 1;
  }
}
.expand-testimonial-scrolling {
  opacity: 0;
  transform: scale(0);
}
.expand-testimonial-scrolling.inview {
  animation: expandTestimonialInScrolling 0.7s ease-out forwards;
}
/*** End of fade in scrolling ***/

/*** Table ***/
.table {
    border-collapse: collapse;
    width: 100%;
}

.table:not(.table--horizontal) th {
    background: red;
    color: #fff;
    text-align: left;
    padding: 0.5rem 0.75rem;
}

.table:not(.table--horizontal) td {
    padding: 0.5rem 0.75rem;
}

.table:not(.table--horizontal) th,
.table:not(.table--horizontal) td {
    border: 1px solid #ccc;
}

.table--horizontal th,
.table--horizontal td {
    text-align: left;
    padding: 0.5rem 0.75rem;
    border: none;
}

.table--horizontal tr {
    border-bottom: 1px solid #ccc;
}

.table--horizontal tr:last-child {
    border-bottom: none;
}

.table--horizontal th {
    font-weight: bold;
    width: 200px;
    white-space: nowrap;
    background: none;
    color: inherit;
}
/*** End of table ***/

/*** Classes to style swiper.js ***/
.swiper-button-next:hover,
.swiper-button-prev:hover {
    background-color: var(--color-red) !important;
}

.swiper-pagination-bullet {
    width: 25px !important;
    height: 25px !important;
    opacity: 0.8 !important;
    background-color: white !important;
    border: 1px solid rgb(66, 66, 66);
}

.swiper-pagination-bullet-active {
    background-color: var(--color-red) !important;
    opacity: 1 !important;
}

.swiper-button-prev,
.swiper-button-next {
    background-image: url("/themes/viecon/icons/arrow.svg");
    background-size: 60px 60px;
    background-repeat: no-repeat;
    background-position: center;
    width: 60px !important;
    height: 60px !important;
}

.swiper-button-prev {
    transform: rotate(180deg);
}

.swiper-button-prev::after,
.swiper-button-next::after {
    display: none;
}
/*** End of swiper.js ***/

/*** Secure menue styles ***/
.secure-menue {
    color: var(--color-crimson);
    background-color: white;
    border: 1px solid var(--color-crimson);
}
.secure-menue:hover {
    color: var(--color-white);
    background-color: var(--color-crimson);
}
.secure-menue .secure-menue-text {
    color: var(--color-graphite);
}
.secure-menue:hover .secure-menue-text {
    color: var(--color-white);
}
/*** End of secure menue styles ***/

/*** Media queries ***/
@media screen and (max-width: 900px) {
    body {
        background-position-x: center;
    }
}
@media screen and (max-width: 760px) {
    .content-text p,
    .content-text {
        font-size: 16px;
        line-height: 25px;
    }
    .content-text h1 {
        font-size: 25px;
    }
    .content-text h2 {
        font-size: 20px;
    }
    .content-text h3 {
        font-size: 15px;
    }
}
/*** End of media queries ***/
