@import url('https://fonts.googleapis.com/css?family=Catamaran:100,400,600,800');
.__clearfix:before,
.__clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.__clearfix:after {
  clear: both;
}
.__uppercase {
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.__uppercase-heading {
  text-transform: uppercase;
  letter-spacing: 0.015em;
}
.__border-box {
  box-sizing: border-box;
}
html,
body {
  min-height: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
}
body {
  font-weight: 400;
  font-family: 'Catamaran', Arial, Helvetica, Arial, sans-serif;
  background-color: #000;
  color: #000;
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-size: 16px;
  background-size: auto 100%;
  background-position: center top;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 680px) {
  body {
    background-repeat: no-repeat;
    background-size: 100% auto;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Catamaran', Arial, Helvetica, Arial, "sans-serif";
  letter-spacing: 0.05em;
  font-weight: 400;
  line-height: 1.1;
}
h1 {
  font-weight: 100;
  letter-spacing: 0.01em;
  line-height: 1.4;
}
.__heading-1 {
  font-size: 2rem;
}
@media only screen and (max-width: 360px) {
  .__heading-1 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 680px) {
  .__heading-1 {
    font-size: 2.6rem;
  }
}
h1 {
  font-size: 2rem;
}
@media only screen and (max-width: 360px) {
  h1 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 680px) {
  h1 {
    font-size: 2.6rem;
  }
}
h2 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 360px) {
  h2 {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 680px) {
  h2 {
    font-size: 2rem;
  }
}
h3 {
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.015em;
  font-weight: 600;
}
@media only screen and (max-width: 680px) {
  h3 {
    font-size: 1.2rem;
  }
}
hr {
  height: 0.2em;
  margin: 2em auto;
  border: none;
  background-color: #000;
}
.wrap {
  margin: 0 2rem;
  box-sizing: border-box;
}
@media only screen and (max-width: 680px) {
  .wrap.wrap--navi {
    margin: 0 1rem;
  }
}
@media only screen and (min-width: 680px) {
  .wrap {
    max-width: 1012px;
    padding: 0 3rem;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 360px) {
  .wrap {
    margin: 0 1rem;
  }
}
@media only screen and (min-width: 1280px) {
  .wrap {
    max-width: 1012px;
    padding: 0 3rem;
    margin: 0 auto;
  }
}
.hidden {
  display: none;
}
.logo {
  display: flex;
  align-items: center;
}
.logo span {
  display: none;
}
.logo img {
  max-width: 7rem;
}
@media only screen and (min-width: 680px) {
  .logo img {
    margin-left: -3rem;
  }
}
.content-area {
  position: relative;
}
.content-area .background {
  z-index: 1;
}
.content-area .content-wrapper {
  position: relative;
  z-index: 10;
}
.background {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
@media only screen and (max-width: 680px) {
  .background {
    background-size: 300% auto;
  }
}
.header {
  min-height: 6rem;
  position: relative;
  z-index: 100;
}
.header:before,
.header:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.header:after {
  clear: both;
}
@media only screen and (min-width: 680px) and (max-width: 979px) {
  .header .wrap {
    padding: 0 2rem;
  }
}
.header .header__gradient {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  min-height: 7.8rem;
  z-index: 100;
}
.header .header__logo {
  position: relative;
  z-index: 500;
}
@media only screen and (min-width: 680px) {
  .header .header__logo {
    position: absolute;
    z-index: 500;
  }
}
@media only screen and (max-width: 680px) {
  .header .header__logo .logo {
    width: 50%;
  }
  .header .header__logo .logo img {
    max-width: 4rem;
  }
}
.header .navi__burger {
  display: none;
  position: absolute;
  top: 1.6rem;
  right: 2rem;
  z-index: 500;
}
@media only screen and (max-width: 980px) {
  .header .navi__burger {
    display: block;
    margin-right: 0;
  }
}
@media only screen and (min-width: 680px) and (max-width: 979px) {
  .header .navi__burger {
    top: 2.6rem;
  }
}
@media only screen and (max-width: 360px) {
  .header .navi__burger {
    right: 1rem;
  }
}
.header .navi__collapse {
  z-index: 500;
}
@media only screen and (max-width: 980px) {
  .header .navi__collapse {
    padding-bottom: 4rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 680px) and (max-width: 979px) {
  .header .navi__collapse {
    padding-top: 2rem;
    padding-left: 8rem;
  }
}
@media only screen and (min-width: 980px) {
  .header .navi__collapse {
    width: 100%;
    position: relative;
  }
}
.header .header__content {
  padding: 10vh 0 4em 0;
  text-align: center;
}
@media only screen and (min-width: 680px) {
  .header .header__content {
    padding: 10em 0 8em 0;
  }
  .header .header__content h1 {
    max-width: 80%;
  }
}
.header .header__content h1 {
  margin: 0 auto;
}
.header .header__punchline {
  margin: 0 auto;
  font-size: 1.1em;
}
@media only screen and (min-width: 680px) {
  .header .header__punchline {
    font-size: 1.2em;
    max-width: 80%;
  }
}
.header .header__contact {
  margin-top: 3em;
}
.header .header__contact a {
  font-size: 1.5em;
  color: #fff;
  letter-spacing: 0.025em;
}
.header .header__contact a:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 680px) {
  .header .header__contact {
    margin-top: 4em;
  }
  .header .header__contact a {
    font-size: 2em;
    font-weight: 100;
  }
}
.navi {
  min-height: 6rem;
}
.navi__locale img {
  width: 1.3rem;
}
@media only screen and (min-width: 980px) {
  .navi__locale {
    position: absolute;
    right: -2rem;
    top: 2.35rem;
  }
}
@media only screen and (max-width: 980px) {
  .navi__locale {
    margin-top: 1em;
  }
  .navi__locale img {
    width: 2rem;
  }
}
@media only screen and (max-width: 980px) {
  .navi__collapse {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    transition: all 150ms ease-in-out;
    transform: translateY(-200%);
    transform: translateY(-150vh);
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.2);
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 90;
    padding: 0 2rem 6rem 2rem;
  }
  body.navi--open .navi__collapse {
    z-index: 300;
    transform: translateY(0rem);
  }
}
.navi__collapse ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.navi__collapse ul:before,
.navi__collapse ul:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.navi__collapse ul:after {
  clear: both;
}
@media only screen and (min-width: 980px) {
  .navi__collapse ul {
    float: right;
  }
}
.navi__collapse li {
  margin: 0;
  padding: 0.5em 0;
}
@media only screen and (min-width: 980px) {
  .navi__collapse li {
    padding: 0 0.5em;
    line-height: 6rem;
    float: left;
  }
  .navi__collapse li:hover ul.navi__subnavi {
    display: block;
    opacity: 1;
  }
}
.navi__collapse li a {
  transition: all 150ms ease-in-out;
  color: #fff;
  font-weight: 600;
  font-family: 'Catamaran', Arial, Helvetica, Arial, "sans-serif";
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 1.4em;
}
@media only screen and (min-width: 980px) {
  .navi__collapse li a {
    font-size: 0.9em;
    letter-spacing: 0;
  }
}
.navi__collapse li a:hover {
  color: rgba(255, 255, 255, 0.5);
  transform: translateY(-2rem);
}
@media only screen and (max-width: 980px) {
  ul.navi__subnavi li {
    padding-left: 2rem;
  }
  ul.navi__subnavi li a {
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.1em;
  }
}
@media only screen and (min-width: 980px) {
  ul.navi__subnavi {
    transition: all 150ms linear;
    opacity: 0;
    position: absolute;
    top: 4rem;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 1em 2rem;
    margin-left: -2.4rem;
  }
  ul.navi__subnavi li {
    float: none;
    line-height: 2rem;
  }
}
.row:before,
.group:before,
.row:after,
.group:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.row:after,
.group:after {
  clear: both;
}
.content-wrapper {
  padding-bottom: 0;
  min-height: 20%;
  min-height: 20vh;
}
@media only screen and (min-width: 680px) {
  .content-wrapper {
    padding-bottom: 8rem;
  }
}
.content-wrapper .wrap {
  text-align: center;
}
.content-wrapper p {
  line-height: 1.6em;
}
@media only screen and (max-width: 680px) {
  .content-wrapper p {
    font-size: 0.9em;
  }
}
.burger {
  width: 2.4rem;
  margin: 0;
  margin-top: -0.4rem;
  margin-left: -4.8rem;
  margin-right: 0.6rem;
  transition: .5s;
  cursor: pointer;
  user-select: none;
  border-radius: 0.34285714rem;
}
@media only screen and (max-width: 680px) {
  .burger {
    display: block;
  }
}
.burger:hover {
  opacity: 1;
}
.burger:active {
  transition: 0;
}
.burger .__line {
  display: inline-block;
  width: 2.4rem;
  height: 0.24rem;
  background: #fff;
  border-radius: 0.12rem;
  transition: 300ms;
}
.burger__line {
  display: inline-block;
  width: 2.4rem;
  height: 0.24rem;
  background: #fff;
  border-radius: 0.12rem;
  transition: 300ms;
}
.burger__lines {
  display: inline-block;
  width: 2.4rem;
  height: 0.24rem;
  border-radius: 0.12rem;
  transition: 300ms;
  background: #fff;
  position: relative;
}
.burger__lines:before,
.burger__lines:after {
  display: inline-block;
  width: 2.4rem;
  height: 0.24rem;
  background: #fff;
  border-radius: 0.12rem;
  transition: 300ms;
  position: absolute;
  left: 0;
  content: '';
  transform-origin: 0.17142857rem center;
}
.burger__lines:before {
  top: 0.6rem;
}
.burger__lines:after {
  top: -0.6rem;
}
body.navi--open .burger .burger__lines {
  background: transparent;
}
body.navi--open .burger .burger__lines:before,
body.navi--open .burger .burger__lines:after {
  transform-origin: 50% 50%;
  top: 0;
  width: 2.4rem;
}
body.navi--open .burger .burger__lines:before {
  transform: rotate3d(0, 0, 1, 45deg);
  background-color: #fff;
}
body.navi--open .burger .burger__lines:after {
  transform: rotate3d(0, 0, 1, -45deg);
  background-color: #fff;
}
footer {
  padding: 6em 0;
  background-color: #000;
  color: #fff;
}
@media only screen and (max-width: 680px) {
  footer {
    padding: 2em 0;
  }
}
footer .wrap:before,
footer .wrap:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
footer .wrap:after {
  clear: both;
}
footer .footer__info {
  text-align: left;
}
@media only screen and (min-width: 680px) {
  footer .footer__info {
    width: 50%;
    float: left;
  }
}
footer .footer__contact {
  color: #fff;
}
footer .footer__contact a {
  color: #fff;
}
footer .footer__contact a:hover {
  opacity: 0.8;
}
footer .footer__name {
  font-weight: 600;
}
footer .footer__links a {
  color: #999;
  display: block;
}
footer .footer__links a:hover {
  color: #fff;
}
@media only screen and (min-width: 680px) {
  footer .footer__links {
    width: 50%;
    float: right;
  }
  footer .footer__links a {
    text-align: right;
  }
}
body .__light {
  color: #fff;
}
body.laatu,
body.quality {
  color: #fff;
  background-size: cover;
}
@media only screen and (min-width: 680px) {
  body.laatu .background,
  body.quality .background {
    background-size: cover;
  }
}
body.laatu .box,
body.quality .box {
  margin: 3rem auto;
  color: #000;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 1em;
}
@media only screen and (min-width: 680px) {
  body.laatu .box,
  body.quality .box {
    max-width: 70%;
  }
}
body.laatu .box h4,
body.quality .box h4 {
  font-weight: 600;
  margin-top: 0;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.015em;
}
body.laatu .box ul,
body.quality .box ul {
  margin: 0 auto;
  text-align: left;
  list-style-type: none;
  list-style-position: outside;
  padding-left: 0;
}
body.laatu .box ul li,
body.quality .box ul li {
  padding-left: 2rem;
  margin-bottom: 0.8em;
}
body.laatu .box ul li:before,
body.quality .box ul li:before {
  margin-left: -1.5rem;
  content: ' ';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-radius: 1em;
  margin-right: 0.5rem;
  background-color: #697020;
}
body.yhteys,
body.contact {
  color: #fff;
}
body.yhteys .background,
body.contact .background {
  background-position: 80% -5%;
}
@media only screen and (min-width: 680px) {
  body.yhteys .background,
  body.contact .background {
    background-position: center top;
    background-size: 130% auto;
    margin-top: -10%;
  }
}
body.asiakkaat,
body.customers {
  color: #fff;
}
body.asiakkaat .background,
body.customers .background {
  background-size: cover;
  background-position: center bottom;
  margin-bottom: 15rem;
}
@media only screen and (max-width: 680px) {
  body.asiakkaat .background,
  body.customers .background {
    background-position: center 100%;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 680px) {
  body.asiakkaat .background,
  body.customers .background {
    margin-bottom: 0;
    top: -70%;
  }
}
@media only screen and (min-width: 1450px) {
  body.asiakkaat .background,
  body.customers .background {
    top: -70%;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 680px) {
  body.asiakkaat .logos img,
  body.customers .logos img {
    max-width: 60%;
  }
}
body.puolustus-ja-turvallisuus .content-area,
body.defence-and-security .content-area {
  background-color: #111;
  padding-bottom: 20%;
  padding-bottom: 20vh;
}
body.puolustus-ja-turvallisuus .background,
body.defence-and-security .background {
  background-color: #626567;
  background-position: center bottom;
  background-size: auto 120%;
}
@media only screen and (max-width: 680px) {
  body.puolustus-ja-turvallisuus .content-area,
  body.defence-and-security .content-area {
    padding-bottom: 30rem;
  }
}
@media only screen and (min-width: 1450px) {
  body.puolustus-ja-turvallisuus .content-wrapper,
  body.defence-and-security .content-wrapper {
    min-height: 40%;
    min-height: 40vh;
  }
}
body.kytkentajarjestelmat,
body.connector-systems,
body.connection-systems {
  color: #fff;
}
body.kytkentajarjestelmat h1,
body.connector-systems h1,
body.connection-systems h1,
body.kytkentajarjestelmat h2,
body.connector-systems h2,
body.connection-systems h2,
body.kytkentajarjestelmat h3,
body.connector-systems h3,
body.connection-systems h3 {
  color: #89ab21;
}
body.kytkentajarjestelmat .contact-form,
body.connector-systems .contact-form,
body.connection-systems .contact-form {
  background-color: #89ab21;
}
body.komponentit h1,
body.components h1,
body.import h1,
body.maahantuonti h1,
body.komponentit h2,
body.components h2,
body.import h2,
body.maahantuonti h2,
body.komponentit h3,
body.components h3,
body.import h3,
body.maahantuonti h3 {
  color: #572f0e;
}
body.komponentit .background,
body.components .background,
body.import .background,
body.maahantuonti .background {
  background-position: center top;
}
@media only screen and (min-width: 680px) {
  body.komponentit .background,
  body.components .background,
  body.import .background,
  body.maahantuonti .background {
    background-size: 140% auto;
  }
}
@media only screen and (min-width: 1450px) {
  body.komponentit .background,
  body.components .background,
  body.import .background,
  body.maahantuonti .background {
    top: -20%;
    background-size: cover;
  }
}
body.komponentit .header__gradient,
body.components .header__gradient,
body.import .header__gradient,
body.maahantuonti .header__gradient {
  background-image: linear-gradient(rgba(87, 47, 14, 0.7), rgba(255, 255, 255, 0));
}
@media only screen and (min-width: 680px) {
  body.komponentit .header__content,
  body.components .header__content,
  body.import .header__content,
  body.maahantuonti .header__content {
    padding-bottom: 4em;
  }
}
body.komponentit .box,
body.components .box,
body.import .box,
body.maahantuonti .box {
  background-color: rgba(255, 255, 255, 0.4);
}
@media only screen and (min-width: 680px) {
  body.komponentit .box,
  body.components .box,
  body.import .box,
  body.maahantuonti .box {
    max-width: 70%;
    margin: 0 auto;
  }
}
body.komponentit .contact-form,
body.components .contact-form,
body.import .contact-form,
body.maahantuonti .contact-form {
  background-color: rgba(87, 47, 14, 0.7);
}
body.komponentit .contact-form h2,
body.components .contact-form h2,
body.import .contact-form h2,
body.maahantuonti .contact-form h2,
body.komponentit .contact-form .form,
body.components .contact-form .form,
body.import .contact-form .form,
body.maahantuonti .contact-form .form {
  color: #fff;
}
body.komponentit .contact-form h2 .field input[type=text],
body.components .contact-form h2 .field input[type=text],
body.import .contact-form h2 .field input[type=text],
body.maahantuonti .contact-form h2 .field input[type=text],
body.komponentit .contact-form .form .field input[type=text],
body.components .contact-form .form .field input[type=text],
body.import .contact-form .form .field input[type=text],
body.maahantuonti .contact-form .form .field input[type=text],
body.komponentit .contact-form h2 .field input[type=tel],
body.components .contact-form h2 .field input[type=tel],
body.import .contact-form h2 .field input[type=tel],
body.maahantuonti .contact-form h2 .field input[type=tel],
body.komponentit .contact-form .form .field input[type=tel],
body.components .contact-form .form .field input[type=tel],
body.import .contact-form .form .field input[type=tel],
body.maahantuonti .contact-form .form .field input[type=tel],
body.komponentit .contact-form h2 .field input[type=number],
body.components .contact-form h2 .field input[type=number],
body.import .contact-form h2 .field input[type=number],
body.maahantuonti .contact-form h2 .field input[type=number],
body.komponentit .contact-form .form .field input[type=number],
body.components .contact-form .form .field input[type=number],
body.import .contact-form .form .field input[type=number],
body.maahantuonti .contact-form .form .field input[type=number],
body.komponentit .contact-form h2 .field input[type=email],
body.components .contact-form h2 .field input[type=email],
body.import .contact-form h2 .field input[type=email],
body.maahantuonti .contact-form h2 .field input[type=email],
body.komponentit .contact-form .form .field input[type=email],
body.components .contact-form .form .field input[type=email],
body.import .contact-form .form .field input[type=email],
body.maahantuonti .contact-form .form .field input[type=email],
body.komponentit .contact-form h2 .field textarea,
body.components .contact-form h2 .field textarea,
body.import .contact-form h2 .field textarea,
body.maahantuonti .contact-form h2 .field textarea,
body.komponentit .contact-form .form .field textarea,
body.components .contact-form .form .field textarea,
body.import .contact-form .form .field textarea,
body.maahantuonti .contact-form .form .field textarea {
  color: #fff;
}
body.komponentit .contact-form h2 .field input[type=text]::placeholder,
body.components .contact-form h2 .field input[type=text]::placeholder,
body.import .contact-form h2 .field input[type=text]::placeholder,
body.maahantuonti .contact-form h2 .field input[type=text]::placeholder,
body.komponentit .contact-form .form .field input[type=text]::placeholder,
body.components .contact-form .form .field input[type=text]::placeholder,
body.import .contact-form .form .field input[type=text]::placeholder,
body.maahantuonti .contact-form .form .field input[type=text]::placeholder,
body.komponentit .contact-form h2 .field input[type=tel]::placeholder,
body.components .contact-form h2 .field input[type=tel]::placeholder,
body.import .contact-form h2 .field input[type=tel]::placeholder,
body.maahantuonti .contact-form h2 .field input[type=tel]::placeholder,
body.komponentit .contact-form .form .field input[type=tel]::placeholder,
body.components .contact-form .form .field input[type=tel]::placeholder,
body.import .contact-form .form .field input[type=tel]::placeholder,
body.maahantuonti .contact-form .form .field input[type=tel]::placeholder,
body.komponentit .contact-form h2 .field input[type=number]::placeholder,
body.components .contact-form h2 .field input[type=number]::placeholder,
body.import .contact-form h2 .field input[type=number]::placeholder,
body.maahantuonti .contact-form h2 .field input[type=number]::placeholder,
body.komponentit .contact-form .form .field input[type=number]::placeholder,
body.components .contact-form .form .field input[type=number]::placeholder,
body.import .contact-form .form .field input[type=number]::placeholder,
body.maahantuonti .contact-form .form .field input[type=number]::placeholder,
body.komponentit .contact-form h2 .field input[type=email]::placeholder,
body.components .contact-form h2 .field input[type=email]::placeholder,
body.import .contact-form h2 .field input[type=email]::placeholder,
body.maahantuonti .contact-form h2 .field input[type=email]::placeholder,
body.komponentit .contact-form .form .field input[type=email]::placeholder,
body.components .contact-form .form .field input[type=email]::placeholder,
body.import .contact-form .form .field input[type=email]::placeholder,
body.maahantuonti .contact-form .form .field input[type=email]::placeholder,
body.komponentit .contact-form h2 .field textarea::placeholder,
body.components .contact-form h2 .field textarea::placeholder,
body.import .contact-form h2 .field textarea::placeholder,
body.maahantuonti .contact-form h2 .field textarea::placeholder,
body.komponentit .contact-form .form .field textarea::placeholder,
body.components .contact-form .form .field textarea::placeholder,
body.import .contact-form .form .field textarea::placeholder,
body.maahantuonti .contact-form .form .field textarea::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
body.komponentit hr,
body.components hr,
body.import hr,
body.maahantuonti hr {
  background-color: #fff;
  margin: 4rem auto;
}
body.komponentit .content-wrapper ul,
body.components .content-wrapper ul,
body.import .content-wrapper ul,
body.maahantuonti .content-wrapper ul {
  margin: 0 auto;
  text-align: left;
  list-style-type: none;
  list-style-position: outside;
  padding-left: 0;
  margin-bottom: 2rem;
}
body.komponentit .content-wrapper ul li,
body.components .content-wrapper ul li,
body.import .content-wrapper ul li,
body.maahantuonti .content-wrapper ul li {
  padding-left: 2rem;
  color: #000;
  margin-bottom: 0.8em;
}
body.komponentit .content-wrapper ul li:before,
body.components .content-wrapper ul li:before,
body.import .content-wrapper ul li:before,
body.maahantuonti .content-wrapper ul li:before {
  margin-left: -1.5rem;
  content: ' ';
  color: #fff;
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  margin-right: 0.5rem;
  background-color: #fff;
}
@media only screen and (min-width: 680px) {
  body.komponentit .header__content h1,
  body.components .header__content h1,
  body.import .header__content h1,
  body.maahantuonti .header__content h1 {
    max-width: 60%;
  }
}
body.automaatio,
body.automation {
  color: #fff;
}
body.automaatio h1,
body.automation h1,
body.automaatio h2,
body.automation h2,
body.automaatio h3,
body.automation h3 {
  color: #df8d10;
}
body.automaatio .contact-form,
body.automation .contact-form {
  background-color: #df8d10;
}
@media only screen and (max-width: 680px) {
  body.lander .background {
    background-position: 70% top;
    background-size: auto 100%;
    opacity: 0.6;
    top: -25%;
  }
}
@media only screen and (min-width: 680px) {
  body.lander .header__content h1 {
    max-width: 50%;
  }
  body.lander .header__content {
    padding-bottom: 4em;
  }
  body.lander .header__punchline {
    max-width: 80%;
  }
}
.section--component-links a {
  display: block;
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: 100;
  color: #000;
}
.section--component-links a:after {
  margin-left: 0.5em;
  content: '>>';
  color: #fff;
}
.box {
  background-color: #999;
  padding: 2rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 680px) {
  .box--contact-form {
    margin-bottom: 0;
  }
}
.columns {
  padding-bottom: 3rem;
}
@media only screen and (min-width: 680px) {
  .columns {
    max-width: 80%;
    margin: 0 auto;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  .columns .column {
    width: 48%;
    text-align: left;
  }
  .columns .column hr {
    visibility: hidden;
    margin: 0;
  }
}
.logos {
  margin-bottom: 3rem;
}
.logos img {
  max-width: 100%;
}
@media only screen and (min-width: 680px) {
  .logos img {
    max-width: 80%;
  }
}
.images-grid {
  margin-top: 2rem;
  margin-bottom: 3rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.images-grid .image {
  padding-bottom: 2%;
  padding-left: 2%;
  padding-right: 2%;
  min-width: 30%;
  max-width: 46%;
}
.images-grid .image img {
  max-width: 100%;
}
@media only screen and (min-width: 680px) {
  .images-grid {
    margin-left: -1.5%;
    margin-right: -1.5%;
  }
  .images-grid .image {
    box-sizing: border-box;
    padding-left: 1.5%;
    padding-right: 1.5%;
    padding-bottom: 3%;
    min-width: 25%;
    max-width: 50%;
    flex-basis: 33.33333333%;
  }
  .images-grid.items-count--4 .image {
    flex-basis: 25%;
  }
}
.field {
  position: relative;
  margin-bottom: 1rem;
}
.field input[type=text],
.field input[type=tel],
.field input[type=number],
.field input[type=email],
.field textarea {
  box-sizing: border-box;
  padding: 0.5em 1em;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.15);
  color: #000;
  font-family: 'Catamaran', Arial, Helvetica, Arial, sans-serif;
  letter-spacing: 0.02em;
  font-size: 1.1em;
  border: none;
}
.field input[type=text]:focus,
.field input[type=tel]:focus,
.field input[type=number]:focus,
.field input[type=email]:focus,
.field textarea:focus {
  border: none;
  outline: none;
}
.field input[type=text]::placeholder,
.field input[type=tel]::placeholder,
.field input[type=number]::placeholder,
.field input[type=email]::placeholder,
.field textarea::placeholder {
  color: rgba(0, 0, 0, 0.4);
}
.form--attempted .field input[type=text]:invalid,
.form--attempted .field input[type=tel]:invalid,
.form--attempted .field input[type=number]:invalid,
.form--attempted .field input[type=email]:invalid,
.form--attempted .field textarea:invalid {
  border-right: 0.2em solid #b01f23;
}
.field--multiple-radio .field__options,
.field--multiple-checkboxes .field__options {
  margin-top: 1rem;
}
.field--multiple-radio .field__option,
.field--multiple-checkboxes .field__option {
  margin: 0 1rem;
}
@media only screen and (max-width: 680px) {
  .field--multiple-radio .field__option,
  .field--multiple-checkboxes .field__option {
    text-align: left;
    margin-bottom: 0.5em;
    display: block;
  }
}
.field--multiple-radio input,
.field--multiple-checkboxes input {
  margin-right: 1rem;
}
.field--multiple-radio input:before,
.field--multiple-checkboxes input:before {
  width: 1.2em;
  height: 1.2em;
  background-color: #fff;
  content: ' ';
  display: inline-block;
  text-align: center;
  pointer-events: none;
  font-size: 1.2em;
  font-weight: 600;
  line-height: 1.2em;
  margin-top: -0.15em;
  transition: all 150ms linear;
}
.field--multiple-radio input:checked:before,
.field--multiple-checkboxes input:checked:before {
  content: '✓';
  background-color: #000;
  color: #fff;
}
.contact-form {
  box-sizing: border-box;
  padding: 2rem;
}
@media only screen and (max-width: 680px) {
  .contact-form {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
@media only screen and (min-width: 680px) {
  .contact-form {
    max-width: 80%;
    margin: 3rem auto;
    padding: 3rem;
  }
}
.contact-form .form {
  color: #000;
}
.contact-form .form h2 {
  color: #000;
  font-size: 2rem;
}
@media only screen and (max-width: 360px) {
  .contact-form .form h2 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 680px) {
  .contact-form .form h2 {
    font-size: 2.6rem;
  }
}
.contact-form .form__fields {
  margin-top: 3rem;
}
.contact-form .form__error {
  background-color: #b01f23;
  color: #fff;
  padding: 0.25em 0;
  display: none;
}
.contact-form .form__buttons {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.contact-form .form__buttons button,
.contact-form .form__buttons .button {
  width: 100%;
}
.contact-form .form__thanks {
  display: none;
}
.contact-form .form--incomplete .form__error {
  display: block;
}
.contact-form .form--sent .form__content,
.contact-form .form--sent .form__error {
  display: none;
}
.contact-form .form--sent .form__buttons,
.contact-form .form--sent .form__fields {
  opacity: 0.5;
  pointer-events: none;
}
@media only screen and (max-width: 680px) {
  .contact-form .form--sent .form__buttons,
  .contact-form .form--sent .form__fields {
    display: none;
  }
}
.contact-form .form--sent .form__thanks {
  display: block;
}
.contacts {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.contacts .contact {
  margin-bottom: 10%;
  max-width: 90%;
  min-width: 90%;
}
@media only screen and (min-width: 680px) {
  .contacts .contact {
    max-width: 30%;
    min-width: 30%;
  }
}
.contacts .contact__image-container {
  background-color: #999;
  border-radius: 10em;
  width: 7rem;
  height: 7rem;
  overflow: hidden;
  margin: 0 auto;
  margin-bottom: 1em;
}
.contacts .contact__image-container img {
  max-width: 100%;
}
.contacts .contact__name {
  font-weight: 600;
}
.news-feed h2 {
  font-size: 2rem;
  font-weight: 100;
}
@media only screen and (max-width: 360px) {
  .news-feed h2 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 680px) {
  .news-feed h2 {
    font-size: 2.6rem;
  }
}
.news-feed__item {
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 1rem;
  padding: 2rem 2rem;
  margin-bottom: 2rem;
  font-style: italic;
}
@media only screen and (min-width: 680px) {
  .news-feed__item {
    padding: 2rem 3rem;
    margin: 2rem auto;
    max-width: 80%;
  }
}
.news-feed__item.component--open .news-feed__collapse {
  display: block;
}
.news-feed__item img {
  max-width: 100%;
}
.news-feed__collapse {
  display: none;
}
.news-feed__date {
  text-align: left;
  font-weight: 600;
}
@media only screen and (max-width: 680px) {
  .news-feed__date {
    font-size: 0.8em;
    opacity: 0.8;
  }
}
@media only screen and (min-width: 680px) {
  .news-feed__date {
    width: 4rem;
    position: absolute;
  }
}
.news-feed__content {
  text-align: left;
}
@media only screen and (min-width: 680px) {
  .news-feed__content {
    margin-left: 6rem;
  }
}
.news-feed__title {
  font-weight: 600;
  cursor: pointer;
}
.component--open .news-feed__title {
  cursor: initial;
}
.component--open .news-feed__title:after {
  display: none;
}
.news-feed__title:after {
  margin-left: 1rem;
  content: '>>';
  font-weight: 800;
  color: #194892;
  line-height: 0.6rem;
  font-size: 1.4rem;
}
button,
.button {
  display: inline-block;
  transition: all .1s linear;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
  color: #000;
  border-radius: 0;
  border: none;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-family: 'Catamaran', Arial, Helvetica, Arial, sans-serif;
  font-weight: 800;
  font-size: 1.1em;
  line-height: 3.6rem;
  min-height: 3.2rem;
  position: relative;
  padding-left: 4rem;
  padding-right: 4rem;
  -webkit-touch-callout: none;
  user-select: none;
}
@media only screen and (max-width: 360px) {
  button,
  .button {
    line-height: 3.2rem;
    min-height: 3rem;
    font-size: 1.4rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.button--red,
.button--primary {
  background-color: #b01f23;
  color: #fff;
}
.button--red:hover,
.button--primary:hover {
  color: #fff;
  background-color: #85171a;
}
.button--bigger {
  font-size: 1.1em;
}
@media only screen and (min-width: 680px) {
  .button--bigger {
    font-size: 1.3em;
  }
}
.button--grey {
  background-color: #000;
  color: #fff;
}
.counter__debug .button--grey {
  margin-left: 1em;
  font-size: 0.8em;
}
.button[disabled],
.button--disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.auth__modal {
  position: absolute;
  z-index: 9999;
}
