.elementor-kit-5{--e-global-color-primary:#504230;--e-global-color-secondary:#A99070;--e-global-color-text:#3C372F;--e-global-color-accent:#2B2620;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.18em;--e-global-typography-primary-letter-spacing:-0.4px;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.72em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;color:#3C372F;font-family:"Inter", Helvetica, Arial, sans-serif;font-size:17px;font-weight:400;line-height:1.72em;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#504230;font-family:"Inter", Helvetica, Arial, sans-serif;font-size:15px;font-weight:600;letter-spacing:0.2px;color:#FFFFFF;border-radius:4px 4px 4px 4px;padding:16px 30px 16px 30px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#2B2620;color:#FFFFFF;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#504230;}.elementor-kit-5 a:hover{color:#A99070;}.elementor-kit-5 h1{color:#2B2620;font-family:"Archivo", Helvetica, Arial, sans-serif;font-size:46px;font-weight:700;line-height:1.14em;letter-spacing:-0.8px;}.elementor-kit-5 h2{color:#2B2620;font-family:"Archivo", Helvetica, Arial, sans-serif;font-size:32px;font-weight:700;line-height:1.22em;letter-spacing:-0.4px;}.elementor-kit-5 h3{color:#2B2620;font-family:"Archivo", Helvetica, Arial, sans-serif;font-size:21px;font-weight:600;line-height:1.32em;}.elementor-kit-5 h4{color:#2B2620;font-family:"Archivo", Helvetica, Arial, sans-serif;font-size:18px;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-5 h1{font-size:38px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{font-size:16px;}.elementor-kit-5 h1{font-size:30px;}.elementor-kit-5 h2{font-size:25px;}.elementor-kit-5 h3{font-size:19px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */body { -webkit-font-smoothing: antialiased; }
/* Sarakeleveydet: flex-basis kestää eri gap-arvot */
.e-con.lkr-w-32, .e-con.lkr-w-33 { flex: 1 1 28%; min-width: 0; }
.e-con.lkr-w-34 { flex: 1 1 30%; min-width: 0; }
.e-con.lkr-w-42 { flex: 1 1 38%; min-width: 0; }
.e-con.lkr-w-46 { flex: 1 1 42%; min-width: 0; }
.e-con.lkr-w-49 { flex: 1 1 45%; min-width: 0; }
.e-con.lkr-w-54 { flex: 1 1 50%; min-width: 0; }
.e-con.lkr-w-62 { flex: 0 1 auto; width: 62%; }
.e-con.lkr-w-66 { flex: 0 1 auto; width: 66%; }
.e-con.lkr-w-72 { flex: 0 1 auto; width: 72%; }
.e-con.lkr-w-78 { flex: 0 1 auto; width: 78%; }
@media (max-width: 1024px) {
  .e-con.lkr-w-62, .e-con.lkr-w-66, .e-con.lkr-w-72, .e-con.lkr-w-78 { width: 100%; }
  .e-con.lkr-w-42, .e-con.lkr-w-46, .e-con.lkr-w-54 { flex: 1 1 100%; }
}
@media (max-width: 767px) {
  .e-con.lkr-w-32, .e-con.lkr-w-33, .e-con.lkr-w-34, .e-con.lkr-w-49 { flex: 1 1 100%; }
}
.lkr-hero { position: relative; }
.lkr-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(28,24,20,.55) 0%, rgba(28,24,20,.72) 100%); z-index:0; pointer-events:none; }
.lkr-hero > .e-con-inner, .lkr-hero > .elementor-widget-wrap { position:relative; z-index:1; }
.lkr-hero h1, .lkr-hero h2, .lkr-hero p, .lkr-hero .elementor-heading-title { color:#fff !important; }
.lkr-eyebrow .elementor-heading-title { letter-spacing:.14em; text-transform:uppercase; font-size:13px; font-weight:700; }
.lkr-card { transition: transform .18s ease, box-shadow .18s ease; }
.lkr-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(45,38,30,.14) !important; }
.lkr-card img { transition: transform .4s ease; }
.lkr-card:hover img { transform: scale(1.04); }
.lkr-shot img { aspect-ratio: 4/3; object-fit: cover; width:100%; height:auto; display:block; }
.lkr-tall img { aspect-ratio: 3/4; object-fit: cover; width:100%; height:auto; display:block; }
/* Galleriat */
.elementor-image-gallery .gallery { display:grid; gap:14px; margin:0 !important; }
.elementor-image-gallery .gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.elementor-image-gallery .gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.elementor-image-gallery .gallery-item { margin:0 !important; width:100% !important; max-width:100% !important; float:none !important; }
.elementor-image-gallery .gallery-icon { margin:0 !important; }
.elementor-image-gallery .gallery-item img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; display:block; border:0 !important; border-radius:4px; transition: transform .35s ease, filter .35s ease; }
.elementor-image-gallery .gallery-item:hover img { transform: scale(1.03); }
.elementor-image-gallery .gallery-icon { overflow:hidden; border-radius:4px; }
@media (max-width:1024px){ .elementor-image-gallery .gallery-columns-4 { grid-template-columns: repeat(3,1fr); } }
@media (max-width:767px){ .elementor-image-gallery .gallery-columns-4,
  .elementor-image-gallery .gallery-columns-3 { grid-template-columns: repeat(2,1fr); } }

