.elementor-kit-17551{--e-global-color-primary:#E85C0D;--e-global-color-secondary:#FFDE17;--e-global-color-text:#353535;--e-global-color-accent:#FFDAA2;--e-global-color-f898f31:#FFFFFF;--e-global-color-8630d9f:#7E222200;--e-global-color-460074c:#EF4136;--e-global-color-97f51d5:#00763A;--e-global-color-c336a93:#B7DA9B;--e-global-color-0c20f13:#ED1556;--e-global-color-c053aae:#FBC9C4;--e-global-color-0afdd65:#00689E;--e-global-color-f324b4c:#B0DFDB;--e-global-typography-primary-font-family:"Deuterium";--e-global-typography-primary-font-size:46px;--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Deuterium";--e-global-typography-secondary-font-size:24px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-letter-spacing:-0.2px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:15px;--e-global-typography-text-font-weight:400;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:500;--e-global-typography-6ed476c-font-family:"Inter";--e-global-typography-6ed476c-font-size:18px;--e-global-typography-6ed476c-font-weight:600;--e-global-typography-9525bd0-font-family:"Inter";--e-global-typography-9525bd0-font-size:17px;--e-global-typography-9525bd0-font-weight:400;--e-global-typography-9525bd0-font-style:italic;--e-global-typography-cdaaf6a-font-family:"Inter";--e-global-typography-cdaaf6a-font-size:15px;--e-global-typography-cdaaf6a-font-weight:500;--e-global-typography-cdaaf6a-font-style:normal;--e-global-typography-0009af8-font-family:"Inter";--e-global-typography-0009af8-font-size:16px;--e-global-typography-0009af8-font-weight:600;--e-global-typography-0009af8-font-style:normal;--e-global-typography-0009af8-letter-spacing:0.5px;background-color:#FAFAFA;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Futura;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-17551 e-page-transition{background-color:#FFBC7D;}.elementor-kit-17551 p{margin-block-end:0px;}.elementor-kit-17551 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-cdaaf6a-font-family ), Futura;font-size:var( --e-global-typography-cdaaf6a-font-size );font-weight:var( --e-global-typography-cdaaf6a-font-weight );font-style:var( --e-global-typography-cdaaf6a-font-style );}.elementor-kit-17551 a:hover{color:var( --e-global-color-primary );font-family:"Inter", Futura;font-size:15px;font-weight:500;font-style:normal;}.elementor-kit-17551 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Futura;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17551 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Futura;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-17551 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-6ed476c-font-family ), Futura;font-size:var( --e-global-typography-6ed476c-font-size );font-weight:var( --e-global-typography-6ed476c-font-weight );}.elementor-kit-17551 h4{color:var( --e-global-color-text );font-family:var( --e-global-typography-9525bd0-font-family ), Futura;font-size:var( --e-global-typography-9525bd0-font-size );font-weight:var( --e-global-typography-9525bd0-font-weight );font-style:var( --e-global-typography-9525bd0-font-style );}.elementor-kit-17551 h5{color:var( --e-global-color-text );font-family:"Quiroh-Regular", Futura;font-size:18px;font-weight:600;font-style:normal;letter-spacing:0.5px;}.elementor-kit-17551 button,.elementor-kit-17551 input[type="button"],.elementor-kit-17551 input[type="submit"],.elementor-kit-17551 .elementor-button{font-family:var( --e-global-typography-0009af8-font-family ), Futura;font-size:var( --e-global-typography-0009af8-font-size );font-weight:var( --e-global-typography-0009af8-font-weight );font-style:var( --e-global-typography-0009af8-font-style );letter-spacing:var( --e-global-typography-0009af8-letter-spacing );color:var( --e-global-color-text );border-radius:50px 50px 50px 50px;}.e-con{--container-default-padding-top:15px;--container-default-padding-right:10px;--container-default-padding-bottom:15px;--container-default-padding-left:10px;}.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);}@media(max-width:1024px){.elementor-kit-17551{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:15px;--e-global-typography-6ed476c-font-size:18px;--e-global-typography-9525bd0-font-size:18px;--e-global-typography-cdaaf6a-font-size:15px;--e-global-typography-0009af8-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-17551 a{font-size:var( --e-global-typography-cdaaf6a-font-size );}.elementor-kit-17551 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17551 h2{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-17551 h3{font-size:var( --e-global-typography-6ed476c-font-size );}.elementor-kit-17551 h4{font-size:var( --e-global-typography-9525bd0-font-size );}.elementor-kit-17551 h5{font-size:14px;}.elementor-kit-17551 button,.elementor-kit-17551 input[type="button"],.elementor-kit-17551 input[type="submit"],.elementor-kit-17551 .elementor-button{font-size:var( --e-global-typography-0009af8-font-size );letter-spacing:var( --e-global-typography-0009af8-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}}@media(max-width:767px){.elementor-kit-17551{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:15px;--e-global-typography-6ed476c-font-size:20px;--e-global-typography-9525bd0-font-size:18px;--e-global-typography-cdaaf6a-font-size:15px;--e-global-typography-0009af8-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-17551 a{font-size:var( --e-global-typography-cdaaf6a-font-size );}.elementor-kit-17551 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17551 h2{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-17551 h3{font-size:var( --e-global-typography-6ed476c-font-size );}.elementor-kit-17551 h4{font-size:var( --e-global-typography-9525bd0-font-size );}.elementor-kit-17551 h5{font-size:14px;}.elementor-kit-17551 button,.elementor-kit-17551 input[type="button"],.elementor-kit-17551 input[type="submit"],.elementor-kit-17551 .elementor-button{font-size:var( --e-global-typography-0009af8-font-size );letter-spacing:var( --e-global-typography-0009af8-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Normaalit sisältölinkit */
.elementor-widget-text-editor a:hover{
    text-decoration: underline;
}
.wp-block-paragraph a:hover{
    text-decoration: underline;
}

.single-slide-carousel img {
  width: 100% !important;
  max-width: 100% !important;
  display: block;
}

.info-banner-wrapper.all-banners-hidden {
    display: none !important;
    margin:0px!important;
}

.js .info-nyt {
    visibility: hidden;
}

.info-banner-loop:has(.e-loop-nothing-found-message),
.hairio-banner-loop:has(.e-loop-nothing-found-message),
.info2-banner-loop:has(.e-loop-nothing-found-message) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}
/* =====================================================
   VAIN tekstisisällölle .wp-post-content -alueella
   ===================================================== */

