/********************************************************
*********************************************************
***********                Valikko             **********
*********************************************************
*********************************************************/
.btn.btn-primary svg {
    display: none;
}
#primary-menu .primary-menu-item.booking {
    margin-left: 2rem;
}
#primary-menu .primary-menu-item.booking a {
    border: 3px solid var(--color-primary);
    height: auto;
    padding: 0.75rem 3rem;
    border-radius: 30px;
    letter-spacing: 3px;
    display: inline-block;
    font-weight: 700;
}
#primary-menu .primary-menu-item.booking a:hover {
    background: var(--color-primary);
    color: #ffffff;
}
.primary-menu-item.booking a:after {
    display: none;
}
@media all and (min-width: 1200px) {
    .booking-button-mobile {
        display: none;
    }
}
@media all and (max-width: 1199px) {
    #primary-menu-mobile .menu-item.booking {
        display: none;
    }
    .booking-button-mobile {
        position: absolute;
        height: 60px;
        display: flex;
        align-items: center;
        padding-left: 2rem;
        font-size: 16px;
        font-weight: 700;
        text-transform: uppercase;
    }
    .booking-button-mobile:hover {
        color: var(--color-primary);
    }
    
}
/********************************************************
*********************************************************
***********           Sivun yläosa             **********
*********************************************************
*********************************************************/
.hero-gallery,
.hero-gallery .slick-list,
.hero-gallery .slick-track
{
    height: 100% !important;
}
.hero-gallery-item img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.entry-header.has-gallery .hero-title-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
.entry-header.text-center .hero-title-wrapper {
    justify-content: center;
}
.hero-gallery .slick-prev,
.hero-gallery .slick-next
{
    z-index: 1 !important;
}
/********************************************************
*********************************************************
***********                Footer              **********
*********************************************************
*********************************************************/
footer {
    padding: 0;
}
.footer-block {
    background: var(--color-bg);
    padding: 3rem 0;
}
footer p,
.footer-block-linklist > a {
    font-size: 18px;
    margin-bottom: 0.75rem;
}
.footer-block-linklist {
    display: flex;
    flex-flow: column;
}
.footer-block-linklist a {
    line-height: calc(3ex);
}
/* Less margin after address, better solution needed? */
footer > div:first-child .footer-text-content > p:nth-child(3) {
    margin-bottom: 0;
}
.footer-block-title {
    font-family: var(--font);
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
}
.footer-social-media {
    margin-left: auto !important;
}
.footer-some-links a {
    margin-right: 2rem;
}
.footer-some-links a .some-icon {
    width: 20px;
    height: 20px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
/********************************************************
*********************************************************
***********            Tekstilohko             **********
*********************************************************
*********************************************************/
.text-block .block-title h1 {
    font-size: 78px;
    line-height: 1.2;
}
.text-block .block-title h2 {
    font-size: 44px;
}
.text-block .block-title h3 {
    font-size: 36px;
}
.text-block .block-title h4 {
    font-size: 32px;
}
.text-block .block-title * {
    font-weight: 700;
}
.text-block .block-title.title-black {
    color: #000000;
}
.text-block .block-title.title-red {
    color: var(--color-primary);
}
.text-block .block-title.title-beige {
    color: #C8BBAA;
}
.text-block .text-block-lead, .text-block .text-block-lead p, .text-block .text-block-lead ul li {
    font-size: 22px;
}
.text-block-qualities {
    margin-top: -1.5rem;
    margin-bottom: 3rem;
}
.qualities-item {
    font-size: 18px;
    font-weight: 600;
}
.qualities-separator {
    padding: 0 0.75rem;
}
.small-title + .btn {
    margin-top: 2rem;
}
@media screen and (max-width: 75em) { /* < 1200px */
    .text-block .page-block-wrapper {
        margin: 0 1.5rem;
    }
    .text-block .block-title h1 {
        font-size: 32px;
    }
    .text-block .block-title h2 {
        font-size: 28px;
    }
    .text-block .block-title h3 {
        font-size: 22px;
    }
    .text-block .block-title h4 {
        font-size: 20px;
    }
    .text-block .text-block-lead, .text-block .text-block-lead p, .text-block .text-block-lead ul li {
        font-size: 18px;
    }
    .text-block-qualities {
        margin-top: -1rem;
        margin-bottom: 1.5rem;
    }
    .qualities-item {
        font-size: 16px;
    }
    .text-block .btn {
        margin-top: 1.5rem;
    }
    .text-block-text + .btn {
        margin-top: 2.5rem;
    }
}
@media all and (min-width: 1001px) and (max-width: 1200px) {
    .text-block.text-center .page-block-wrapper {
        margin: 0 auto;
    }
}
/********************************************************
*********************************************************
***********      Nostolohko taustakuvalla      **********
*********************************************************
*********************************************************/

.featured-block-with-bg {
    position: relative;
}
.featured-block-with-bg .bg-mask {
    position: absolute;
    z-index: 0;
}
.featured-block-with-bg.text-black {
    color: #000000;
}
.featured-block-with-bg.text-white{
    color: #ffffff;
}
.featured-block-with-bg .block-title {
    font-weight: 700;
}
.featured-block-with-bg .block-title h2 {
    font-size: 42px;
}
.featured-block-with-bg-text-text p {
    font-weight: 600;
}
.featured-block-text-box {
    padding: 4rem;
}
.featured-block-text-box.transparent {
    padding: 0;
}
.featured-block-with-bg .btn {
    margin-top: 3rem;
}
.featured-block-with-bg .featured-block-text-wrapper {
    padding: 8rem 0;
}
@media screen and (max-width: 75em) { /* < 1200px */
    .featured-block-with-bg .featured-block-text-wrapper {
        padding: 6rem 0;
    }
    .featured-block-with-bg .width-content {
        margin: 0 2rem;
    }
    .featured-block-with-bg .block-title h2 {
        font-size: 31px;
    }
    .featured-block-text-box {
        padding: 2.5rem 2rem 2.5rem 2rem;
    }
    .featured-block-with-bg .btn {
        padding: 1rem 3rem 1rem 3rem;
    }
}
/********************************************************
*********************************************************
***********        Listaus palstoissa          **********
*********************************************************
*********************************************************/
.list-in-columns-block .page-block-wrapper {
    padding: 6rem 0 8rem 0;
}
.list-in-columns-block .page-block-wrapper > .text-block-title {
    margin-bottom: 3rem;
}
.list-in-columns-block .page-block-wrapper > .text-block-title * {
    margin-top: 0;
}
.list-in-columns-block-item {
    background: #ffffff;
}
.list-in-columns-block-item-content {
    padding: 2rem;
}
.list-in-columns-block-item-content .text-block-title * {
    margin-top: 0;
    font-family: var(--font);
    font-weight: 700;
    color: var(--color-primary);
}
.list-in-columns-block-item-content .text-block-text {
    margin-top: 1.5rem;
    line-height: 1.7;
}
.list-in-columns-block-item-content .btn {
    margin-top: 3rem;
    padding: 0.9rem 2rem 0.9rem 2rem;
    font-size: 18px;
    min-width: 170px;
}
.list-in-columns-block-item-content .text-block-qualities {
    margin-top: 0.5rem;
    margin-bottom: 0;
}
@media screen and (min-width: 601px) {
    .list-in-columns-block-item.single-column .list-in-columns-block-item-wrapper {
        display: flex;
        flex-flow: row;
    }
    .list-in-columns-block-item.single-column .list-in-columns-block-item-wrapper .list-in-columns-block-item-image,
    .list-in-columns-block-item.single-column .list-in-columns-block-item-wrapper .list-in-columns-block-item-content {
        flex-basis: 50%;
        width: 50%;
    }
    .list-in-columns-block-item.single-column .list-in-columns-block-item-wrapper .list-in-columns-block-item-image img {
        height: 100%;
        object-fit: cover;
    }
    .list-in-columns-block-item.single-column .list-in-columns-block-item-wrapper .list-in-columns-block-item-content {
        padding: 4rem;
    }
}
@media screen and (max-width: 75em) { /* < 1200px */
    .list-in-columns-block-item {
        margin-bottom: 1.5rem !important;
    }
    .list-in-columns-block-item-content .text-block-title * {
        font-size: 28px;
        margin-bottom: 0.5rem;
    }
}
/********************************************************
*********************************************************
***********              Nostolohko            **********
*********************************************************
*********************************************************/
.featured-block {
    margin: 0 !important;
}
.featured-block .page-block-wrapper {
    padding: 6rem 0;
}
.featured-block .page-block-wrapper .grid-x {
    box-shadow: none !important; 
}
.featured-block .page-block-wrapper .grid-x,
.featured-block .page-block-wrapper img
{
    border-radius: 0 !important;
}
.featured-block .image-block img {
    object-fit: cover;
}
.featured-block .featured-block-text.large-order-2 .featured-block-text-wrapper {
    padding-right: 0;
}
.featured-block .featured-block-text-title * {
    font-size: 32px;
    font-family: var(--font);
}
.featured-block .featured-block-text-text,
.featured-block .featured-block-text-text ul li,
.featured-block .featured-block-text-text p
{
    font-size: 18px !important;
    line-height: 1.7;
}
/********************************************************
************           3D-esittely         **************
*********************************************************/
.featured-block-modal {
    visibility: hidden;
    transition: opacity .5s ease;
    background: rgba(0,0,0,.8);
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 1000;
}
.featured-block-modal.active {
    visibility: visible;
    z-index: 1000;
    opacity: 1;
}
.featured-block-modal iframe {
    max-width: 100vw;
}
.featured-block-modal-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.featured-block-modal-close {
    position: absolute;
    background-image: url(https://suomutunturi.rajasoft.dev/wp-content/themes/rajasoft_wp/img/close.svg) !important;
    right: 2rem !important;
    top: 2rem !important;
    height: 35px;
    width: 35px;
}
@media screen and (max-width: 75em) { /* < 1200px */
    .list-in-columns-block-item {
        margin-bottom: 1.5rem !important;
    }
    .list-in-columns-block-item-content .text-block-title * {
        font-size: 28px;
        margin-bottom: 0.5rem;
    }
    .featured-block-modal-close {
        background-size: cover;
        width: 18px;
        height: 18px;
    }
}
@media screen and (min-width: 823px) and (max-width: 900px) { /* < 1200px */
    .featured-block .featured-block-text-wrapper {
        padding: 3rem !important;
    }
}
/* Mobiilinäkymä */
@media screen and (max-width: 823px) { /* < 1200px */
    .featured-block {
        margin: 0 0 3rem 0 !important;
    }
    .featured-block .page-block-wrapper {
        margin: 0;
        padding: 0;
    }
    .featured-block .featured-block-text-wrapper {
        padding: 2rem 2rem 3rem 2rem !important;
    }
    .featured-block .image-block {
        height: 390px;
    }
    .featured-block .featured-block-text-text,
    .featured-block .featured-block-text-text ul li,
    .featured-block .featured-block-text-text p
    {
        font-size: 16px !important;
    }
}
/********************************************************
*********************************************************
***********          Kuvagallerialohko         **********
*********************************************************
*********************************************************/
.image-gallery {
    margin: 0 !important;
    width: 100% !important;
}
.image-gallery .block-title {
    margin-bottom: 3.5rem;
}
.slick-lightbox-slick-img {
    max-width: 1300px;
}
.image-gallery .image-gallery-images {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    grid-template-columns: unset;
    gap: unset;
}
.image-gallery-images.slick-gallery:after {
    flex: 0 0 calc((100% - 6rem) / 4);
    content: '';
}
.image-gallery .image-gallery-images .gallery-item {
    flex-basis: calc((100% - 6rem) / 4);
    margin-bottom: 2rem;
}
.slick-prev,
.slick-next
{
    background-repeat: no-repeat;
    width: 28px;
    height: 50px;
    z-index: 999;
}
.slick-prev:before,
.slick-next:before,
.slick-lightbox-close:before
{
    display: none;
}
.slick-prev {
    background-image: url(https://suomutunturi.rajasoft.dev/wp-content/themes/rajasoft_wp/img/arrow-left.svg) !important;
    left: 2rem !important;
}
.slick-next {
    background-image: url(https://suomutunturi.rajasoft.dev/wp-content/themes/rajasoft_wp/img/arrow-right.svg) !important;
    right: 2rem !important;
}
.slick-lightbox-close {
    background-image: url(https://suomutunturi.rajasoft.dev/wp-content/themes/rajasoft_wp/img/close.svg) !important;
    right: 2rem !important;
    top: 2rem !important;
    height: 35px;
    width: 35px;
}
@media screen and (max-width: 75em) { /* < 1200px */
    .image-gallery-images.slick-gallery:after {
        flex: 0 0 calc((100% - 4rem) / 3);
        content: '';
    }
    .image-gallery .image-gallery-images .gallery-item {
        flex-basis: calc((100% - 4rem) / 3);
        margin-bottom: 2rem;
    }
    .slick-prev,
    .slick-next {
        background-size: cover !important;
        width: 14px;
        height: 25px;
    }
    .slick-lightbox-close {
        background-size: cover;
        width: 18px;
        height: 18px;
    }
    .slick-prev {
        left: 1rem !important;
    }
    .slick-next {
        right: 1rem !important;
    }
    .image-gallery .gallery-item img {
        height: auto !important;
    }
}
/* Mobiilinäkymä */
@media all and (max-width: 823px) {
    .image-gallery-images.slick-gallery:after {
        content: none;
    }
    .image-gallery .image-gallery-images .gallery-item {
        flex-basis: calc((100% - 2rem) / 2);
        margin-bottom: 2rem;
    }
}
/* Mobiilinäkymä */
@media all and (max-width: 639px) {
    .image-gallery {
        width: 100% !important;
        margin: 0 !important;
    }
    .image-gallery .image-gallery-images .gallery-item {
        flex-basis: 100%;
    }
    .slick-lightbox {
        display: none !important;
    }
    .image-gallery .gallery-link {
        pointer-events: none;
    }
    .image-gallery .gallery-item img {
        object-fit: contain;
        height: auto !important;
    }
}