/*!
Theme Name: hukeliini
Author: peltopiri
Author URI: https://peltopiri.com/
Version: 2025
Template: kadence
Text Domain: hukeliini
*/

/* KADENCE GLOBAL */
html {
    scroll-behavior: auto !important;
}

/* MENU */
[data-section="kadence_customizer_header_button"] a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

[data-section="kadence_customizer_header_button"] a::before {
    content: "";
    width: 20px;
    height: 22px;
    background-color: currentColor;
    mask-image: url("data:image/svg+xml,%3Csvg width='20' height='22' viewBox='0 0 20 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.02222 9.18214C5.62222 12.5179 8.2 15.2407 11.3444 16.9498L13.7889 14.3567C14.0889 14.0384 14.5333 13.9323 14.9222 14.0738C16.1667 14.5099 17.5111 14.7456 18.8889 14.7456C19.5 14.7456 20 15.2761 20 15.9243V20.038C20 20.6863 19.5 21.2167 18.8889 21.2167C8.45555 21.2167 0 12.2468 0 1.17871C0 0.530419 0.5 0 1.11111 0H5C5.61111 0 6.11111 0.530419 6.11111 1.17871C6.11111 2.65209 6.33333 4.06654 6.74444 5.3867C6.86667 5.79924 6.77778 6.25894 6.46667 6.58898L4.02222 9.18214Z' fill='black'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='22' viewBox='0 0 20 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.02222 9.18214C5.62222 12.5179 8.2 15.2407 11.3444 16.9498L13.7889 14.3567C14.0889 14.0384 14.5333 13.9323 14.9222 14.0738C16.1667 14.5099 17.5111 14.7456 18.8889 14.7456C19.5 14.7456 20 15.2761 20 15.9243V20.038C20 20.6863 19.5 21.2167 18.8889 21.2167C8.45555 21.2167 0 12.2468 0 1.17871C0 0.530419 0.5 0 1.11111 0H5C5.61111 0 6.11111 0.530419 6.11111 1.17871C6.11111 2.65209 6.33333 4.06654 6.74444 5.3867C6.86667 5.79924 6.77778 6.25894 6.46667 6.58898L4.02222 9.18214Z' fill='black'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
}
/*
header .menu-button a:after {
    display: none !important;
}
.header-navigation[class*=header-navigation-style-underline] .header-menu-container>ul>li>a:after {
    background: var(--global-palette1);
    transform: scale(0, 0) translate(50%, 0);
    transform-origin: center;
}
.menu-item-type-custom a:after {
    display: none;
}
#mobile-menu .current-menu-item a {
    text-decoration: underline;
    text-decoration-color: var(--global-palette1);
    text-decoration-thickness: 2px;
    text-underline-offset: 10px;
}
*/

/* HOME */
.hero h1 {
    font-size: clamp(45px, 5.5vw, 70px) !important;
}
h1 mark {
    position: relative;
}
h1 mark:after {
    content: "";
    display: block;
    width: 103%;
    height: 10px;
    background-image: url(img/line.svg);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
    position: absolute;
    left: 0;
    bottom: 3px;
}
.palvelut-grid .wp-block-kadence-image {
    border: 1px solid #E1E5E8;
    border-radius: 15px;
    overflow: hidden;
    background-color: #FAFBFC;
    aspect-ratio: 13/9;
}
.palvelut-grid .wp-block-kadence-image img {
    height: 100%;
    object-fit: cover;
    background: none !important;
}
.palvelut-grid .kt-testimonial-truncate__excerpt p:last-child {
    margin-bottom: var(--global-md-spacing);
}

/* UKK PAGE */
.ukk-container {
    position: relative;
}
.ukk-sticky-title {
    position: sticky;
    top: 150px;
}

/* GALLERY */
.kb-gallery-pause-button {
    pointer-events: none !important;
    opacity: 0 !important;
}
.wp-block-kadence-advancedgallery img {
    border-radius: 15px;
    overflow: hidden;
}
.wp-block-kadence-advancedgallery .kadence-blocks-gallery-thumb-item img {
    border-radius: 8px;
}
.wp-block-kadence-advancedgallery .splide__pagination {
    bottom: -40px !important;
}
.splide__pagination__page {
    background: none !important;
    border: 1px solid var(--global-palette1) !important;
    opacity: 1 !important;
}
.splide__pagination__page.is-active {
    background: var(--global-palette1) !important;
    opacity: 1 !important;
}

/* ARTICLE */
.custom-share-buttons svg {
    fill: var(--global-palette1);
    max-width: 40px;
}

/* ACRHIVE */
.blog .content-area ,
.archive .content-area {
    margin-top: 0;
}
.blog header.post-archive-title,
.archive header.post-archive-title {
    margin-left: calc(50% - var(--global-vw, 100vw) / 2);
    margin-right: calc(50% - var(--global-vw, 100vw) / 2);
    max-width: 100vw;
    width: var(--global-vw, 100vw);
    padding-left: 0;
    padding-right: 0;
    clear: both;
    background-color: var(--global-palette1);
    margin-bottom: 2.5rem;
}
.blog h1.page-title,
.archive h1.page-title {
    margin: 0 auto;
    color: #fff;
    max-width: var(--global-content-width, 1290px);
    padding-left: var(--global-content-edge-padding);
    padding-right: var(--global-content-edge-padding);
    padding-top: var(--global-kb-spacing-3xl, 6.5rem);
    padding-bottom: var(--global-kb-spacing-3xl, 6.5rem);
}
.blog .kadence-posts-list .entry-list-item article.entry,
.archive .kadence-posts-list .entry-list-item article.entry {
    border-radius: 15px;
    overflow: hidden;
}

/* CUSTOM ARCHIVE */
.newsgrid .newsgrid-meta {
    margin-bottom: 10px;
}
.newsgrid .newsgrid-meta .wp-block-post-terms {
    display: contents;
}
.newsgrid a {
    text-decoration: none !important;
}
.newsgrid h2 {
    font-weight: 500;
    font-size: 22px !important;
}
.newsgrid figure {
    border-radius: 15px;
    overflow: hidden;
    margin-bottom: 15px !important;
}
.newsgrid figure img {
    aspect-ratio: 16/9;
    object-fit: cover;
}
.newsgrid .kt-inside-inner-col {
    padding: 0 !important;
}
.newsgrid .newsgrid-meta .wp-block-post-terms a {
    font-size: 14px !important;
    color: var(--global-palette1);
    text-transform: uppercase !important;
    font-weight: 600 !important;
}
.newsgrid .newsgrid-meta .wp-block-post-terms a:after {
    content: "•";
    display: inline-block;
    margin: 0 5px 0 12px;
    color: #cacaca;
}
.newsgrid .newsgrid-meta .wp-block-kadence-advancedheading {
    display: inline-block !important;
    font-size: 14px !important;
}

/* RELATED */
.entry-related-carousel article.content-bg {
    border: 1px solid #e1e5e8;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.1);
}

/* TESTIMONIALS */
.kt-testimonial-item-wrap,
.kt-testimonial-meta-name-wrap {
    text-align: left !important;
}
.kt-testimonial-meta-wrap {
    justify-content: flex-start;
    border-top: 1px solid #2D2E31;
    font-weight: 600;
    margin-top: 20px;
    padding-top: 20px;
}

/* KADENCE FORM */
.yhteydenottolomake {
    border: 1px solid #e1e5e8;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.1);
}
.yhteydenottolomake strong {
    font-weight: 600;
    font-size: 14px;
}

/* WPCF7 */
.wpcf7 .wpcf7-form-control-wrap {
    position: relative;
    width: 100%;
}
.wpcf7 [type="email"],
.wpcf7 [type="text"],
.wpcf7 textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid var(--global-palette3);
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    padding: 0;
    color: var(--global-palette3);
    font-size: 15px;
}
.wpcf7 textarea {
    height: 100px;
}
.wpcf7-not-valid-tip {
    position: absolute;
    color: #dc3232;
    font-size: 10px;
}
.wpcf7-submit {
    margin-top: 30px;
}
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output {
    border: 0;
    margin: 20px 0 0 0;
    padding: 0;
    color: #c05520;
}
.wpcf7 form.invalid .wpcf7-response-output {
    color: #dc3232;
}