.wp-post-content {
  line-height: 1.7;
}

/* Kappaleet ja listat */

.wp-post-content p,
.wp-post-content .wp-block-paragraph {
  line-height: 1.7;
  margin-top: 0;
  margin-bottom: 1.2em;
}

.wp-post-content li {
  line-height: 1.7;
  margin: 0; /* tärkeä reset */
}




/* Viimeinen kappale ilman turhaa alaväliä */
.wp-post-content p:last-child,
.wp-post-content .wp-block-paragraph:last-child {
  margin-bottom: 0;
}



/* Ensimmäinen otsikko ilman turhaa yläväliä */
.wp-post-content > h1:first-child,
.wp-post-content > h2:first-child,
.wp-post-content > h3:first-child,
.wp-post-content > .wp-block-heading:first-child {
  margin-top: 0;
}

/* Kun kappaleen, listan, taulukon jälkeen tulee otsikko */
.wp-post-content p + h1,
.wp-post-content p + h2,
.wp-post-content p + h3,
.wp-post-content .wp-block-paragraph + h1,
.wp-post-content .wp-block-paragraph + h2,
.wp-post-content .wp-block-paragraph + h3,
.wp-post-content p + .wp-block-heading,
.wp-post-content .wp-block-paragraph + .wp-block-heading,
.wp-post-content table + h1,
.wp-post-content table + h2,
.wp-post-content table + h3,
.wp-post-content .wp-block-list + h1,
.wp-post-content .wp-block-list + h2,
.wp-post-content .wp-block-list + h3,
.wp-post-content table + .wp-block-heading,
.wp-post-content .wp-block-llist + .wp-block-heading {
    margin-top: 1.9em;
}

