.landing-area{padding-top:95px;min-height:min(100vh,calc(2500px/2.8175174978))}.landing-area h1{font-weight:400;font-size:3.2em;max-width:calc(var(--render-area) * .55);line-height:1.2em;color:#000;position:relative;text-shadow:0 0 5px #fff3}.landing-area .middle-area{position:relative;margin-top:50px}.landing-area .description{display:block;width:600px;font-size:2em;position:absolute;left:calc(var(--render-area) * .55);margin:0;line-height:1.25em;margin-top:-40px;margin-left:40px}.landing-area .bottom-bar{position:relative;margin-top:50px;font-size:1.2em}.landing-area .bottom-bar .social{float:left;line-height:95px}.landing-area .bottom-bar .social a{color:#fff;font-size:2em;font-weight:900;margin-right:20px}.landing-area .bottom-bar .social.bottom{display:none}.landing-area .bottom-bar .in-numbers{width:900px;margin:auto;text-align:center}.landing-area .bottom-bar .in-numbers .item{display:inline-block;margin:0 40px;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.landing-area .bottom-bar .in-numbers .item.visible{opacity:1;transform:translateY(0)}.landing-area .bottom-bar .in-numbers .item .number{font-weight:500;font-size:2.5em;display:block;margin-bottom:7px;margin-right:-15px}.landing-area .bottom-bar .in-numbers .item .text{font-size:1.3em;font-weight:300}.landing-area .bottom-bar .cta{position:absolute;right:0;top:-20px}.landing-area .bottom-bar .cta span{font-family:Caveat,serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-size:1.8em;position:relative}.landing-area .bottom-bar .cta span:after{content:var(--render-area);position:absolute}.landing-area .bottom-bar .cta img{transform:rotate(123deg);width:100px;position:absolute;left:-80px;bottom:-70px}.palvelut-area{padding-bottom:200px;position:relative;z-index:2}.palvelut-area a[name]{scroll-margin-top:100px}.palvelut-area .palvelu-laatikot{display:flex;justify-content:space-between;margin-top:80px}.palvelut-area .palvelu-laatikot .palvelu-laatikko{flex:1;background-color:#fff;transition:.2s;cursor:pointer;overflow:hidden;font-size:1.5em;display:flex;flex-direction:column}.palvelut-area .palvelu-laatikot .palvelu-laatikko .content-wrapper{padding:30px;padding-bottom:80px;height:220px;padding-top:0}.palvelut-area .palvelu-laatikot .palvelu-laatikko.image-bottom .header{padding-top:0}.palvelut-area .palvelu-laatikot .palvelu-laatikko img{width:100%;height:220px;object-fit:cover;border-radius:20px}.palvelut-area .palvelu-laatikot .palvelu-laatikko.image-bottom img{margin-top:20px}.palvelut-area .palvelu-laatikot .palvelu-laatikko .header{font-weight:500;margin:0;padding:30px;padding-bottom:0;padding-top:20px;margin-bottom:20px}.palvelut-area .palvelu-laatikot .palvelu-laatikko .description{line-height:1.4em;height:calc(5 * 1.4em - 3px);display:-webkit-box;line-clamp:5;-webkit-line-clamp:5;-webkit-box-orient:vertical;text-overflow:ellipsis;overflow:hidden}.palvelut-area .palvelu-laatikot .palvelu-laatikko .description p:first-of-type{margin-top:0}.palvelut-area .palvelu-laatikot .palvelu-laatikko a{display:block;color:var(--theme-color);text-decoration:none;float:right;cursor:pointer;margin-top:10px;font-weight:200}.palvelut-area .palvelu-laatikot .palvelu-laatikko a i{margin-left:20px}.palvelut-area .cta{color:var(--theme-color);text-decoration:none;float:right;display:block;margin-top:120px;font-size:1.5em;cursor:pointer}.palvelut-area .cta i{margin-left:20px;vertical-align:middle}.palvelut-area .bottom-bar{position:absolute;left:0;bottom:0;background:#fff;width:100%;height:20px}.palvelut-area .description p{margin:0}.team-in-numbers-area{background:#000;height:520px;width:100vw;color:#fff;position:relative;z-index:1;overflow:hidden}.team-in-numbers-area::before{content:'';position:absolute;width:calc(100% + 60px);height:520px;background:url('/Images/hands.png');background-size:120%;background-repeat:no-repeat;z-index:-1;left:-30px;top:0;filter:blur(8px);-webkit-filter:blur(8px);opacity:.7}.team-in-numbers-area .numbers{display:flex;justify-content:space-between;margin-top:80px}.team-in-numbers-area .numbers .item{flex:1;font-size:2.5em;font-weight:500;text-align:center;margin:0;font-size:1.5em;max-width:300px;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.team-in-numbers-area .numbers .item.visible{opacity:1;transform:translateY(0)}.team-in-numbers-area .numbers .item .number{font-size:3.9em;font-family:Poppins,sans-serif;font-weight:600;font-style:normal;display:block;line-height:130px;height:130px}.team-in-numbers-area .numbers .item .number i{line-height:130px;font-size:.9em}.team-in-numbers-area .numbers .item .text{font-weight:300}.references-area{background:#fff;position:relative;z-index:2;overflow:hidden}.references-area a[name]{scroll-margin-top:200px}.references-area .references{margin-top:50px}.references-area .reference{display:flex;justify-content:space-between;margin-top:60px;margin-bottom:150px;position:relative;opacity:0;transform:translateX(20px);transition:opacity .6s ease-out,transform .6s ease-out}.references-area .reference.tech{padding-top:100px}.references-area .reference.visible{opacity:1;transform:translateX(0)}.references-area .reference>img{flex:2;max-width:calc(var(--render-area) * .45);width:calc(var(--render-area) * .45);height:calc(var(--render-area) * .4 / 1.5);object-fit:cover;border-radius:30px}.references-area .reference>div{flex:2;font-size:1.5em;max-width:calc(var(--render-area) * .45);width:calc(var(--render-area) * .45)}.references-area .reference .header.outside{display:none}.references-area .reference .header{font-weight:300;margin:0}.references-area .reference .description{line-height:1.4em}.references-area .reference:last-of-type{margin-bottom:0}.references-area .cta{color:var(--theme-color);text-decoration:none;float:right;display:block;margin-top:120px;font-size:1.5em;cursor:pointer}.references-area .cta i{margin-left:20px;vertical-align:middle}.references-area .drone{position:absolute;left:0;top:-50px}.references-area .reference.image-right .drone{left:auto;right:0;width:auto}.references-area .drone span{font-family:Caveat,serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-size:1.2em;position:relative}.references-area .drone span:after{content:var(--render-area);position:absolute}.references-area .drone img{transform:rotate(50deg);width:80px;position:absolute;left:100px;bottom:-60px}.references-area .reference.image-right .drone img{transform:rotate(110deg)}.references-area .drone i{font-size:1.5em;position:absolute;bottom:-80px;left:30px}.asiakas-tarinat-area{background:#eee;position:relative;z-index:2}.asiakas-tarinat-area .asiakas-tarinat{display:flex;justify-content:space-between;margin-top:80px}.asiakas-tarinat-area .asiakas-tarina{position:relative;flex:1;max-width:350px;font-size:1.5em;opacity:0;transform:translateX(20px);transition:opacity .6s ease-out,transform .6s ease-out}.asiakas-tarinat-area .asiakas-tarina.visible{opacity:1;transform:translateX(0)}.asiakas-tarinat-area .asiakas-tarina::before{content:'\”';font-size:3.5em;position:absolute;left:-60px;top:0;color:#666;font-family:Moderustic,sans-serif;font-optical-sizing:auto;font-weight:600;font-style:normal}.asiakas-tarinat-area .asiakas-tarina .customer{font-weight:300;margin-top:20px;font-style:italic;font-size:.8em}.asiakas-tarinat-area .asiakas-tarina .story{line-height:1.4em}.yhteistyo-area{background:#1f1f1f;position:relative;z-index:2;color:#fff}.yhteistyo-area .logo-carousel{margin-top:80px;white-space:nowrap}.yhteistyo-area .logo-carousel img{width:25vw;height:150px;margin-right:100px;object-fit:contain}.yhteistyo-area .logo-carousel-wrapper{width:100%;overflow:hidden}.yhteistyo-area .cta{color:#fff;text-decoration:none;float:right;display:block;margin-top:80px;font-size:1.5em;cursor:pointer}.yhteistyo-area .cta i{margin-left:20px;vertical-align:middle}.laske-tarjous-area .laske-tarjous-wrapper{display:flex;justify-content:space-between;margin-top:80px}.laske-tarjous-area .laske-tarjous{font-size:1.5em;width:calc(var(--render-area) * .45);flex:1}.laske-tarjous-area .laske-tarjous label{display:block;margin-bottom:20px}.laske-tarjous-area .laske-tarjous label span{display:block;margin-bottom:5px}.laske-tarjous-area .laske-tarjous label input[type=checkbox]~span{display:inline}.laske-tarjous-area .laske-tarjous label input:not([type=checkbox]),.laske-tarjous-area .laske-tarjous label select{font-size:.9em;border-radius:7px;border:1px solid #ccc;padding:5px 10px;width:300px}.laske-tarjous-area .laske-tarjous label input[type=checkbox]{margin-right:20px;height:18px;width:18px}.laske-tarjous-area .laske-tarjous button[type=submit]{background-color:var(--theme-color);color:#fff;padding:10px 20px;border-radius:5px;font-size:1em;cursor:pointer;transition:.2s;border:none;width:300px;margin-top:40px}.laske-tarjous-area .map{max-width:600px;flex:1;width:600px;position:relative;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.laske-tarjous-area .map.visible{opacity:1;transform:translateY(0)}.laske-tarjous-area #map{width:100%;height:800px;box-shadow:#00000020 0 0 20px;border-radius:30px;overflow:hidden}.laske-tarjous-area .map .text{position:absolute;left:0;top:-150px}.laske-tarjous-area .map .text span{font-family:Caveat,serif;font-optical-sizing:auto;font-weight:400;font-stretch:normal;font-style:normal}.laske-tarjous-area .map .text>span{font-size:1.8em;position:relative}.laske-tarjous-area .map .text span:after{content:var(--render-area);position:absolute}.laske-tarjous-area .map .text img{transform:rotate(50deg);width:100px;position:absolute;left:100px;bottom:-80px}.painorajoitus-popup .mapboxgl-popup-content{font-family:'Exo 2',sans-serif;font-size:.9em;line-height:1.4;padding:14px 32px 14px 16px;border-radius:14px;box-shadow:#00000030 0 4px 20px}.painorajoitus-popup .mapboxgl-popup-close-button{font-size:1.4em;padding:4px 10px;color:#666}.painorajoitus-popup .mapboxgl-popup-close-button:hover{background:0 0;color:#000}.painorajoitus-popup .painorajoitus-tiedot>*{display:block}.painorajoitus-popup .painorajoitus-tiedot strong{font-size:1.1em;margin-bottom:2px}.painorajoitus-popup .painorajoitus-tiedot .paikkakunta,.painorajoitus-popup .painorajoitus-tiedot .tie{color:#666}.painorajoitus-popup .painorajoitus-tiedot .rajoitus{margin-top:8px;font-weight:600;color:#ca2424}.painorajoitus-popup .painorajoitus-tiedot .lisatieto{margin-top:6px;font-style:italic}.laske-tarjous-area .cta{color:var(--theme-color);text-decoration:none;float:right;display:block;margin-top:120px;font-size:1.5em;cursor:pointer}.laske-tarjous-area .cta i{margin-left:20px;vertical-align:middle}.henkilosto-area{background:#eee;position:relative;z-index:2;display:flex;justify-content:space-between;margin-top:80px}.henkilosto-area .henkilosto-bar{flex:1;margin-right:200px}.henkilosto-area .yhteystiedot-bar{flex:1}.henkilosto-area .header-font-level2{font-size:2.1em;margin-top:50px}.henkilosto-area .henkilo-box{display:block;background:#fff;border-radius:20px;box-shadow:#00000020 0 0 20px;margin-bottom:30px;width:600px;padding:20px}.henkilosto-area .henkilo-box img{width:150px;height:150px;object-fit:cover;border-radius:100%;display:inline-block;vertical-align:top}.henkilosto-area .henkilo-box .content-wrapper{display:inline-block;vertical-align:top;margin-left:30px;width:calc(100% - 190px)}.henkilosto-area .henkilo-box .content-wrapper .nimi{font-weight:400;display:block;margin-bottom:10px;font-size:1.2em}.henkilosto-area .henkilo-box .content-wrapper .titteli{display:block;margin-top:10px}.henkilosto-area .henkilo-box .content-wrapper .puhelin{display:block;margin-top:20px}.henkilosto-area .henkilo-box .content-wrapper .sahkoposti{display:block;margin-top:10px}.henkilosto-area .henkilo-box .content-wrapper .puhelin i,.henkilosto-area .henkilo-box .content-wrapper .sahkoposti i{margin-right:15px;color:#adadad}.henkilosto-area .yhteys-box{display:block;background:#fff;border-radius:20px;box-shadow:#00000020 0 0 20px;margin-bottom:30px;width:100%;padding:20px 30px;font-size:1.1em}.henkilosto-area .yhteys-box .box-header{font-weight:500;font-size:1.1em;margin-bottom:10px}.henkilosto-area .yhteys-box form{display:block;margin-top:20px}.henkilosto-area .yhteys-box input,.henkilosto-area .yhteys-box select,.henkilosto-area .yhteys-box textarea{width:100%;border-radius:7px;border:1px solid #ccc;padding:5px 10px;font-size:1em;margin-bottom:15px;background:#fff;color:#333}.henkilosto-area .yhteys-box textarea{height:200px}.henkilosto-area .yf-laskutus-tiedot-lomake input{margin-top:20px;margin-bottom:0}.henkilosto-area .yf-laskutus-tiedot-lomake .yf-laskutus-tiedot-asiakas{display:block;margin-top:0;transition:.2s;padding:7px 10px;position:relative;border-bottom:1px solid #ddd;font-size:.9em}.henkilosto-area .yf-laskutus-tiedot-lomake .yf-laskutus-tiedot-asiakas:hover{background:#f5f5f5;transition:.2s;cursor:pointer}.henkilosto-area .yf-laskutus-tiedot-lomake .yf-laskutus-tiedot-asiakas::after{content:'\f061';font-family:'Font Awesome 6 Pro';font-weight:200;font-size:1em;position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#333}.henkilosto-area .yf-laskutus-tiedot-lomake .yf-laskutus-tiedot-tulos{margin-top:20px}.henkilosto-area .yf-laskutus-tiedot-lomake .yf-laskutus-tiedot-tulos b{font-weight:400}.henkilosto-area #LahetaLomake{background-color:var(--theme-color);color:#fff;padding:5px 20px;border-radius:5px;font-size:1em;cursor:pointer;transition:.2s;border:none;width:200px;margin-top:30px}.henkilosto-area a[name=ota-yhteytta]{scroll-margin-top:100px}.tarjous-window-bg{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:.2s;overflow:auto;padding-bottom:50px}.tarjous-window-bg.visible{opacity:1;visibility:visible}.tarjous-window{background:#fff;padding:40px;border-radius:20px;width:80%;max-width:800px;position:relative;margin:auto;margin-top:50px;padding-bottom:70px}.tarjous-window .tarjous-content{font-size:1.2em}.tarjous-window .tarjous-header{margin-bottom:20px}.tarjous-window .tarjous-header .header{font-size:2.2em;font-weight:600;margin:0;margin-bottom:30px}.tarjous-window .tarjous-header .close-modal{font-size:1.3em;color:#00000080;transition:.2s;position:absolute;right:20px;top:20px}.tarjous-window .tarjous-header .close-modal:hover{color:#000;transition:.2s;cursor:pointer}.tarjous-window input:not([type=checkbox]){width:400px;border-radius:7px;border:1px solid #ccc;padding:5px 10px;font-size:1em}.tarjous-window label:first-of-type{margin-top:20px}.tarjous-window label{display:block;margin-bottom:10px}.tarjous-window label:nth-of-type(3){margin-bottom:20px}.tarjous-window label input[type=checkbox]{margin-right:10px}.tarjous-window button{background-color:var(--theme-color);color:#fff;padding:5px 15px;border-radius:5px;font-size:1em;cursor:pointer;transition:.2s;border:none;width:200px;margin-top:30px;float:right}.tarjous-window button:disabled{background-color:#ccc;color:#666;cursor:not-allowed}.tarjous-window .kiitos{display:none;margin-top:40px}