/* Artikkelinostot */
.elementor-posts .elementor-post { border:1px solid #E6DFD4; border-radius:6px; overflow:hidden; background:#fff; height:100%; display:flex; flex-direction:column; }
.elementor-posts .elementor-post__text { flex:1 1 auto; display:flex; flex-direction:column; }
.elementor-posts .elementor-post__excerpt { flex:1 1 auto; }
.elementor-posts .elementor-post__thumbnail__link { margin:0 !important; }
.elementor-posts .elementor-post__thumbnail { padding-bottom:0 !important; aspect-ratio:4/3; }
.elementor-posts .elementor-post__thumbnail img { position:static !important; width:100% !important; max-width:100% !important; height:100% !important; object-fit:cover; transform:none !important; }
.elementor-posts .elementor-post__text, .elementor-posts .elementor-post__meta-data { padding-left:22px; padding-right:22px; }
.elementor-posts .elementor-post__meta-data { padding-top:18px; margin-bottom:6px; font-size:14px; color:#7A6F5F; }
.elementor-posts .elementor-post__title { font-size:19px; line-height:1.34; margin-bottom:10px; }
.elementor-posts .elementor-post__excerpt p { font-size:15px; line-height:1.62; }
.elementor-posts .elementor-post__read-more { display:inline-block; margin-bottom:22px; }
.elementor-posts .elementor-post__title a { color:#2B2620; }
.elementor-posts .elementor-post__title a:hover { color:#504230; }
.elementor-posts .elementor-post__read-more { color:#504230; font-weight:600; }

/* Artikkelin leipäteksti */
.ds-blog-lead { font-size:19px; line-height:1.65; color:#2B2620; font-weight:500; }
.ds-pull-quote { margin:32px 0; padding:4px 0 4px 22px; border-left:4px solid #A99070; font-size:19px; line-height:1.6; color:#2B2620; }
.ds-pull-quote p { margin:0; }
.ds-blog-figure { margin:32px 0; }
.ds-blog-figure img { width:100%; height:auto; border-radius:6px; display:block; }
.elementor-widget-theme-post-content h2 { margin-top:38px; margin-bottom:14px; }
.elementor-widget-theme-post-content h3 { margin-top:28px; margin-bottom:10px; }
.elementor-widget-theme-post-content ul, .elementor-widget-theme-post-content ol { padding-left:22px; }
.elementor-widget-theme-post-content li { margin-bottom:8px; }

.lkr-list ul { list-style:none; padding:0; margin:0; }
.lkr-list li { position:relative; padding-left:30px; margin-bottom:12px; line-height:1.65; }
.lkr-list li::before { content:""; position:absolute; left:0; top:.55em; width:11px; height:11px; border-radius:2px; background:#A99070; }
.lkr-rule { width:52px; height:4px; background:#A99070; border-radius:2px; }
.lkr-facts { border-left:4px solid #A99070; padding-left:22px; }
.lkr-nav .elementor-item { font-weight:600; letter-spacing:.01em; }
.lkr-contact a { color:inherit; text-decoration:none; border-bottom:1px solid rgba(169,144,112,.6); }
.lkr-contact a:hover { color:#A99070; }
/* Kapea työpöytä: valikko mahtuu yhdelle riville */
@media (min-width: 1025px) and (max-width: 1099px) {
  .lkr-logo { width: 200px !important; }
  .lkr-nav .elementor-item { font-size: 13px !important; }
  .lkr-nav .elementor-nav-menu--main > li > a.elementor-item { padding-left: 5px !important; padding-right: 5px !important; }
  .lkr-header-row .elementor-widget-heading .elementor-heading-title { font-size: 15px !important; }
}
@media (min-width: 1025px) and (max-width: 1319px) {
  .lkr-nav .elementor-item { font-size: 14px !important; }
  .lkr-nav .elementor-nav-menu--main > li > a.elementor-item { padding-left: 7px !important; padding-right: 7px !important; }
  .lkr-header-row .elementor-widget-button .elementor-button { padding: 11px 15px !important; font-size: 13px !important; }
  .lkr-header-row .elementor-widget-heading .elementor-heading-title { font-size: 16px !important; }
}
.lkr-nav .elementor-nav-menu--main { flex-wrap: nowrap; }

/* Mobiilivalikko avautuu koko header-palkin alle, ei logon päälle */
@media (max-width: 1024px) {
  .lkr-header-row { position: relative !important; }
  .lkr-navcol, .lkr-navcol > .e-con-inner, .lkr-nav { position: static !important; }
  .lkr-nav .elementor-nav-menu__container.elementor-nav-menu--dropdown {
    top: 100% !important; left: 0 !important; right: auto !important; width: 100% !important;
    box-shadow: 0 12px 26px rgba(45,38,30,.16);
  }
  .lkr-nav .elementor-nav-menu--dropdown a.elementor-item { padding: 14px 20px !important; }
  .lkr-nav .elementor-menu-toggle { width: 44px; height: 44px; }
  .lkr-header-row .elementor-widget-heading a { display: block; padding: 2px 0; }
}

/* Evästetaulukko mahtuu kapealle ruudulle */
.dsh-cookie-list, .dsh-cookie-list__wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.dsh-cookie-list__table { width: 100%; table-layout: fixed; word-break: break-word; font-size: 14px; }
.dsh-cookie-list__table th, .dsh-cookie-list__table td { padding: 8px 10px; vertical-align: top; }

/* reCAPTCHA-merkki piiloon, tilalla teksti lomakkeen alla */
.grecaptcha-badge { visibility: hidden; }

/* Kosketuskohteet riittävän suuriksi */
.lkr-card .elementor-button-link { padding-top: 6px; padding-bottom: 6px; font-size: 15px; }
.elementor-posts .elementor-post__read-more { padding: 6px 0; }
.elementor-pagination .page-numbers { display:inline-block; min-width:38px; min-height:38px; line-height:38px; text-align:center; }

/* Evästeasetus- ja tietosuojanapit alatunnisteessa */
.elementor-location-footer .dsh-cookie-settings-link {
  display:inline-block; margin:0 10px 8px 0; padding:9px 15px; border-radius:4px;
  border:1px solid rgba(255,255,255,.32); background:transparent; color:rgba(255,255,255,.82) !important;
  font-size:14px; font-weight:600; text-decoration:none; cursor:pointer;
}
.elementor-location-footer .dsh-cookie-settings-link:hover { border-color:#A99070; color:#fff !important; }
.elementor-widget-form .elementor-field-group > label { font-weight:600; font-size:14px; margin-bottom:6px; }
.elementor-widget-form .elementor-field-textual { border:1px solid #d9d2c7; border-radius:4px; padding:13px 14px; background:#fff; }
.elementor-widget-form .elementor-field-textual:focus { border-color:#504230; outline:2px solid rgba(80,66,48,.14); }
.elementor-button { letter-spacing:.01em; }
@media (max-width:767px){
  .lkr-hero::before { background:linear-gradient(180deg, rgba(28,24,20,.6) 0%, rgba(28,24,20,.78) 100%); }
}/* End custom CSS */