/* Listojen spacing */
.wp-post-content ul,
.wp-post-content ol {
  margin-top: 0;
  margin-bottom: 1.7em;
  padding-left: 1.4em;
}

.wp-post-content li + li {
  margin-top: 0.2em;
}

/* Rivinvaihdot */
.wp-post-content br {
  line-height: inherit;
}




/* =========================
   Themed heading & link colors (content only, incl. Post Title + shortcodes)
   ========================= */


:root {
  --theme-accent: #e85c0d;
  --theme-accent-light: #ffdaa2;
  --theme-accent-extra: #ffde17;

  --theme-bg-image: url('/wp-content/uploads/Liukuvari-LRE-e1775727739665-1.png');
}

.theme-sahko {
  --theme-accent: #ed1556;
  --theme-accent-light: #fbc9c4;
  --theme-accent-extra: #ff6d9d;

  --theme-bg-image: url('/wp-content/uploads/Liukuvari-Sahko-e1776757915971.png');
}

.theme-vesi {
  --theme-accent: #00689e;
  --theme-accent-light: #b0dfdb;
  --theme-accent-extra: #4db7e5;

  --theme-bg-image: url('/wp-content/uploads/Liukuvari-Vesi-e1776757712825.png');
}

.theme-kaukolampo {
  --theme-accent: #00763a;
  --theme-accent-light: #b7da9b;
  --theme-accent-extra: #6dbb7f;

  --theme-bg-image: url('/wp-content/uploads/Liukuvari-Lampo-e1776757784800.png');
}


/* Kohdistus: vain Single/Page/Archive -sisältöalue, EI header/footer */
body.theme-sahko :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) :is(h1,h2),
body.theme-vesi  :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) :is(h1,h2),
body.theme-kaukolampo :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) :is(h1,h2){
  color: var(--theme-accent) !important;
}

/* Linkit samaan rajaukseen (tähän osuu myös shortcode, jos se renderöi <a>-tageja) */
body.theme-sahko :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a,
body.theme-vesi  :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a,
body.theme-kaukolampo :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a{
  color: var(--theme-accent) !important;
  text-decoration-color: color-mix(in srgb, var(--theme-accent) 55%, transparent) !important;
  text-underline-offset: 0.18em;
}

body.theme-sahko :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a:hover,
body.theme-vesi  :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a:hover,
body.theme-kaukolampo :is(.elementor-location-single, .elementor-location-archive, .elementor-location-page) a:hover{
  text-decoration-color: var(--theme-accent) !important;
}


/* Gradient-border säätö */
.gradient-border{
  --b: 2px;        /* borderin paksuus */
  --r: 25px;       /* radius */
  --bg: #fff;      /* sisusta */

  position: relative;
  border-radius: var(--r);
  background: var(--bg);
  z-index: 0;

  /* auttaa kulmien "tarkkuutta" joissain renderöinneissä */
  background-clip: padding-box;
}

/* normaalitilan border */
.gradient-border::before,
.gradient-border::after{
  content:"";
  position:absolute;
  inset:0;
  padding: var(--b);
  border-radius: var(--r);
  z-index:-1;
  pointer-events: none;

  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;

  transition: opacity .5s ease, transform .5s ease;
  transform-origin: center center;
}

/* default */
.gradient-border::before{
  background: linear-gradient(225deg,
    var(--theme-accent-extra) 0%,
    var(--theme-accent) 40%,
    var(--theme-accent-light) 100%
  )
;
  opacity: 1; transition: opacity 1s ease, transform 0.5s ease;
}

.gradient-border::after{
  background: linear-gradient(135deg,
    var(--theme-accent-extra) 0%,
    var(--theme-accent) 40%,
    var(--theme-accent-light) 100%
  );
  opacity: 0;transition: opacity 1s ease, transform 0.5s ease;
}

/* === Gutenberg-taulukot artikkeleissa === */