/* ACCORDION*/
.wp-block-kadence-accordion {
    border: 1px solid #e1e5e8;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.1);
}
.wp-block-kadence-accordion .kt-blocks-accordion-header {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

/* TESTIMONIAL – lue lisää */
.kt-testimonial-truncate__toggle {
    display: block;
    align-items: center;
    gap: 6px;
    margin-top: 12px;
    padding: 0;
    border: 0;
    background: none !important;
    color: var(--global-palette1, #48a43f) !important;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.kt-testimonial-truncate__toggle:hover,
.kt-testimonial-truncate__toggle:focus {
    text-decoration: none;
}
.kt-testimonial-truncate--open .kt-testimonial-truncate__toggle {
    margin-top: 32px;
}
.is-visible .kt-testimonial-truncate--open .kt-testimonial-truncate__excerpt,
.is-visible .kt-testimonial-truncate--open .kt-testimonial-truncate__more {
    display: contents;
}
.kt-testimonial-truncate__more {
    margin-top: 12px;
    padding-top: 12px;
    display: contents;
}
.kt-testimonial-truncate__more[hidden] {
    display: none;
}

@media (min-width: 1375px) {
    .wp-block-kadence-testimonials .kt-blocks-carousel .kt-blocks-carousel-init {
        padding: 0 !important;
    }
    .wp-block-kadence-testimonials .kt-blocks-carousel .splide__arrow--prev {
        left: -50px;
    }
    .wp-block-kadence-testimonials .kt-blocks-carousel .splide__arrow--next {
        right: -50px;
    }
}

/* QUOTES */
.wp-block-quote {
    position: relative;
    margin: 2rem 0;
    padding: 2rem 2rem 2rem 2.2rem;
    background-color: #ffffff;
    border-left: 6px solid #48A440;
    color: #000000;
    font-size: 1.15rem;
    font-style: italic;
    line-height: 1.7;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    border-radius: 0 15px 15px 0;
    overflow: hidden;
}
.wp-block-quote p {
    margin: 0;
    position: relative;
    z-index: 1;
    font-weight: 500;
}



/* SINGLE POST*/
.single-post .entry-taxonomies a {
    text-decoration: none;
    font-weight: bold;
    color: #fff;
    background: var(--global-palette-highlight);
    padding: 2px 10px;
    border-radius: 7px;
    margin-bottom: 5px;
    display: inline-block;
}
.single-post h1 {
    font-size: clamp(25px, 5vw, 55px);
}
.single-post h2 {
    font-size: clamp(20px, 3vw, 30px);
}

/* YHTEYSTIEDOT */
@media (min-width: 768px) and (max-width: 880px) {
    .kt-has-2-columns h2 {
        font-size: 5vw !important;
    }
}

/* WOOCOMMERCE */
.woocommerce div.product .button.single_add_to_cart_button {
    height: auto;
    line-height: 36px;
}


/* FOOTER */
footer ul#menu-main,
footer ul#menu-main li {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* RESPONSIVE */

@media (max-width: 768px) {
    h1 {
        font-size: 12vw;
    }
    h2 {
        font-size: 8vw;
    }
}