"subhero"subhero"subhero"subhero"subhero"subhero/* gabarito-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gabarito';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/gabarito-v2-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gabarito-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gabarito';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/gabarito-v2-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gabarito-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gabarito';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/gabarito-v2-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* gabarito-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Gabarito';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/gabarito-v2-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


:root {
   --primary-color: #993e52;
   --secondary-color: #993e52;
   --base-font-size: min(max(1.05rem, 1.05vw), 22px);
   --base-text-color: #000;
   --base-line-height: 160%;
   --google-font: 'Gabarito', sans-serif;
   --google-heading-font:  'Gabarito', sans-serif;
   --navilink-font-size: min(max(0.8rem, 1.125vw), 18px);
   --navilink-color: #fff;
   --navilink-font-weight: 700;
   --navilink-padding: 5px 25px;
   --navilink-selected-bg: #993e52;
   --navilink-selected-color: #fff;
   --heading-size-1: min(max(1.6rem, 2.9vw), 2.36rem);
   --heading-size-2: min(max(1.4rem, 2.1vw), 2rem);
   --heading-size-3: min(max(1.4rem, 2vw), 1.9rem);
   --heading-size-4: min(max(1.2rem, 1.7vw), 1.7rem);
   --heading-size-5: min(max(1.1rem, 1.5vw), 1.375rem);
   --heading-size-6: min(max(1.4rem, 1.5vw), 1.375rem);
   --grid-gap: 2em 3em;
   --button-background: #993e52;
   --button-text-color: #fff;
   --button-font-size: min(max(1rem, 1.05vw), 22px);
   --button-font-weight: 500;
   --button-padding: 8px 40px;
   --max-input-width: 450px;   
   --max-button-width: max-content;   
   --img-gallery-rows: repeat(auto-fit, minmax(200px, 1fr));
   --img-gallery-img-size: 300px;
   --mobilemenu-container-height: 63px;
   --mobilemenu-open-close-color: #fff;
   --mobilemenu-menutext-color: #fff;
   --mobilemenu-button-background: #fff;
   --mobilemenu-link-color: #fff;
   --mobilemenu-link-background: #db6b93;
   --mobilemenu-expand-button: #fff;
   --mobilemenu-submenu-background: #cc5c84;
   --padding-s: min(max(20px, 1vw), 20px);
   --padding-m: min(max(30px, 2vw), 40px);
   --padding-xl: min(max(40px, 3vw), 60px);
   --padding-xxl: min(max(20px, 10vw), 200px);
 }
body, html, p {margin: 0;padding: 0;font-family: var(--google-font);color: var(--base-text-color);font-size: var(--base-font-size);line-height: var(--base-line-height)}  img {max-width: 100%;height: auto;display: block;}header.content-col { position: absolute;z-index: 2;}a {color: var(--primary-color);text-decoration: none}a:hover {text-decoration: underline}h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a, h6, h6 a {font-family: var(--google-heading-font);margin: 0;padding: 0;line-height: 110%;color: var(--primary-color); font-weight:800;}h1, h1 a {font-size: var(--heading-size-1);}h2, h2 a {font-size: var(--heading-size-2);}h3, h3 a {font-size: var(--heading-size-3);font-weight:400;}h4, h4 a {font-size: var(--heading-size-4);font-weight:500}h5, h5 a {font-size: var(--heading-size-5);color:#3e3e3e}h6, h6 a {font-size: var(--heading-size-6);font-weight:500}picture {width: 100%}section, article, .center-col, .content-col{box-sizing:border-box;}table, td, tr {border-collapse: unset !important}@media screen and (max-width:1024px) {table, td, tr {height: auto !important;max-width: 100%}}@media screen and (max-width:480px) {body {line-height: calc(1rem + 1.2vw)}}@media screen and (max-width:375px) {h1, h2, h3, h4, h5, h6 {word-wrap: anywhere}}

/* Wrappers */
.content-col, .center-col {width: 100%;clear: both;position: relative;}.center-col {width: min(max(60vw, 1600px), 90%);margin: 0 auto}.center-col iframe { max-width: 100%;margin: 0 auto}.narrow-col{max-width:1200px;}.erikoiskuva, .kuva, .kuva2 {box-sizing:border-box;border: 0;outline: 0;height: auto;margin: 0;cursor: pointer; max-width:100%;}

/* Grids */
.autogrid,.dgrid-2-cols, .dgrid-3-cols, .dgrid-4-cols, .dgrid-s-m-s-cols, .dgrid-s-xl-cols, .dgrid-xl-s-cols, .dgrid-m-l-cols, .dgrid-l-m-cols {display: grid;grid-gap: var(--grid-gap);clear: both;position: relative;} .dgrid-s-m-s-cols {grid-template-columns: 1fr 2fr 1fr}.dgrid-s-xl-cols {grid-template-columns: 1fr 3fr} .dgrid-xl-s-cols {grid-template-columns: 3fr 1fr}.dgrid-m-l-cols {grid-template-columns: 1fr 2fr}.dgrid-l-m-cols {grid-template-columns: 2fr 1fr}.autogrid, .dgrid-3-cols{grid-template-columns:repeat(auto-fit, minmax(270px,1fr))}.dgrid-2-cols {grid-template-columns:repeat(2,1fr)}.nogap {grid-gap: 2em 0;}.dgrid-4-cols{grid-template-columns:repeat(2,1fr);}@media screen and (max-width:1024px) {.dgrid-m-l-cols, .dgrid-l-m-cols, .dgrid-s-m-s-cols, .dgrid-s-xl-cols, .dgrid-xl-s-cols {grid-template-columns: 1fr}}@media screen and (max-width:768px) {.dgrid-2-cols, .dgrid-4-cols{grid-template-columns:1fr;}} @media screen and (max-width:480px) {.autogrid, .dgrid-3-cols {grid-template-columns:repeat(auto-fit, minmax(220px,1fr))}.dgrid-2-cols{grid-template-columns:1fr}}

/* Navigation */

#main-navi, #top-navi, #footernavi {margin: 0 auto;padding: 0;list-style: none;z-index: 2;position: relative;flex-direction: row;justify-content:center;}#main-nav {border:1px solid #fff;border-radius:100px;width: 90%;margin: 0 auto;}#main-navi {padding:10px;}#top-navi {justify-content: flex-end} .mainnavi-link, .topnavi-link, .footerlink {padding: var(--navilink-padding);font-size: var(--navilink-font-size);font-weight: var(--navilink-font-weight);text-decoration: none;text-transform:uppercase;color: var(--navilink-color);display: block;}.topnavi-link{color:#919191}.mainnavi-link:hover, .topnavi-link:hover, .footerlink:hover {color: #c6c6c6;}#link-sel-1-3, #link-sel-2-4, #link-sel-3-5, #link-sel-4-6, #link-sel-5-7, #link-sel-6-8 {border-radius:60px;color: var(--navilink-selected-color);background: var(--navilink-selected-bg);text-decoration: none}#logoimg {max-width: 50%;margin: 0 auto;float: none;display: block;height: auto;padding: 40px 0;}#sidenavi ul {background: var(--primary-color);padding: 10%;margin: 0;list-style: none;}
@media screen and (max-width:1660px) {#main-nav {width: 100%;}}
@media screen and (max-width:1280px) {#main-nav a{padding:5px 15px}}

/* General classes, heroimg, banners */
#main-heroimg {width: 100%;max-height: 1014px; object-fit:cover;min-height:700px}
#subhero #main-heroimg {max-height:638px; min-height:unset}
#hero-content {text-align: right;}
#subhero #herotext,#subhero #herotext h1{text-align: center; color:#fff}
#herotext {bottom:10%}
#herotext h1,#herotext h3,#herotext p {color:#fff} 
#subpage-content {background:#fce5ed url(../img/header/alasivu-bg.jpg) center top no-repeat; background-size:100%}}
.heroimg {position: relative;}
.abs-element {position: absolute;z-index: 200;max-width: 100%;flex-direction: column;display: flex;width: 80%;} 
.dflex {display: flex;flex-wrap: wrap;flex-direction: column;} 
.dflex-row {display: flex;flex-wrap: wrap;flex-direction: row;} 
.center-elements {align-items: center;justify-content: center}
.fwimg {width:100%}
.white-p {color: #fff}
.shadow {text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);}
.headerbox {background: var(--primary-color);color: #fff;padding: 5px 10%;text-transform: uppercase;display: inline-block;margin-bottom:20px;}
.whitebg, .burgundybg,.lightbrownbg,.brownbg{height:100% !important}
.whitebg{background:#fff}
.burgundybg{background:#993e52}
.lightbrownbg{background:#efdbd0}
.brownbg {background:#bf8e7c; position:relative;}
#therapy-endorse,#service-endorse {grid-gap:0}
#therapy-endorse img,#service-endorse img{margin:0 auto;}
#levollisuus-introduction{background:url(../img/header/palvelut-bg.jpg) center center no-repeat; background-size:cover}
#therapist-introduction {max-width: 50%;bottom: 5%;}
#therapist-introduction h2,#therapist-introduction h3,#therapist-introduction h4,#therapist-introduction h5,#therapist-introduction h6,#therapist-introduction p{text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);}
footer{background:url(../img/header/footer-bg.jpg) center center no-repeat; background-size:cover}
#therapy-points .dgrid-2-cols {align-items:center;}
#service-table,#service-table tbody,#service-table tr {width:100% !important; height:auto !important}
#service-table td {width:50% !important}
#some-wrapper {padding-top:10px}
#some {display:flex;}
#some img {min-width: 30px;min-height: 30px; height:30px; width:30px;margin: 0 5px;}
#footerlogo-col{background:#fff;width:290px; height:290px; border-radius:100%; display:flex; flex-direction: column; justify-content: center; align-items: center;margin: 0 auto;}
#ftr-footerlogo img{max-width:70%}

@media screen and (max-width:1660px) {#footerlogo-col{width:220px; height:220px;}}
@media screen and (max-width:1280px) {#footerlogo-col{width:180px; height:180px;}#therapist-introduction {max-width: 75%;}}
@media screen and (max-width:1024px) {#herotext {padding-top:63px}}
@media screen and (max-width:768px) {#hero-content {text-align: left;}}
@media screen and (max-width:575px) {#service-table tr {display:flex;flex-direction:column;}#service-table td {width:100% !important}}
@media screen and (max-width:575px) {#therapist-introduction{order: 2;position: relative;bottom: 0;padding-top: 1em;  max-width: 100%;}}

/* Mobile tags*/
#mobilemenu-container{height:var(--mobilemenu-container-height);position: relative;right: 0;top: 0;z-index: 2000;width: 100%;position: absolute}
#mobile-logo {position: absolute;top: 0;left: 0px;z-index: 50000}
#mobilelogo-img { max-width: 120px;height: auto;padding: 12px 0px 0 1em}
@media screen and (max-width:1024px) {#main-nav, #logo, footer nav, footer ul, #sidenavi {display: none}}

/* Paddings */
.cpadding-s{padding:var(--padding-s)}.cpadding-m{padding:var(--padding-m)}.cpadding-xl{padding:var(--padding-xl)}.cpadding-xxl{padding:var(--padding-xxl)}.cpadding-tb-s{padding:var(--padding-s) 0}.cpadding-tb-m{padding:var(--padding-m) 0}.cpadding-tb-xl{padding:var(--padding-xl) 0}.cpadding-tb-xxl{padding:var(--padding-xxl) 0}.cpadding-t-s{padding-top:var(--padding-s)}.cpadding-t-m{padding-top:var(--padding-m)}.cpadding-t-xl{padding-top:var(--padding-xl)}.cpadding-t-xxl{padding-top:var(--padding-xxl)}.cpadding-b-s{padding-bottom:var(--padding-s)}.cpadding-b-m{padding-bottom:var(--padding-m)}.cpadding-b-xl{padding-bottom:var(--padding-xl)}.cpadding-b-xxl{padding-bottom:var(--padding-xxl)}.cpadding-rl-s{padding:0 var(--padding-s)}.cpadding-rl-m{padding:0 var(--padding-m)}.cpadding-rl-xl{padding:0 var(--padding-xl)}.cpadding-rl-xxl{padding:0 var(--padding-xxl)}

/* Webio cols classes */
.col-3,.col-full,.col-left,.col-right{width:100%;float:none; margin:0}.col-full, .colpadding{clear:both;margin-bottom:20px;}.center-col .colpadding:last-of-type, .content-col .colpadding:last-of-type {display: none;}

/* Webio content classes */
.webiolinkkipainike, .lomakenappi_submit, .takaisinuutisiin {box-sizing: border-box;border-radius:60px;cursor: pointer;margin-top: 20px;display: inline-block;text-align: center;font-size: var(--button-font-size);padding: var(--button-padding);background: var(--button-background);color: var(--button-text-color);font-weight: var(--button-font-weight);width: auto;max-width: var(--max-button-width);text-transform: uppercase}.webiolinkkipainike:hover,.takaisinuutisiin:hover { transition: all .3s ease 0s;-webkit-filter: brightness(110%);filter: brightness(110%);text-decoration: none}.tapahtumat, .tapahtumakalenteri_otsikko, .tapahtumakalenteri_valiotsikko, .uutis_otsikko.tapahtumakalenteri_valiotsikko, .uutis_otsikko, .nostettumoduli, .nostettumoduli a, a.nostouutis_otsikko {color: var(--primary-color);font-size: 1.2rem;display: block;}.acc-news-wrapper .uutis_otsikko{font-family: var(--google-heading-font);letter-spacing: 3px;margin: 0;line-height: 120%;font-size:0.9rem; padding: 15px 20px 15px 20px;}
details{position:relative; display:flex; justify-content:center; align-items:center;margin-top:20px;}
details:after,details[open]:after{position:absolute; right:20px; top: 15px;font-weight: 700;pointer-events:none}
details:after{content:"›"; transform:rotate(90deg)}details[open]:after{content:"›"; transform:rotate(-90deg)}.valikkolinkki, .valikkolinkki-sel, .valikkomodulilinkki, .valikkomodulilinkki-sel {text-decoration: none;color: #fff;padding: 5px 0;display: block;}@media screen and (max-width:480px) {.webiolinkkipainike, .lomakenappi_submit, .takaisinuutisiin {padding: 10px 30px; max-width:100%}}
.acc-news-wrapper p {font-family: var(--google-font);text-transform: none;font-size: 0.8rem !important;line-height: 140%;font-weight: 300 !important;  letter-spacing: 1px;padding: 0 20px;}
#solu342 p:first-of-type {padding-bottom: 10px;}
#solu342 p:last-of-type {padding-bottom: 30px;}
/* Image gallery */
.kuvagalleriagrid {display: grid;grid-template-columns: var(--img-gallery-rows);grid-gap: 1em}.kuvagalleriakuvatausta {width: 100% !important;height: auto !important;margin: 0 !important}.kuvagalleriakuvatausta .kuva {width: 100%;max-width: 100%;object-fit: cover; padding: 0 !important;height: var(--img-gallery-img-size)}@media screen and (max-width:575px) {.kuvagalleriagrid {grid-template-columns: repeat(2, 1fr)}.kuvagalleriakuvatausta .kuva{height: 150px}}@media screen and (max-width:480px) {.kuva, .kuva2 {float: none !important;clear: both;padding: 20px 0; box-sizing:border-box;}}

/* Semio referencelinks*/
#swlinkit {text-align: center;padding:10px 0;}.swlinkki {font-family:var(--google-font);font-size: 12px;color: #424242; }.swlinkki:hover{color:#06b0a7; text-decoration: none;}

 @media screen and (max-width:678px) {.subpage table, .subpage td, .subpage tr {display: block;width: 100% !important;height: auto; clear: both;box-sizing: border-box}.subpage tbody {width: 100%;display: inline-block}.subpage tr {display: flex;}.subpage tr td {flex:1;}}@media screen and (max-width:480px) {.subpage tr {display: grid;grid-template-columns: repeat(auto-fit,minmax(220px,1fr));}}
/* Forms */
.lomakeotsikko {color: var(--primary-color);font-weight: 700; padding:10px 0;}.lomake-ve-solu input[type=checkbox] {display: none}.lomake-ve-solu input[type=checkbox] + label, .lomake-ve-solu input[type=checkbox]:checked + label {-webkit-appearance: none;display: block;position: relative;height: auto;clear: both;}.lomake-ve-solu input[type=checkbox] + label::before, .lomake-ve-solu input[type=checkbox]:checked + label::before {border-radius: 100%;border: 1px solid #8e8e8e;border-radius: 4px;color: #fff;content: "✓";float: left;font-size: 1.2em !important;font-weight: 700;height: 18px;line-height: 11px;margin-right: 20px;padding: 8px 12px 0 8px;position: relative; width: 9px}.lomake-ve-solu input[type=checkbox] + label::before {content: ""}.lomake-ve-solu input[type=checkbox]:checked + label::before { background: #2a2a2a none repeat scroll 0 0;color: #fff !important;border: none;padding: 8px 15px 0 7px}#suodatin input[type=checkbox]:checked + label,.lomake-ve-solu input[type=checkbox]:checked + label {color: #000;box-shadow: 0 1px 2px rgba(0, 0, 0, .05), inset 0 -15px 10px -12px rgba(0, 0, 0, .05), inset 15px 10px -12px rgba(255, 255, 255, .1), inset 0 0 10px rgba(0, 0, 0, .1)}.lomake-ve-solu input[type=checkbox] + label:active, .lomake-ve-solu input[type=checkbox]:checked + label:active {box-shadow: 0 1px 2px rgba(0, 0, 0, .05), inset 0 1px 3px rgba(0, 0, 0, .1)}.lomake-ve-solu [type=radio]:checked, .lomake-ve-solu [type=radio]:not(:checked) {position: absolute;left: -9999px}.lomake-ve-solu [type=radio]:checked + label, .lomake-ve-solu [type=radio]:not(:checked) + label {position: relative; padding-left: 28px;cursor: pointer;line-height: 20px;padding-bottom: 10px;display: inline-block;color: #666}.lomake-ve-solu [type=radio]:checked + label:before, .lomake-ve-solu [type=radio]:not(:checked) + label:before {content: '';position: absolute;left: 0;top: 0;width: 18px; height: 18px;border: 1px solid #8e8e8e;border-radius: 100%;background: #fff}
.lomake-ve-solu [type=radio]:checked + label:after, .lomake-ve-solu[type=radio]:not(:checked) + label:after {content: '';width: 12px;height: 12px;background: #9ec72a;position: absolute;top: 4px;left: 4px;border-radius: 100%;-webkit-transition: all .2s ease;transition: all .2s ease}.lomake-ve-solu [type=radio]:not(:checked) + label:after {opacity: 0;-webkit-transform: scale(0);transform: scale(0)}.lomake-ve-solu [type=radio]:checked + label:after {opacity: 1;-webkit-transform: scale(1); transform: scale(1)}input[type="text"].pmvk, input[type="button"].lpainike { width: auto !important;}@media screen and (max-width:1200px) {.lomake-ve-solu input[type=checkbox] + label::before, .lomake-ve-solu input[type=checkbox]:checked + label::before { margin-bottom: 10px}}tr[id^=lomakerivi] {display: grid;grid-template-columns: repeat(auto-fit, minmax(240px, 1fr))}input[type=button], input[type=file], input[type=text], textarea {max-width: var(--max-input-width);height:35px;width: 100% !important;box-sizing: border-box;border: 1px solid #8e8e8e}textarea,.lomakenappi_submit, input[type=file] {height: auto}.lomakenappi_submit {-webkit-appearance: none;-moz-appearance: none;appearance: none;color: var(--button-text-color);font-size: var(--button-font-size);width: auto;border: none !important;border-radius: 6px;height: 45px !important;font-weight: 700;margin-top: 10px;line-height: 100%}tr[id^="lomakerivi"] select {border: 1px solid #888 !important;padding: 10px;border-radius: 4px;appearance: auto;-webkit-appearance: auto;-moz-appearance: auto;-ms-appearance: auto; width: auto !important;}.lpainike, .pmvk {width: auto;height: auto}.lomake-ve-solu {padding-bottom: 5px;padding-right: 10px}tr[id^="lomakerivi"] table tr {grid-gap: 2em;display: grid;grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));}tr[id^="lomakerivi"] table { width: 100%;}.rbcb-table tr {grid-gap: 0 !important;}

 /* Mobilemenu */
.meanmenu-reveal{display:none;font-size:30px!important}.meanmenu-reveal{color:var(--mobilemenu-open-close-color);cursor:pointer;display:block;font-size:1px;font-weight:700;height:47px;line-height:22px;margin-top:0;padding: 8px 10px 0 10px;position:absolute;text-decoration:none;text-indent:-9999em;top:4px;width:39px;}.meanmenu-reveal.meanclose {padding: 12px 12px 4px 12px;}.meanmenu-reveal span{background:var(--mobilemenu-button-background);border-radius:2px;display:block;height:6px;margin-top:4px;line-height:100%!important}.mean-nav{float:left;width:100%;margin-top:var(--mobilemenu-container-height)}.mean-nav ul{padding:0;margin:0;width:100%;list-style-type:none}.mean-nav li a{display:block;float:left;width:90%;padding:10px 5% 10px 5%;height:auto;margin:0;text-align:left;color:var(--mobilemenu-link-color);border-top:1px solid rgba(255,255,255,.2);text-decoration:none;font-size:14px;background:var(--mobilemenu-link-background);text-transform:uppercase}.mean-nav ul li li a{width:90%;padding:10px 5% 10px 8%;background:var(--mobilemenu-submenu-background)!important;visibility:visible}.mean-nav ul li{position:relative;float:left;width:100%}a.mean-expand{background:var(--mobilemenu-expand-button)!important;color:#cc5c84 !important;border:medium none;border-radius:100px;font-weight:700;height:22px!important;margin-top:3px !important;padding:3px 4px 4px!important;line-height: 120%;position:absolute;right:10px;text-align:center!important;top:6px;width:23px!important;z-index:2}.mean-remove{display:none!important}#main-navi-resp{display:none}@media screen and (max-width:1024px) {#mobilemenu-container, #main-navi-resp {display: block !important;}#mobile-logo {display: block;}}.acc-news-wrapper {border-top: 1px solid #993e52;font-family: var(--google-heading-font);letter-spacing: 3px;margin: 0;line-height: 120%;font-size:0.9rem; text-transform:uppercase}
.popupkalenteri iframe {height: 239px;}