.wp-block-table {
  width: auto!important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.wp-block-table table {
  width: auto!important;
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
  border: 1px solid #d9d9d9;
  table-layout: auto;
}

.wp-block-table th,
.wp-block-table td {
  padding: 0.75rem 1rem;
  vertical-align: top;
  text-align: left;
  white-space: normal;         /* sallii rivittymisen */
  overflow-wrap: break-word;   /* pitkät sanat rivittyvät */
  word-break: normal;
  border: none;
}

.wp-block-table th {
  font-weight: 600;
  background-color: #f7f7f7;
}

.wp-block-table tbody tr:nth-child(even) {
  background-color: #fafafa;
}

.text-highlight{
  max-width: 620px;
  margin: 2rem auto;
  padding: 1rem 1.25rem 1rem 1.25rem;
  border-left: 4px solid var(--theme-accent);
  background: #f8f8f8;
  line-height: 1.7
}

/* Pitkät otsikot eivät puske yli mobiilissa */
.wp-post-content h1,
.wp-post-content h2,
.wp-post-content h3,
.wp-post-content .wp-block-heading {
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;

  overflow-wrap: break-word;
  word-break: normal;
}

/* Halutessa vielä siistimpi otsikkorivitys moderneihin selaimiin */
.wp-post-content h1,
.wp-post-content h2,
.wp-post-content h3,
.wp-post-content .wp-block-heading {
  text-wrap: balance;
}


@media (max-width: 767px) {
  .elementor-widget-theme-post-title .elementor-heading-title,
  .elementor-page-title .elementor-heading-title,
  h1.elementor-heading-title {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;

    overflow-wrap: break-word;
    word-break: normal;
    text-wrap: balance;
    min-width: 0;
  }
}



/* =========================
   Link Highlight
   ========================= */



p.link-highlight{
  position: relative;
  margin: 0;
  padding: 0;
  max-width: 620px;
}

/* Kevyet viivat ylös ja alas */

p.link-highlight::before,
p.link-highlight::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: #e9e9e9;
}

p.link-highlight::before{
  top: 0;
}

p.link-highlight::after{
  bottom: 0;
}

/* Varsinainen linkki */

p.link-highlight > a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  width: 100%;

  padding: 1.2rem 0;

  color: var(--theme-accent);
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.25;

  text-decoration: none !important;
  transform:translateX(0);

  transition:
    padding-left 0.2s ease,
    color 0.2s ease,
    transform 0.25s ease,
    color 0.25s ease

}

/* Nuoli oikealle */

p.link-highlight > a::after{
  content: "→";
  flex: 0 0 auto;
  margin-left: 2.5rem;

  color: var(--theme-accent);
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1;

  transition: transform 0.4s ease;
}

/* Hover */

p.link-highlight > a:hover,
p.link-highlight > a:focus-visible{
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.25;    
  transform: translateX(12px);
  outline: none;
  transition: transform 0.25s ease;
}

p.link-highlight > a:hover::after,
p.link-highlight > a:focus-visible::after{
  transform: translateX(10px);
  transition: transform 0.25s ease;
}

/* Peräkkäiset linkit */

p.link-highlight + p.link-highlight{
  margin-top: 0;
}

/* Mobiili */

@media (max-width: 767px){

  p.link-highlight > a{
    gap: 1rem;
    padding: 1rem 0;
    font-size: 1rem;
  }

  p.link-highlight > a::after{
    margin-left: 1rem;
    font-size: 0.9em;
  }
}

