.elementor-kit-5{--e-global-color-primary:#22282B;--e-global-color-secondary:#D7401D;--e-global-color-text:#4B5257;--e-global-color-accent:#1DA5CF;--e-global-color-tumma:#22282B;--e-global-color-vaalea:#F4F6F7;--e-global-typography-primary-font-family:"Barlow";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Barlow";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Barlow";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Barlow";--e-global-typography-accent-font-weight:600;color:#4B5257;font-family:"Barlow", Sans-serif;font-size:17px;font-weight:400;line-height:1.72em;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#B8360F;}.elementor-kit-5 a:hover{color:#D7401D;}.elementor-kit-5 h1{font-family:"Barlow", Sans-serif;font-weight:700;}.elementor-kit-5 h2{font-family:"Barlow", Sans-serif;font-weight:700;}.elementor-kit-5 h3{font-family:"Barlow", Sans-serif;font-weight:700;}.elementor-kit-5 h4{font-family:"Barlow", Sans-serif;font-weight:700;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ---------- perusta ---------- */
.elementor-widget-html{margin-bottom:0 !important}
body{-webkit-font-smoothing:antialiased}
.e-con>.elementor-widget-text-editor{max-width:66ch !important}
.ds-narrow.elementor-widget-text-editor{max-width:62ch !important}
.ds-center .elementor-widget-container,.ds-center p{text-align:center}
.ds-legal.elementor-widget-text-editor{max-width:74ch !important}

/* ---------- otsikot ---------- */
.elementor-element.ds-h1 .elementor-heading-title{font-size:52px;line-height:1.12;color:#fff;
  letter-spacing:-.015em;font-weight:700;max-width:16ch}
.elementor-element.ds-h1--dark .elementor-heading-title{color:#22282B}
.elementor-element.ds-h2 .elementor-heading-title{font-size:34px;line-height:1.2;color:#22282B;
  letter-spacing:-.01em;font-weight:700;margin-bottom:18px;max-width:22ch}
.elementor-element.ds-h2--light .elementor-heading-title{color:#fff}
.elementor-element.ds-h2--center .elementor-heading-title{text-align:center;max-width:none}
.elementor-element.ds-h3 .elementor-heading-title{font-size:21px;line-height:1.3;color:#22282B;
  font-weight:700;margin-bottom:8px}
.elementor-element.ds-card-title .elementor-heading-title{min-height:2.6em}
.elementor-element.ds-h4 .elementor-heading-title{font-size:18px;line-height:1.35;color:#22282B;
  font-weight:700;margin-bottom:6px}

/* ---------- leipäteksti ---------- */
.ds-body p,.ds-lead p,.ds-legal p,.ds-legal li{color:#4B5257}
.ds-body p{font-size:17px;line-height:1.72;margin:0 0 16px}
.ds-body p:last-child{margin-bottom:0}
.ds-body .nb,.ds-lead .nb{white-space:nowrap}
a.ds-tel--sm{font-size:16.5px}
.ds-body--sm p{font-size:15.5px}
.ds-body--light p,.ds-body--light li{color:#D6DDE1}
.ds-lead p{font-size:20px;line-height:1.6;margin:0 0 28px;max-width:52ch}
.ds-lead--light p{color:#E6EDF1}
.ds-body a,.ds-lead a{color:#B8360F;text-decoration:underline;text-underline-offset:2px}
.ds-body a:hover{color:#D7401D}
.ds-legal h2{font-size:22px;line-height:1.3;color:#22282B;font-weight:700;margin:34px 0 10px}
.ds-legal ul{margin:0 0 16px 20px;color:#4B5257;line-height:1.7}
.ds-ref-list{list-style:none;margin:0;padding:0}
.ds-ref-list li{position:relative;padding:7px 0 7px 22px;border-bottom:1px solid #E6EAEC;
  font-size:16.5px;color:#4B5257}
.ds-ref-list li:before{content:"";position:absolute;left:0;top:16px;width:8px;height:8px;
  background:#D7401D}
.ds-ref-list li:last-child{border-bottom:0}

/* ---------- napit ---------- */
.elementor-element.ds-btn .elementor-button{border-radius:2px;font-weight:600;font-size:16px;
  letter-spacing:.01em;padding:15px 30px;transition:background-color .18s,color .18s,border-color .18s}
.elementor-element.ds-btn-primary .elementor-button{background-color:#D7401D !important;color:#fff !important;
  border:2px solid #D7401D}
.elementor-element.ds-btn-primary .elementor-button:hover{background-color:#B8360F !important;
  border-color:#B8360F}
.elementor-element.ds-btn-outline .elementor-button{background-color:transparent !important;
  color:#fff !important;border:2px solid rgba(255,255,255,.55)}
.elementor-element.ds-btn-outline .elementor-button:hover{border-color:#fff;
  background-color:rgba(255,255,255,.1) !important}
.elementor-element.ds-btn-dark .elementor-button{background-color:#22282B !important;color:#fff !important;
  border:2px solid #22282B}
.elementor-element.ds-btn-dark .elementor-button:hover{background-color:#D7401D !important;
  border-color:#D7401D}
.elementor-element.ds-link-arrow .elementor-button{background:none !important;padding:0;
  color:#B8360F !important;font-weight:600;font-size:16px}
.elementor-element.ds-link-arrow .elementor-button:hover{color:#D7401D !important}
.elementor-element.ds-link-arrow{margin-top:auto !important;padding-top:14px}

/* ---------- header ---------- */
.ds-topbar-text p{margin:0;font-size:14px;color:#C7D0D5;text-align:right}
.ds-topbar-text a{color:#fff;text-decoration:none}
.ds-topbar-text a:hover{color:#F0866B}
.ds-sep{display:inline-block;width:1px;height:12px;background:#3C464B;margin:0 16px;
  vertical-align:middle}
.elementor-location-header{position:relative;z-index:99;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.elementor-location-header .elementor-widget-nav-menu{position:static}
.ds-logo img{width:190px !important;max-width:190px !important;height:auto}
.elementor-element.ds-nav .elementor-nav-menu{flex-wrap:nowrap !important;justify-content:flex-end}
.ds-nav .elementor-nav-menu .elementor-item{color:#22282B;font-size:16px;font-weight:600;
  padding:10px 14px;white-space:nowrap}
.ds-nav .elementor-nav-menu--dropdown .elementor-item{white-space:normal}
.elementor-element.ds-nav .elementor-nav-menu--dropdown{flex-wrap:wrap !important}
.ds-nav .elementor-nav-menu .elementor-item:hover,
.ds-nav .elementor-nav-menu .elementor-item.elementor-item-active{color:#D7401D}
.ds-nav .elementor-nav-menu--dropdown .elementor-item{color:#22282B}
.elementor-element.ds-nav .elementor-menu-toggle{color:#22282B;background:none;margin-left:auto}
.ds-nav .elementor-menu-toggle svg{fill:#22282B !important}
.elementor-element.ds-nav .elementor-nav-menu__container.elementor-nav-menu--dropdown{
  position:absolute !important;top:100% !important;left:0 !important;right:0 !important;
  width:100% !important;max-width:none !important;background:#fff;
  box-shadow:0 14px 26px rgba(0,0,0,.14);border-top:1px solid #E6EAEC}
.elementor-element.ds-nav .elementor-nav-menu--dropdown a{padding:15px 20px !important;
  color:#22282B !important;font-size:17px}
.elementor-element.ds-nav .elementor-nav-menu--dropdown a.elementor-item-active{color:#D7401D !important;
  background:#F4F6F7 !important}
.elementor-element.ds-nav .elementor-nav-menu--dropdown a:hover{background:#F4F6F7 !important;
  color:#D7401D !important}
.elementor-element.ds-nav .elementor-nav-menu--dropdown .sub-menu a{padding-left:36px !important;
  font-size:16px}

/* ---------- kuvat ---------- */
.ds-img img{width:100%;height:auto;display:block}
.ds-tile img{width:100%;height:230px;object-fit:cover;display:block}
.ds-img--tall img{aspect-ratio:3/4;object-fit:cover}
.ds-cert img{max-height:132px;width:auto;margin:0 auto;display:block}
.ds-cert--left img{margin:0}

/* ---------- vaiheet ---------- */
.elementor-element.ds-step-num .elementor-heading-title{font-size:15px;font-weight:700;color:#D7401D;
  letter-spacing:.12em;margin-bottom:10px;padding-bottom:10px;border-bottom:2px solid #D7401D;
  display:inline-block;min-width:36px}

/* ---------- ikonilista ---------- */
.elementor-element.ds-list .elementor-icon-list-item{margin-bottom:15px;align-items:flex-start}
.elementor-element.ds-list .elementor-icon-list-icon{color:#D7401D !important;padding-top:4px;
  width:18px;flex:0 0 18px}
.elementor-element.ds-list .elementor-icon-list-icon svg{width:15px;height:15px;fill:#D7401D}
.elementor-element.ds-list .elementor-icon-list-text{color:#4B5257 !important;font-size:16.5px;
  line-height:1.6;padding-left:11px}

/* ---------- UKK ---------- */
.ds-faq{border-top:1px solid #E1E6E9;max-width:860px}
.ds-faq__item{border-bottom:1px solid #E1E6E9}
.ds-faq__item summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:20px;padding:20px 0}
.ds-faq__item summary::-webkit-details-marker{display:none}
.ds-faq__item summary h3{font-size:18.5px;line-height:1.4;color:#22282B;font-weight:600;margin:0}
.ds-faq__sign{position:relative;flex:0 0 18px;width:18px;height:18px}
.ds-faq__sign:before,.ds-faq__sign:after{content:"";position:absolute;background:#D7401D;
  transition:transform .2s}
.ds-faq__sign:before{top:8px;left:0;width:18px;height:2px}
.ds-faq__sign:after{top:0;left:8px;width:2px;height:18px}
.ds-faq__item[open] .ds-faq__sign:after{transform:scaleY(0)}
.ds-faq__item[open] summary h3{color:#D7401D}
.ds-faq__a{padding:0 0 22px}
.ds-faq__a p{margin:0;color:#4B5257;font-size:16.5px;line-height:1.72;max-width:72ch}

/* ---------- lomake ---------- */
.ds-form .elementor-field-group>label{font-size:14.5px;font-weight:600;color:#22282B;
  margin-bottom:6px}
.ds-form .elementor-field-textual{border:1px solid #CBD3D8;border-radius:2px;padding:13px 14px;
  font-size:16px;color:#22282B;background:#fff}
.ds-form .elementor-field-textual:focus{border-color:#D7401D;outline:none;
  box-shadow:0 0 0 3px rgba(215,64,29,.14)}
.ds-form .elementor-button[type=submit]{background-color:#D7401D !important;color:#fff !important;
  border:2px solid #D7401D;border-radius:2px;font-weight:600;font-size:16px;padding:15px 30px}
.ds-form .elementor-button[type=submit]:hover{background-color:#B8360F !important;
  border-color:#B8360F !important}
.ds-form .elementor-message{font-size:16px}
.ds-form .elementor-message.elementor-message-success{color:#1E6B3A}

/* ---------- yhteystiedot ---------- */
.ds-contact-row{padding-bottom:16px;margin-bottom:16px !important;border-bottom:1px solid #E6EAEC}
.ds-contact-row:last-child{border-bottom:0}
.ds-contact-row strong{color:#22282B;font-size:14px;letter-spacing:.06em;text-transform:uppercase}
a.ds-tel{font-size:20px;font-weight:600;text-decoration:none;color:#B8360F}
a.ds-tel:hover{text-decoration:underline}
.ds-map{width:100%}
.ds-map__frame{display:block;width:100%;height:430px;border:0;filter:grayscale(.2)}
@media(max-width:767px){.ds-map__frame{height:320px}}

/* ---------- footer ---------- */
footer.elementor-location-footer .elementor-element.ds-foot-title .elementor-heading-title{
  font-size:16px;color:#fff;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:16px}
footer.elementor-location-footer .ds-foot-text p{color:#B9C3C9;font-size:15.5px;line-height:1.7;
  margin:0 0 14px}
footer.elementor-location-footer .ds-foot-text a{color:#fff;text-decoration:none}
footer.elementor-location-footer .ds-foot-text a:hover{color:#F0866B;text-decoration:underline}
footer.elementor-location-footer .ds-foot-text strong{color:#fff}
.ds-foot-links{list-style:none;margin:0;padding:0}
.ds-foot-links li{margin-bottom:9px}
.ds-social .elementor-social-icon{background-color:rgba(255,255,255,.09);width:38px;height:38px;
  border-radius:2px}
.ds-social .elementor-social-icon:hover{background-color:#D7401D}
.ds-foot-bottom-text p{margin:0;color:#8C979D;font-size:14px}
.ds-cookiebtn .elementor-widget-container,.ds-cookiebtn{text-align:right}
.ds-cookiebtn button,.ds-cookiebtn a{background:none !important;border:0 !important;color:#B9C3C9 !important;
  font-size:14px !important;padding:0 !important;text-decoration:underline;cursor:pointer;
  font-family:inherit}
.ds-cookiebtn button:hover,.ds-cookiebtn a:hover{color:#fff !important}

/* ---------- evästetaulukko ---------- */
.dsh-cookie-list__table{width:100%;table-layout:fixed}
.dsh-cookie-list__table th,.dsh-cookie-list__table td{word-break:break-word;overflow-wrap:anywhere}

/* ---------- responsiivinen ---------- */
@media(max-width:1024px){
  .elementor-location-header .elementor-widget-button{display:none}
  header.elementor-location-header .e-con,
  header.elementor-location-header .e-con-inner{position:static !important}
  .elementor-element.ds-h1 .elementor-heading-title{font-size:40px;max-width:none}
  .elementor-element.ds-h2 .elementor-heading-title{font-size:29px;max-width:none}
  .ds-logo img{width:160px !important;max-width:160px !important}
  .ds-nav .elementor-nav-menu .elementor-item{padding:10px 9px;font-size:15px}
}
@media(max-width:767px){
  .elementor-element.ds-card-title .elementor-heading-title{min-height:0}
  .elementor-element.ds-h1 .elementor-heading-title{font-size:31px}
  .elementor-element.ds-h2 .elementor-heading-title{font-size:25px}
  .ds-lead p{font-size:17.5px}
  .ds-topbar-text p{font-size:12.5px;text-align:center}
  .ds-logo img{width:150px !important;max-width:150px !important}
  .ds-cookiebtn .elementor-widget-container,.ds-cookiebtn{text-align:left}
  .ds-foot-bottom-text p{text-align:left}
  .ds-sep{margin:0 9px}
  .elementor-location-header .elementor-widget-button{display:none}
  .ds-tile img{height:200px}
  .ds-faq__item summary h3{font-size:17px}
  .ds-form .elementor-field-group{width:100% !important}
}/* End custom CSS */