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

:root {
    --color--form-error: #ff9b9b;
}

/* FONTS*/
h1 {
    font-size: clamp(2.2rem, 2.2rem + ((1vw - 0.2rem) * 3), 4rem);
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.02em;
}
h2,
.is-style-h2-title {
    font-size: clamp(1.453rem, 1.453rem + ((1vw - 0.2rem) * 1.578), 2.4rem);
    font-style: normal;
    font-weight: 300;
    color: var(--global-palette1);
    letter-spacing: -0.02em;
}

/* GLOBAL */
.wp-block-cover,
.single-post .post-thumbnail-inner {
    clip-path: polygon(80px 0, 100% 0, 100% calc(100% - 80px), calc(100% - 80px) 100%, 0 100%, 0 80px);
    -webkit-clip-path: polygon(80px 0, 100% 0, 100% calc(100% - 80px), calc(100% - 80px) 100%, 0 100%, 0 80px);
}
.is-style-cut-corners,
.cut-corners {
    clip-path: polygon(40px 0, 100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 40px);
    -webkit-clip-path: polygon(40px 0, 100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 40px);
    overflow: hidden;
}
.wp-block-button__link,
.gform_button {
    clip-path: polygon(15px 0, 100% 0, 100% calc(100% - 15px), calc(100% - 15px) 100%, 0 100%, 0 15px);
    -webkit-clip-path: polygon(15px 0, 100% 0, 100% calc(100% - 15px), calc(100% - 15px) 100%, 0 100%, 0 15px);
    overflow: hidden;
}
.kb-section-has-link {
    transition: transform 0.3s ease-in-out;
}
.kb-section-has-link:hover {
    transform: translateY(-10px);
}
/* MENU */
#primary-menu .lang-item {
    padding-right: 10px;
}
#primary-menu .lang-item a,
#mobile-menu .lang-item a {
    font-size: 14px;
    color: var(--global-palette1) !important;
    border-radius: 50px;
    border: 1px solid var(--global-palette1);
    background-image: url(img/world.svg);
    background-size: 16px;
    background-position: 8px center;
    background-repeat: no-repeat;
    padding: 0px 0px 0px 30px;
    margin-left: 10px;
}
#mobile-menu .lang-item a {
    font-size: 16px;
    width: 60px;
    padding: 0px 0px 0px 20px;
    margin: 20px auto 0;
}
#mobile-menu .drawer-nav-drop-wrap {
    display: inline-flex;
}
#mobile-menu .drawer-nav-drop-wrap .drawer-sub-toggle {
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
    padding: .5em .7em .5em 0;
}
#mobile-menu .sub-menu {
    padding: 0;
}
#mobile-menu .sub-menu .menu-item a {
    color: #fff;
    text-transform: none;
    padding: 10px;
}

/* HOME */
#map-default {
    height: initial;
    aspect-ratio: 4 / 3;
}

/* ARTICLE */
body.single-post article.single-entry {
    max-width: 980px;
    margin: 0 auto;
    clip-path: polygon(80px 0, 100% 0, 100% calc(100% - 80px), calc(100% - 80px) 100%, 0 100%, 0 80px);
    -webkit-clip-path: polygon(80px 0, 100% 0, 100% calc(100% - 80px), calc(100% - 80px) 100%, 0 100%, 0 80px);
}
body.single-post article.single-entry .entry-content-wrap {
    padding: 4rem;
    
}
.kadence-thumbnail-position-behind {
    margin-bottom: -300px;
}
.custom-share-buttons svg {
    fill: var(--global-palette1);
    max-width: 40px;
}

/* 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;
}

/* GRAVITY FORMS*/
.gform_wrapper {
    --gf-ctrl-desc-color-error: var(--color--form-error);
    --gf-form-validation-heading-color: var(--color--form-error);
    --gf-form-validation-border-color: var(--color--form-error);
    --gf-form-validation-border-color-focus: var(--color--form-error);
    --gf-form-validation-outline-focus: 3px solid hsla(0, 100%, 80%, .25);
    --gf-ctrl-border-color-error: var(--color--form-error);
}
.gform_wrapper .gform_fields {
    -moz-column-gap: 25px!important;
    column-gap: 25px !important;
    row-gap: 15px !important;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
    color: var(--global-palette7);
    outline-color: rgba(202, 244, 31, 0.65) !important;
    outline-offset: 1px !important;
    outline-style: solid !important;
    outline-width: 3px !important;
}
.gform-field-label {
    color: #fff !important;
}
.gform-theme--framework .gform-field-label>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme--framework.gform_editor legend.gform-field-label>span>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    color: var(--global-palette1) !important;
}
.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
    color: var(--global-palette7) !important;
}
.gform-theme--foundation .gfield textarea.large {
    min-block-size: 20.4rem;
}
.gform_button {
    border-radius: 0 !important;
    font-size: 20px !important;
    padding: 15px 35px 15px 35px !important;
    background: var(--global-palette1) !important;
    color: var(--global-palette7) !important;
}
@media screen and (min-width: 640px) {
    .gform_1_textarea {
        grid-column: span 6 / span 6 !important;
        grid-column-start: 7 !important;
        grid-row: span 4 / span 4 !important;
        grid-row-start: 1 !important;
    }
}
.gform-footer {
    padding: 25px 0;
    justify-content: center;
}

/* FOOTER */

/* RESPONSIVE */
@media screen and (max-width: 1480px) {
    .wp-block-cover.alignwide {
        margin: 0 auto;
        max-width: 100%;
    }
}