/* 
Theme Name: Kalle's Inn
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

:root {
    --cyan: #69E0CA;
    --white: #fff;
    --black: #000;
    --buttonColor:#1F6256;
}

/*Globals*/

h1,h2,h3,h4{
    font-family: the-seasons, sans-serif;
    font-style: normal;
    font-weight: 400;
}

p{
    margin: 0!important;
}
p:not(:last-child){
    margin-bottom: 20px!important;
}

.ingressi p{
    font-size: 20px;
    font-weight: 500;
}

.alignfull{
    padding-left: max(calc((100vw - 1500px) / 2), 5.2vw);
}

@media screen and (max-height:750px){
    .hero .hero-spacer{
    --spacer-size: 20px!important;
}
.sub-hero {
    min-height: 100vh!important;
    padding-bottom: 60px!important;
}
	.sub-hero .e-con-inner{
		padding-bottom:60px!important;
	}
}

/*Button styles*/
.elementor-widget-button a.elementor-button{
    font-family: Manrope, sans-serif;
    background-color: #A0C2BC;
    color: #0F231F;
    padding: 20px 35px;
    border-radius: 50px;
    font-weight: 400;
    font-size: 16px;
}
.elementor-widget-button.elementor-button-info a.elementor-button {
    background-color: transparent;
    color: var(--buttonColor);
    border-bottom: solid 1px var(--buttonColor);
    padding: 0 0 5px 0px;
    border-radius: 0;
    font-weight: 700;
}
.elementor-widget-button.elementor-button-info a.elementor-button:hover {
    background-color: transparent;
    color: var(--black);
    border-bottom: solid 1px var(--black);
    padding: 0 0 5px 0px;
    border-radius: 0;
    font-weight: 700;
}
.elementor-widget-button.elementor-button-success a.elementor-button {
    background-color: #276759;
    color:#fff
}
.elementor-widget-button.elementor-button-success a.elementor-button:hover {
    background-color: #B9D1CD;
    color:#000;
}
.three-ctas .elementor-cta .elementor-cta__content .elementor-cta__button-wrapper .elementor-cta__button{
    background-color: transparent;
    color: var(--white);
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--white);
    padding: 0 0 5px 0px;
    border-radius: 0;
    font-weight: 700;
}
.three-ctas .elementor-cta .elementor-cta__content .elementor-cta__button-wrapper .elementor-cta__button:hover {
    color: var(--cyan);
    border-bottom: solid 1px var(--cyan);
}

/*Element Styles*/
.elementor-widget-text-editor p a{
    text-decoration: underline;
    color:var(--buttonColor)
}

.review .elementor-icon-list-item .elementor-icon-list-text{
    display: flex!important;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}