@media (min-width: 1140px) {
.full-width {
  width: 100%;
  max-width: none !important;

  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
}

.width-1140 {
  width: 100%;
  max-width: 1140px !important;

  margin-left: auto;
  margin-right: auto;
}

.tab-content,
.tab-content-2 {
    display: none;
    transition: 0.3s;
}

.tab-content.active,
.tab-content-2.active {
    display: flex;
    animation: fadeIn 0.3s ease;
}
/* =========================================
   ELEMENTOR EDITOR - TAB CONTENT NAKYVIIN
   ========================================= */

body.elementor-editor-active .tab-content,
body.elementor-editor-active .tab-content-2 {
    display: flex !important;

    /* Erotetaan sisältöalueet toisistaan editorissa */
    outline: 2px dashed #8b5cf6;
    outline-offset: 4px;

    margin-top: 12px;
    margin-bottom: 20px;

    /* Varmistetaan ettei aktiivisuus-animaatio häiritse editoria */
    animation: none !important;
}


@keyframes fadeIn {

    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

.tab-trigger,
.tab-trigger-2{
    position:relative;
    cursor:pointer;
}

.tab-trigger::after,
.tab-trigger-2::after{

    content:"";
    position:absolute;

    left:8.5%;
    width:83%;

    bottom:-10px;

    height:0;

    background:var(--theme-accent-light);

    border-bottom-left-radius:25px;
    border-bottom-right-radius:25px;

    transition:height .2s ease;

}

.tab-trigger.active::after,
.tab-trigger-2.active::after{
    height:10px;
}

.tab-trigger.active .elementor-icon-box-title,
.tab-trigger.active .elementor-icon-box-title a,
.tab-trigger.active .elementor-icon-box-title span,

.tab-trigger-2.active .elementor-icon-box-title,
.tab-trigger-2.active .elementor-icon-box-title a,
.tab-trigger-2.active .elementor-icon-box-title span{
    text-decoration: underline;
}
.tab-trigger.active .elementor-image-box-title,
.tab-trigger.active .elementor-image-box-title a,
.tab-trigger-2.active .elementor-image-box-title,
.tab-trigger-2.active .elementor-image-box-title a{
    text-decoration: underline;
}




.cta-submenu{
    position:absolute;
    left:0;
    top:100%;
    width:100%;
    background:#fff;

    opacity:0;
    visibility:hidden;

    transform:translateY(10px);
    transition:.25s;
    border:1px solid var(--theme-accent);
    border-top:none;
    border-radius:20px 20px 20px 20px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    overflow:hidden;
}

.cta-submenu a{
    display:block;
    padding:12px 20px;
    color:#353535;
    text-decoration:none;
}

.cta-submenu a:hover{
    background:var(--theme-accent-light);
}

.cta-submenu .e-con:not(:last-child){
    border-bottom:1px solid var(--theme-accent);
}
.cta-submenu .e-con{
    text-align:center;
    align-items:center;
    justify-content:center;
}
.cta-submenu .e-con:hover{
    background:var(--theme-accent-light);
    transition:.2s;
}
.cta-submenu .e-con:last-child:hover{
    border-bottom-left-radius:20px;
    border-bottom-right-radius:20px;
}
.tab-trigger-nav{
    position: relative;
    cursor: pointer;

    padding: 0.45rem 0 0.45rem 0;

    color: #353535;
    font-weight: 400;
    line-height: 1.2;

    transition:
        color 0.2s ease,
        padding-left 0.2s ease;
}

.tab-trigger-nav:hover{
    color: var(--theme-accent);
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

.tab-trigger-nav.active{
    color: #353535;
    font-weight: 400;
}

.tab-trigger-nav.active::after{
    content: "";
    position: absolute;

    left: 0;
    right: 0;
    bottom: -2px;

    height: 7px;
    background: var(--theme-accent);

    border-radius: 0 0 8px 8px;
}

.menu-kuvaus-parent > a {
    display: flex!important;
    flex-direction: column!important;
    align-items: flex-start!important;
}

.menu-kuvaus {
    font-size: 12px;
    font-weight: 400;
    color: #777;
    line-height: 1.25;
    transition: color 0.25s ease;
}
.menu-kuvaus-parent > a:hover .menu-kuvaus {
    color: #fff;
}

.cta-painike {
    padding: 0px;
}

/* Kortti */
.cta-painike .elementor-image-box-wrapper{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:24px;
    overflow:hidden;

    box-shadow:0 2px 8px rgba(0,0,0,.05);

    transition:all .25s ease;
    position:relative;
    height:100%;
}

.cta-painike:hover elementor-image-box-description {
    text-decoration-color: none!important;
}

/* Kuva */
.cta-painike .elementor-image-box-img{
    overflow:hidden;
    width:100%!important;
}

.cta-painike .elementor-image-box-img img{
    height:140px;
    object-fit:cover;

    transition:transform .4s ease;
}
/* Desktop only */
@media (min-width: 1024px) {
    .cta-painike {
        max-width:300px;
    }
    .cta-painike .elementor-image-box-title {
        font-size: 24px!important;
    }
}


/* Tablet only */
@media (max-width: 1024px) and (min-width: 768px) {
    .cta-painike {
        max-width:300px;
    }
    .cta-painike .elementor-image-box-title {
        font-size: 18px!important;
    }
}

@media (max-width: 767px){
    .cta-painike .elementor-image-box-img{
        display: none!important;
    }
    .cta-painike .elementor-image-box-content{
        padding-top: 20px!important;
    }
    .cta-painike .elementor-image-box-title{
        min-height:30px!important;
        font-size: 18px!important;
    }
}


/* Sisältöalue */
.cta-painike .elementor-image-box-content{
    padding:0px 20px 20px 20px;
    text-align:left;
}

/* Otsikko */
.cta-painike .elementor-image-box-title{
    margin-bottom:15px;
    line-height:1.2;
}

.cta-painike .elementor-image-box-title a,
.cta-painike .elementor-image-box-title{
    color:var(--theme-accent)!important;
    font-weight:700;
    min-height:60px;
}

.cta-painike:hover .elementor-image-box-title{
    text-decoration: underline;
}

/* Kuvaus */
.cta-painike .elementor-image-box-description{
    color:#353535;
    font-size:14px!important;
    line-height:1.5;
    max-width:87%;
    min-height:30px;

}

/* Oranssi nuoli */
.cta-painike .elementor-image-box-content::after{
    content:"➜";

    position:absolute;
    right:5px;
    bottom:10px;

    width:40px;
    height:40px;

    border-radius:50%;

    background:var(--theme-accent);
    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:20px;

    transition:all .25s ease;
}

/* Hover nuoli */
.cta-painike .elementor-image-box-wrapper:hover .elementor-image-box-content::after{
    transform:translateX(4px);
    background:var(--theme-accent);
}

/* CTA-triggerit näyttävät alasnuolen */
.cta-painike.tab-trigger .elementor-image-box-content::after,
.cta-painike.tab-trigger-2 .elementor-image-box-content::after{
    transform: rotate(90deg);
}

/* Hover myös alaspäin */
.cta-painike.tab-trigger .elementor-image-box-wrapper:hover .elementor-image-box-content::after,
.cta-painike.tab-trigger-2 .elementor-image-box-wrapper:hover .elementor-image-box-content::after{
    transform: rotate(90deg) translateX(4px);
}

/* Aktiivinen = X */
.cta-painike.tab-trigger.active .elementor-image-box-content::after,
.cta-painike.tab-trigger-2.active .elementor-image-box-content::after{
    content: "✕";
}


/* ==================================================
   YHTEINEN POHJA cta-button
   ================================================== */

.cta-button-gr,
.cta-button-w{
    position:relative;
    min-height:100px;
    padding:0 !important;
    border-radius:28px;
}


/* IconBox sisältö */

.cta-button-gr .elementor-icon-box-wrapper,
.cta-button-w .elementor-icon-box-wrapper{
    display:flex;
    flex-direction:row !important;
    align-items:center;
    justify-content:center;
    gap:12px;

    width:100%;
    min-height:100px;
    padding:15px;
}

/* Sisältö pystyyn: otsikko ylös, kuvaus alle */
.cta-button-gr .elementor-icon-box-content,
.cta-button-w .elementor-icon-box-content{
    flex:1;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;
    height:100%;
}

/* Kuvausteksti */
.cta-button-gr .elementor-icon-box-description,
.cta-button-w .elementor-icon-box-description{
    padding-top:12px;
    color:inherit;
    text-align:center;
}

/* Gradient-versiossa valkoinen teksti */
.cta-button-gr .elementor-icon-box-description{
    color:#fff !important;
}

/* Valkoisessa versiossa sama sävy kuin otsikossa */
.cta-button-w .elementor-icon-box-description{
    color:var(--theme-accent) !important;
}



/* Ikoni */

.cta-button-gr .elementor-icon-box-icon,
.cta-button-w .elementor-icon-box-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 ;
    align-self:center;
}

.cta-button-gr .elementor-icon svg,
.cta-button-w .elementor-icon svg{
    width:48px;
    height:48px;
    stroke-width:.2;
}

/* Otsikko */

.cta-button-gr .elementor-icon-box-title,
.cta-button-w .elementor-icon-box-title{
    display:flex;
    align-items:center;
    justify-content:center;
}


.cta-button-gr .elementor-icon-box-title,
.cta-button-gr .elementor-icon-box-title a,
.cta-button-w .elementor-icon-box-title,
.cta-button-w .elementor-icon-box-title a{
    margin:0;
    line-height:1.15;
    display:block;

    font-family:deuterium;
    font-size:24px!important;

    text-decoration:none;
}

/* Tablet + mobiili */

@media (max-width:1024px){
    
    .cta-button-gr .elementor-icon-box-title,
    .cta-button-gr .elementor-icon-box-title a,
    .cta-button-w .elementor-icon-box-title,
    .cta-button-w .elementor-icon-box-title a{
        font-size:18px!important;
    }

    .cta-button-gr .elementor-icon svg,
    .cta-button-w .elementor-icon svg{
        width:0px;
        height:0px;
    }
}

@media (max-width:767px){

    .cta-button-gr,
    .cta-button-w{
        min-height:60px;
        border-radius:28px;
    }

    .cta-button-gr .elementor-icon-box-wrapper,
    .cta-button-w .elementor-icon-box-wrapper{
        min-height:60px;
        padding:10px 15px;
        gap:10px;
    }

    .cta-button-gr .elementor-icon svg,
    .cta-button-w .elementor-icon svg{
        width:24px;
        height:24px; 
        margin-left:10px;
    }
}


/* ==================================================
   GRADIENT-VERSIO
   ================================================== */

.cta-button-gr::before{
    content:"";
    position:absolute;
    inset:0;

    background-image:var(--theme-bg-image);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    border-radius: 28px;
}

.cta-button-gr .elementor-icon-box-title,
.cta-button-gr .elementor-icon-box-title a{
    color:#fff !important;
}

.cta-button-gr .elementor-icon svg{
    fill:#fff;
    stroke:#fff;
}

.cta-button-gr:hover .elementor-icon-box-title,
.cta-button-gr:hover .elementor-icon-box-title a{
    text-decoration:underline;
    text-decoration-color:#fff;
    text-decoration-thickness:2px;
    text-underline-offset:3px;
}

/* ==================================================
   VALKOINEN VERSIO
   ================================================== */

.cta-button-w{
    background:
        linear-gradient(#fff,#fff) padding-box,
        linear-gradient(
            135deg,
            var(--theme-accent) 0%,
            var(--theme-accent-light) 50%,
            var(--theme-accent-extra) 100%
        ) border-box;

    border:2px solid transparent;
}

.cta-button-w .elementor-icon svg{
    fill:var(--theme-accent);
    stroke:var(--theme-accent);
}

.cta-button-w:hover .elementor-icon-box-title,
.cta-button-w:hover .elementor-icon-box-title a{
    text-decoration:underline;
    text-decoration-color:var(--theme-accent);
    text-decoration-thickness:2px;
    text-underline-offset:3px;
}

.cta-button-w .elementor-icon-box-title *{
    color:var(--theme-accent) !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Deuterium';
	font-display: auto;
	src: url('https://lrewordpre7af4c0c1a7.blob.core.windows.net/bloblrewordpre7af4c0c1a7/wp-content/uploads/Deuterium-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Quiroh-Regular';
	font-display: auto;
	src: url('https://lrewordpre7af4c0c1a7.blob.core.windows.net/bloblrewordpre7af4c0c1a7/wp-content/uploads/Hashtag-Type-Quiroh-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */