.elementor-kit-5{--e-global-color-primary:#000000;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#7A7A7A;--e-global-color-accent:#D33F00;--e-global-typography-primary-font-family:"DM Sans";--e-global-typography-primary-font-size:60px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-size:34px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.4em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:22px;--e-global-typography-accent-font-weight:300;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:-0.5px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:var( --e-global-color-primary );}.elementor-kit-5 a:hover{color:var( --e-global-color-text );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}.elementor-lightbox{--lightbox-navigation-icons-size:35px;}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-size:26px;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-size:14px;--e-global-typography-text-line-height:1.4em;--e-global-typography-accent-font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:34px;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-size:12px;--e-global-typography-text-line-height:1.2em;--e-global-typography-accent-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================
   LIGHTBOX — Vincent Bartoli
   Huom: !important tarvitaan, koska Elementor
   lataa lightboxin oman CSS:n vasta avattaessa,
   eli näiden sääntöjen jälkeen.
   ============================================ */

/* Yläpalkki ja sulkuruksi aina näkyvissä */
.elementor-lightbox .elementor-slideshow__header,
.elementor-lightbox .dialog-lightbox-close-button {
  opacity: 1 !important;
  visibility: visible !important;
}
.elementor-lightbox .dialog-lightbox-close-button i,
.elementor-lightbox .dialog-lightbox-close-button svg { display: none; }
.elementor-lightbox .dialog-lightbox-close-button {
  position: relative;
  width: 64px !important;
  height: 64px !important;
}
.elementor-lightbox .dialog-lightbox-close-button::before,
.elementor-lightbox .dialog-lightbox-close-button::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 44px;
  height: 4px;
  background: #fff;
}
.elementor-lightbox .dialog-lightbox-close-button::before { transform: translate(-50%,-50%) rotate(45deg); }
.elementor-lightbox .dialog-lightbox-close-button::after { transform: translate(-50%,-50%) rotate(-45deg); }

/* Selausnuolet: aina näkyvissä, omat kärjet ilman ikonifonttia */
.elementor-lightbox .elementor-swiper-button {
  opacity: 1 !important;
  visibility: visible !important;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.elementor-lightbox .elementor-swiper-button-prev { left: 12px; }
.elementor-lightbox .elementor-swiper-button-next { right: 12px; }

.elementor-lightbox .elementor-swiper-button i,
.elementor-lightbox .elementor-swiper-button svg { display: none; }

.elementor-lightbox .elementor-swiper-button::after {
  content: '';
  width: 32px;
  height: 32px;
  border-left: 4px solid #fff;
  border-bottom: 4px solid #fff;
}
.elementor-lightbox .elementor-swiper-button-prev::after { transform: rotate(45deg); }
.elementor-lightbox .elementor-swiper-button-next::after { transform: rotate(-135deg); }

/* Kuvat niin suurina kuin kuvasuhde ja laite sallivat */
.elementor-lightbox .elementor-lightbox-item {
  padding: 0 !important;
}
.elementor-lightbox .elementor-lightbox-image {
  max-width: 100% !important;
  max-height: 100% !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Galleriakuvat (lightbox): suuri, paksu valkoinen plus-kursori, terävät kulmat.
   Kattaa Image- ja Gallery-widgetit. 128px = selainten kursorikatto. */
.elementor-widget-image a[data-elementor-open-lightbox="yes"],
.elementor-widget-image a[data-elementor-lightbox-slideshow],
.elementor-widget-gallery .e-gallery-item,
.elementor-widget-gallery a.e-gallery-image,
.elementor-gallery-item {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cpath d='M64 30v68M30 64h68' stroke='%23fff' stroke-width='9' stroke-linecap='square'/%3E%3C/svg%3E") 64 64, zoom-in !important;
}
.elementor-widget-image a[data-elementor-open-lightbox="yes"] img,
.elementor-widget-image a[data-elementor-lightbox-slideshow] img,
.elementor-widget-gallery .e-gallery-item img,
.elementor-gallery-item img {
  cursor: inherit !important;
}

/* Kuvalaskuri (esim. "8 / 9") suuremmaksi */
.elementor-lightbox .elementor-slideshow__counter {
  font-size: 22px !important;
  font-weight: 700;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.elementor-location-footer {
    margin-top: auto;
}/* End custom CSS */