.review .elementor-icon-list-item .elementor-icon-list-text .star{
    content:'';
    display: block;
    width: 18px;
    height: 18px;
    background-image: url(/wp-content/uploads/2026/03/star.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.cta-box {
    border-radius: 20px;
}
.cta-box .elementor-cta .elementor-cta__content{
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: flex-start;
    padding: 60px 40px;
}
.cta-box .elementor-cta .elementor-cta__content div.elementor-cta__description{
    order:1;
}
.cta-box .elementor-cta .elementor-cta__content h2{
    order:2;
    margin-top: 8px;
}
.cta-box .elementor-cta .elementor-cta__content .elementor-cta__button-wrapper {
    order: 3;
}
.elementor-cta__bg-overlay {
    background: #000000;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 100%);
}
.cta-box .elementor-cta__description {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}
.cta-box .elementor-cta__description::before {
    content: '';
    width: 35px;
    height: 1px;
    background-color: #fff;
    display: block;
}
.eyebrow,
.sub-heading{
    display: flex;
    flex-direction: row;
    align-items: start;
    gap: 15px;
}
.eyebrow div.elementor-heading-title {
    background-color: #B9D1CD;
    border-radius: 25px;
    padding: 10px 20px;
    font-size: 18px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}
.eyebrow div.elementor-heading-title::before {
    content: '';
    width: 35px;
    height: 1px;
    background-color: #10231F;
    display: block;
}
.sub-heading div.elementor-heading-title::before {
    content: '';
    width: 35px;
    height: 1px;
    background-color: #fff;
    display: block;
}
.sub-heading div.elementor-heading-title {
    font-size: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}

.has-button .elementor-cta .elementor-cta__description{
    background-color: #B9D1CD;
    color:#000000;
    border-radius: 25px;
    padding: 8px 35px 8px 15px;
    font-size: 18px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
    width: auto;   
}
.has-button .elementor-cta .elementor-cta__description::before {
    content: '';
    width: 35px;
    height: 1px;
    background-color: #000;
    display: block;
}

.amenities ul.elementor-icon-list-items {
    gap: 12px;
}
.amenities .elementor-icon-list-item{
    background-color: #fff;
    padding: 7px 18px;
    border-radius: 25px;
}

@media screen and (min-width:1920px){
    .three-ctas .elementor-cta .elementor-cta__content{
        min-height: 700px!important;
    }
    .three-ctas .elementor-cta .elementor-cta__content h2{
        font-size:50px!important;
    }
}
@media screen and (max-width:1366px){
.elementor-cta .elementor-cta__content,
.cta-box .elementor-cta .elementor-cta__content{
    padding: 40px 20px;
}    
}
@media screen and (max-width:1024px){
.elementor-cta .elementor-cta__content,
.cta-box .elementor-cta .elementor-cta__content{
    padding: 50px 30px;
} 
}
@media screen and (max-width:767px){
.elementor-cta .elementor-cta__content,
.cta-box .elementor-cta .elementor-cta__content{
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: flex-start;
    padding: 40px 20px;
}
.elementor-cta .elementor-cta__content h2{
    margin-top: 15px;
}
.elementor-cta__bg-overlay {
    background: #000000;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 1) 100%);
}
.eyebrow div.elementor-heading-title {
    font-size: 16px;
}
}

/*header*/
.header-top {
    background: rgb(0 0 0 / 15%);
    border-radius: 0px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(30px) brightness(82%);
    -webkit-backdrop-filter: blur(30px) brightness(82%);
    border: 1px solid rgba(138, 138, 138, 0);
}
/* Menu */

.main-menu{
    background: rgb(0 0 0 / 15%);
    border-radius: 50px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(30px) brightness(82%);
    -webkit-backdrop-filter: blur(30px) brightness(82%);
    border: 1px solid rgba(138, 138, 138, 0);
}
.sub-menu.elementor-nav-menu--dropdown {
    min-width: 220px!important;
    padding: 10px 15px!important;
}

.main-menu .first a.elementor-sub-item {
    font-weight: 700;
}
/* Offcanvas */

.header-main .e-off-canvas__content{
    background: rgba(0, 0, 0, 0.1);
    border-radius: 0px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border: 1px solid rgba(0, 0, 0, 0);
}


/*Artikkeli loop*/
.post-meta span.elementor-post-info__terms-list-item {
    background-color: #13433A;
    color: #fff;
    border-radius: 25px;
    padding:5px 10px;
}

/*****Swiper Styles*****/

#pages-slider .swiper,
.pages-slider .swiper,
#front-slider .swiper {
    width: 100%;
    overflow: hidden;
    padding-bottom: 50px;
}
#pages-slider .swiper-wrapper,
.pages-slider .swiper-wrapper,
#front-slider .swiper-wrapper  {
    display: flex !important; /* override Elementor's grid */
    flex-wrap: nowrap !important;
}

#front-slider .swiper-scrollbar {
    width: min(950px,65%);
    left: 0;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 7px;
}
.swiper-scrollbar-drag {
    background-color: #1F6256;
}

#pages-slider .elementor-cta__content,
.pages-slider .elementor-cta__content {
    padding: 30px 30px 40px 30px!important;
}

#images-swiper .swiper-scrollbar,
.pages-slider .swiper-scrollbar,
#pages-slider .swiper-scrollbar {
    width: min(950px,90%);
    left: 0;
    bottom: 0;
    height: 7px;
}

#images-swiper .swiper-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
}

#images-swiper .swiper {
    width: 100%;
    overflow: hidden;
    min-width: 0; /* important inside flex parents */
    padding-bottom: 50px;

}

#images-swiper .swiper-slide {
    flex-shrink: 0;
    height: auto;
}
#images-swiper .elementor-element-289d2c3 {
    flex: 1;
    min-width: 0;
}
#images-swiper img{
    height: 550px;
    object-fit: cover;
    border-radius: 20px;
}


/* #pages-slider .swiper::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 125px;
    height: 100%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #f0ede7bd 100%);
    pointer-events: none;
    z-index: 10;
} */

@media screen and (max-width:1366px){
    .pages-slider .elementor-cta__content h2,
    #pages-slider .elementor-cta__content h2{
    font-size: 30px!important;
    word-break: keep-all!important;
}
}
@media screen and (max-width:1024px){
    #images-swiper img{
        height: 450px;
    }
    /* #pages-slider .swiper::after {
        width: 90px;
    } */
}
@media screen and (max-width:767px){
    #images-swiper img{
        height: 400px;
    }
    .pages-slider .elementor-cta__content h2,
    #pages-slider .elementor-cta__content h2{
    font-size: 28px!important;
}
    .pages-slider .elementor-cta__content,
    #pages-slider .elementor-cta__content {
        padding: 30px 20px 40px 20px!important;
    }
}


/*Elementor image slider*/
.tilat-slides .elementor-swiper-button.elementor-swiper-button-next {
    right: 20px!important;
    bottom: 15px!important;
    top: unset!important;
}
.tilat-slides .elementor-swiper-button.elementor-swiper-button-prev {
    right: 65px!important;
    bottom: 15px!important;
    top: unset!important;
    left: unset!important;
}

.tilat-slides.fullheight,
.tilat-slides.fullheight .elementor-image-carousel-wrapper,
.tilat-slides.fullheight .swiper-slide-inner{
    height: 100%;
}
.tilat-slides.fullheight img{
    height: 100%;
    object-fit: cover;
}