@-ms-viewport{ width: device-width; }
@-o-viewport{ width: device-width; }
@-moz-viewport{ width: device-width; }
@-webkit-viewport{ width: device-width; }
@viewport{ width: device-width; }

@font-face {
  font-family: 'hp';
  src: url('../font/hp.eot?35109572');
  src: url('../font/hp.eot?35109572#iefix') format('embedded-opentype'),
       url('../font/hp.woff2?35109572') format('woff2'),
       url('../font/hp.woff?35109572') format('woff'),
       url('../font/hp.ttf?35109572') format('truetype'),
       url('../font/hp.svg?35109572#hp') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="ktab-"]:before, [class*=" ktab-"]:before {
  font-family: "hp";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: .2em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
 
.ktab-cancel:before { content: '\e800'; } /* '' */
.ktab-download:before { content: '\e801'; } /* '' */
.ktab-clock:before { content: '\e802'; } /* '' */
.ktab-star:before { content: '\e803'; } /* '' */
.ktab-facebook:before { content: '\f09a'; } /* '' */
.ktab-angle-up:before { content: '\f106'; } /* '' */
.ktab-angle-down:before { content: '\f107'; } /* '' */
.ktab-instagram:before { content: '\f16d'; } /* '' */
.ktab-birthday:before { content: '\f1fd'; } /* '' */
.ktab-thumbs-up-alt:before { content: '\f164'; } /* '' */

body{
/*    overflow-x: hidden; */
}

p {
    margin-bottom: 1.5em;
}

h2{
    color: #2d2121;
    font-family: "Nunito", Sans-serif;
    font-weight: 600;
    margin: 0 0 20px 0;
    line-height: 1;
    font-size: 30px;
    word-wrap: break-word;
}

h3{
    color: #2d2121;
    font-family: "Nunito", Sans-serif;
    font-weight: 600;
    margin: 0 0 20px 0;
    line-height: 1;
    font-size: 20px;
    word-wrap: break-word;
}

h4{
    color: #5658d8;
    font-family: "Nunito", Sans-serif;
    font-weight: 600;
    font-size: 15px;
    margin: 0 0 1.5em 0;
    word-wrap: break-word;
}

.mod-list li a:hover,
.mod-list li.active > a,
a:not([class]),
a {
	text-decoration: none;
}

.page-header{
    border: 0;
    margin: 0;
    padding: 0;
}

body.site{
    background: #000c30;
}

body{
    font-family: "Open Sans", sans-serif;
    font-size: 15px;
    color: #3a3a3a;
    line-height: 1.5;
}

li, td, dd, dl, dt, blockquote{
    line-height: 1.5;
}

blockquote p{
    line-height: 1.5em;
    font-size: 15px;
}

div.body{
    background: #fff;
    min-height: calc(100vh - 50px);
}

.topmenuholder{
/*    background: #001249; */
/*    background: #f1c40f; */
	background: white;
}


ul.nav.topmenu{
    margin: 0;
    display: block;
    width: 100%;
    margin: 0;
}

ul.nav.topmenu > li{
    display: inline-block;
    position: relative;
	padding: 0;
}

ul.nav.topmenu > li > a{
/*    color: #f1c40f; */
    color: #001249;
    padding: 20px;
    transition: background-color .25s cubic-bezier(0.075, 0.82, 0.165, 1);
	display: block;
}

ul.nav.topmenu > li.active > a{
    color: #ffffff;
    background-color: #1e73be;
}

ul.nav.topmenu > li > a:hover,
ul.nav.topmenu > li > a:focus{
    color: #ffffff;
    background-color: #418fcc;
}

ul.nav.topmenu ul{
    background-color: #a9b505;
    box-shadow: 0 2px 2px rgba(0,0,0,.1);
    position: absolute;
    left: 0;
    z-index: 99999;
    width: 200px;
    text-align: left;
    top: auto;
    max-height: 0;
    transition: max-height 0.25s ease-out;
    overflow: hidden;
    will-change: max-height;
    padding-left: 0;
}

ul.nav.topmenu > li.dd-active > ul{
    max-height: 100vh;
    transition: max-height 0.25s ease-in;
}
ul.nav.topmenu ul li {
 padding: 0;
}
ul.nav.topmenu ul li a{
    font-size: 14px;
    color: #fff;
    padding: 10px 20px;
    display: block;
    line-height: normal;
    transition: background-color .25s cubic-bezier(0.075, 0.82, 0.165, 1);
}

ul.nav.topmenu ul li a:hover,
ul.nav.topmenu ul li a:focus{
    text-decoration: none;
    background-color: #bac605;
}

ul.nav.topmenu ul li.active > a{
    background-color: #5b6803;
}

ul.nav.topmenu > li.parent > a:after{
    content: '  \f107';
    font-family: "hp";
    font-style: normal;
    speak: none;
    line-height: 1;
}

ul.nav.topmenu > li.parent.dd-active > a:after{
    content: '  \f106';
}

.inside-header{
    padding: 20px 0;
    display: flex;
}

div.headermodules{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    flex-grow: 1;
}

.headermodules ul{
    display: inline-block;
    width: auto;
}

.headermodules ul li{
    display: inline-block !important;
    margin: 0 !important;
    list-style: none;
}

ul.nav.somemenu{
    margin: 0;
}

ul.nav.somemenu li a:before{
    text-indent: 9999px;
}

ul.nav.somemenu li a{
    text-indent: -9999px;
    width: 40px;
    padding: 10px;
    color: #3a3a3a;
    display: block;
}

.langselector ul.lang-block li a{
    padding: 10px;
    color: #3a3a3a;
}

ul.nav.somemenu li a:hover,
ul.nav.somemenu li a:focus,
.langselector ul.lang-block li a:hover,
.langselector ul.lang-block li a:focus{
    color: #1e72bd;
    background: transparent;
}

div.inside-footer{
    background: #001249;
    color: #1fddbe;
    font-size: 14px;
    padding: 40px 20px;
}

div.footercontent{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

div.footercontent > .moduletable{
    width: 22.5%;
}

.inside-footer h3{
    text-transform: none;
    font-size: 20px;
    margin: 0 0 30px 0;
    line-height: 1.5;
    color: #f1c40f;
    font-weight: 400;
}

ul.nav.footermenu ul{
    font-size: 100%;
    padding: 0 0 0 15px;
}

.footer a{
    color: #1fddbe !important;
}

.footer a:hover,
.footer a:focus{
    color: #1fddbe !important;
    background: transparent !important;
    text-decoration: underline;
}

div.inside-footer img{
    max-width: 120px;
}

div.copyright{
    padding: 20px;
}

div.copy{
    float: none;
    font-size: 100%;
    color: #1e73be;
    text-align: center;
}

div.plan{
    float: none;
    font-size: 100%;
    color: #1e73be;
    text-align: center;
}

div.plan p{
    margin: 0;
}

div.bannerbase{
    background-color: #52ed1e;
    background-position: top right;
    background-size: cover;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    padding: 30px 0px 50px 0px;
    position: relative;
}

div.banner-background-overlay{
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: transparent;
    background-image: -webkit-linear-gradient(#a500ff 0%, #0066ff 100%);
    background-image: -moz-linear-gradient(#a500ff 0%, #0066ff 100%);
    background-image: -o-linear-gradient(#a500ff 0%, #0066ff 100%);
    background-image: linear-gradient(#a500ff 0%, #0066ff 100%);
    opacity: 0.78;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
}

div.cyan div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#002eff 0%, #00ffb2 100%);
    background-image: -moz-linear-gradient(#002eff 0%, #00ffb2 100%);
    background-image: -o-linear-gradient(#002eff 0%, #00ffb2 100%);
    background-image: linear-gradient(#002eff 0%, #00ffb2 100%);
}

div.cyan2 div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#00cbff 0%, #7700ff 100%);
    background-image: -moz-linear-gradient(#00cbff 0%, #7700ff 100%);
    background-image: -o-linear-gradient(#00cbff 0%, #7700ff 100%);
    background-image: linear-gradient(#00cbff 0%, #7700ff 100%);
}

div.red div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#f321ff 0%, #ff006e 100%);
    background-image: -moz-linear-gradient(#f321ff 0%, #ff006e 100%);
    background-image: -o-linear-gradient(#f321ff 0%, #ff006e 100%);
    background-image: linear-gradient(#f321ff 0%, #ff006e 100%);
}

div.red2 div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#3700ff 0%, #ff00d4 100%);
    background-image: -moz-linear-gradient(#3700ff 0%, #ff00d4 100%);
    background-image: -o-linear-gradient(#3700ff 0%, #ff00d4 100%);
    background-image: linear-gradient(#3700ff 0%, #ff00d4 100%);
}

div.magenta div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: -moz-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: -o-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: linear-gradient(#6500ff 0%, #e500ff 100%);
}

div.yellow div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#ff00a5 0%, #ffa500 100%);
    background-image: -moz-linear-gradient(#ff00a5 0%, #ffa500 100%);
    background-image: -o-linear-gradient(#ff00a5 0%, #ffa500 100%);
    background-image: linear-gradient(#ff00a5 0%, #ffa500 100%);
}

div.infographic{
    background-attachment: fixed;
    text-align: center;
}

div.infographic  div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#d827c9 0%, #0003d8 100%);
    background-image: -moz-linear-gradient(#d827c9 0%, #0003d8 100%);
    background-image: -o-linear-gradient(#d827c9 0%, #0003d8 100%);
    background-image: linear-gradient(#d827c9 0%, #0003d8 100%);
    opacity: 0.83;
}

div.banner-shape[data-negative=false]{
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

div.banner-shape{
    bottom: -1px;
    overflow: hidden;
    position: absolute;
    left: 0;
    width: 100%;
    line-height: 0;
    direction: ltr;
}

div.banner-shape.arrow{
    display: none;
}

div.banner-shape svg{
    height: 55px;
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

div.banner-shape .elementor-shape-fill{
    fill: #fff;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
}

div.infographic .banner-shape{
    display: none;
}

div.infographic .banner-shape.arrow svg{
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 1%;
}

div.infographic div.banner-shape.arrow{
    display: block;
    top: -1px;
}

.banner-container-inner{
    min-height: 300px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative;
}

.banner-container-row{
    width: 100%;
}

.bannerholder{
    color: #fff;
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.3px;
}

.bannerholder a{
    color: #fff;
}

.bannerholder h2{
    color: #ffffff;
    font-size: 49px;
    line-height: 1.4em;
    font-family: "Nunito", Sans-serif;
    font-weight: 600;
    margin: 0 0 20px 0;
    padding: 0;
}

a.btn{
    display: inline-block;
    line-height: 1;
    background-color: #818a91;
    text-align: center;
    transition: all .5s;
    box-shadow: none;
    text-decoration: none;
    width: auto;
    color: #fff !important;
    opacity: .9;
    font-size: 16px;
    padding: 15px 30px;
    border-radius: 50px 50px 50px 50px;
    font-family: "Open Sans", Sans-serif;
    font-weight: 500;
    background-color: #d875d0;
    border: 0 !important;
}

a.btn.btn-large{
    padding: 40px;
    font-size: 20px;
}

a.btn i{
    color: #fff !important;
}

a.btn:hover,
a.btn:focus{
    background: #d875d0;
    opacity: 1;
}

a.btn-info{
    background-color: #7274d8 !important;
    border-radius: 50px 50px 50px 50px;
}

a.btn-success{
    background-color: #5bd880 !important;
    border-radius: 50px 50px 50px 50px;
}

a.btn-primary{
    background-color: #0023ea !important;
    border-radius: 50px 50px 50px 50px;
}

a.btn-danger{
    background-color: #ff00a1 !important;
    border-radius: 50px 50px 50px 50px;
}

a.btn-warning{
    background-color: #e8d000 !important;
    border-radius: 50px 50px 50px 50px;
}

.page-wide-modules a.btn{
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.page-wide-modules .blogarticle h2{
    color: #5658d8;
    font-size: 40px;
}

.page-wide-modules .blogarticle h2{
/*    line-height: 0.6em; */
}

.item-page{
    padding: 50px 0;
}

.items-leading > div,
.blog .blog-item{
    padding: 60px 0;
    border-top: 2px dotted #515151;;
    align-items: flex-start;
}
.blog .blog-item {
    flex-direction: row;
}
.newspage .blog .blog-item {
    flex-direction: column;
}
.blog .blog-item .item-content {
    flex-grow: 1;
}
.blog-item .item-image.right {
 width: 25%;
 flex-shrink: 0;
 flex-grow: 0;
 order: 2;
 margin: 0 0 0 5%;
 float: none;
}
.newspage .blog-item .item-image.right {
 order: unset;
 margin: 0;
}
.items-leading > div:first-child,
.blog .blog-items:first-child .blog-item:first-child{
    border: 0;
}

.items-leading{
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.3px;
}

.items-leading  h2{
    color: #5658d8;
    font-size: 40px;
}

table.schema{
    width: 100%;
}

table.schema tr{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}

table.schema tr td{
    width: 25%;
}

div.blogarticle{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

div.blogarticle .blogarticle-content{
    order: 2;
    width: auto;
    flex-grow: 1;
}

div.blogarticle .item-image{
    width: 25%;
    float: none !important;
    margin: 0;
    padding: 0;
    margin: 0 5% 0 0;
    flex-shrink: 0;
}

div.blogarticle .item-image.pull-right{
    order: 2;
    margin: 0 0 0 5%;
}

.perstable{
    width: 100%;
    text-align: center;
}

.perstable td{
    padding: 2.5%;
    width: 28%;
    line-height: 2;
}

.perstable td img{
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 50px;
}

.perstable h3{
    color: #515151 !important;
    font-weight: 400;
    font-family: "Open Sans", Sans-serif;
    line-height: 1.2;
    margin-bottom: 15px;
}

.perstable h3 .small{
    font-size: 75%;
}

.perstable a{
    color: #3a3a3a;
}

i.icon-mail,
i.icon-phone-2,
.perstable i{
    color: #5bd880 !important;
}

.centerpage .content {
    text-align: center;
}

.colorful .content h2{
    color: #5658d8;
}

.colorful .content h3{
    color: #d875d0;
}

.maptable tr td{
    padding: 0 15px;
}

.maptable tr td:first-child{
    padding-left: 0;
}

.maptable tr td:last-child{
    padding-right: 0;
}

.blog .item p i,
.maptable i{
    color: #5658d8;
}

blockquote{
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1;
    padding: 15px;
    border-radius: 1px;
}

blockquote.block-success{
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be;
}

.content table td{
    vertical-align: top;
}

.pricetable{
    margin-bottom: 25px;
}

.pricetable, .pricetable tbody{
    width: 100%;
}

.pricetable tr{
    display: flex;
    justify-content: center;
    align-content: center;
    width: 100%;
    flex-flow: wrap-reverse;
}

.pricetable tr td{
    flex-grow: 0;
    flex-shrink: 0;
    font-family: "Nunito", Sans-serif;
    font-weight: 600;
    font-size: 18px;
    color: #2d2121;
    padding: 10px 0;
}

.pricetable tr td:nth-child(2){
    flex-grow: 1;
    border-top: 2px dotted #7274d8;
    margin: auto 20px;
    height: 0;
    padding: 0;
}

h3.priceheading{
    font-size: 15px;
    color: #fff;
    background: #7274d8;
    margin: 10px 0;
    padding: 10px;
    border-radius: 3px;
}

h3.priceheading.blue{
    background: #4e50d8;
}

h3.priceheading.green{
    background: #5bd880;
}

h3.priceheading.magenta{
    background: #d875d0;
}

.pricetable.blue tr td:nth-child(2){
    border-color: #4e50d8;
}

.pricetable.green tr td:nth-child(2){
    border-color: #5bd880;
}

.pricetable.magenta tr td:nth-child(2){
    border-color: #d875d0;
}

.blog.newspage{
    display: flex;
    flex-wrap: wrap;
    padding: 60px 0;
}

.blog.newspage > div{
    padding-right: calc( 30px/2 );
    padding-left: calc( 30px/2 );
    padding-bottom: 35px;
    width: 33.3333%;
    box-sizing: border-box;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.blog.newspage .blogarticle{
    flex-wrap: wrap;
    -webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
    box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
    border-radius: 3px;
    border: 0 solid #818a91;
    align-items: flex-start;
    position: relative;
}

.blog.newspage .items-row > .span12, 
.blog.newspage .items-row .item, 
.blog.newspage .items-row .blogarticle{
    height: 100%;
} 

.blog.newspage .item{
    padding: 0 !important;
    border: 0 !important;
}

.blog.newspage .blogarticle > div{
    width: 100%;
}

.blog.newspage .blogarticle .blogarticle-content{
    order: 2 !important;
    padding: 0 25px;
    margin: 25px 0 0 0;
    height: calc(100% - 285px);
    position: relative;
}

.blog.newspage .blogarticle .item-image{
    order: 1 !important;
    margin: 0;
    height: 250px;
}

.blog.newspage .blogarticle .item-image img{
    width: 100% !important;
    height: 250px;
    object-fit: cover;
}

.blog.newspage .blogarticle .item-image a{
    position: relative;
    display: block;
}

.blog.newspage .blogarticle .item-image a:after{
    display: block;
    content: "";
    background-image: -webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.35)),color-stop(75%,transparent));
    background-image: -webkit-linear-gradient(bottom,rgba(0,0,0,.35),transparent 75%);
    background-image: -o-linear-gradient(bottom,rgba(0,0,0,.35) 0,transparent 75%);
    background-image: linear-gradient(0deg,rgba(0,0,0,.35),transparent 75%);
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    position: absolute;
    bottom: 0;
    opacity: 1;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.blog.newspage .blogarticle .item-image a:hover:after,
.blog.newspage .blogarticle .item-image a:focus:after{
    opacity: .5;
}

.newspage .blog h2 a{
    color: #4e50d8;
    font-size: 21px;
    line-height: 1.2em;
}

.blog.newspage h2 a:hover,
.blog.newspage h2 a:focus{
    color: #0066ff;
    text-decoration: none;
}

p.readmore a{
    color: #5bd880;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
}

.blog.newspage .article-info{
    border-top: 1px solid #eaeaea;
    padding: 15px;
    margin: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #adadad;
}

.blog.newspage .blog-inner{
    padding-bottom: 75px;
}

.blog.newspage .article-info .span{
    display: none;
}

.item-page.newspage .newspage-image .item-image{
    float: none !important;
    margin: 0 !important;
    padding-bottom: 60px;
}

.item-page.newspage .newspage-image .item-image img{
    width: 100% !important;
    object-fit: cover;
}

.item-page.newspage h2 a{
    color: #3a3a3a;
    font-size: 40px;
    line-height: 1.2em;
}

.item-page.newspage h2 a:hover,
.item-page.newspageh2 a:focus{
    color: #3a3a3a;
    text-decoration: none;
}

.mainfront{
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.3px;
}

.mainfront h2{
    color: #5658d8;
    font-size: 40px;
}

.mainfront h3{
    color: #3a3a3a;
    font-size: 24px;
}

.frontad table,
.frontad table tbody
.mainfront table, 
.mainfront table tbody{
    width: 100%;
}

.frontad table tbody tr,
.mainfront table tbody tr{
    display: flex;
}

.mainfront table tbody tr td{
    padding-right: calc( 30px/2 );
    padding-left: calc( 30px/2 );
    width: 33.3333%;
    box-sizing: border-box;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    font-size: 15px;
    line-height: 1.5em;
    letter-spacing: initial;
}

.frontad table tbody tr{
    justify-content: space-between;
}

.frontad table tr td{
    text-align: center;
    width: 45%;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.3px;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: flex-start;
    align-self: flex-start;
}

.frontreadmore{
    padding: 0 !important;
}

.frontad table, .frontad tr td h3{
    font-size: 30px;
    color: #fff;
}

.frontad div.banner-background-overlay{
    background-image: -webkit-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: -moz-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: -o-linear-gradient(#6500ff 0%, #e500ff 100%);
    background-image: linear-gradient(#6500ff 0%, #e500ff 100%);
}

.frontad .banner-container-inner{
    min-height: 100px;
    padding: 50px 0;
}

.banner-shape.downarrow svg{
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 10px;
}

div.banner-shape.downarrow{
    display: block;
    top: -1px;
}

.sharerow{
    background: #f8f8f8;
    padding: 20px 0;
    text-align: center;
}

.sharerow span.shareheading{
    display: block;
    padding: 0 0 10px 0;
}

.page-wide-modules > div{
    padding: 60px 0;
}

.div-frontreadmore{
    padding: 0 !important;
}

div.frontvideo{
    position: relative;
    background: #4e50d8;
    padding: 80px 0 0 0;
}

div.frontvideo div.video-shape{
    overflow: hidden;
    position: absolute;
    left: 0;
    width: 100%;
    line-height: 0;
    direction: ltr;
    z-index: 0;
}

div.frontvideo div.video-shape svg{
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: calc(100% + 1.3px);
    height: 52px;
}

div.frontvideo div.video-shape svg path{
    fill: #fff;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
}

div.frontvideo .video-shape-top {
    top: -1px;
}

div.frontvideo .video-shape-bottom {
    bottom: -1px;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

div.frontvideo .bannercontent{
    padding: 30px 0 0px 0;
    color: #fff !important;
    text-align: center;
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.3px;
    position: relative;
    z-index: 10;
}

div.frontvideo .bannercontent h2{
    color: #fff;
}

div.frontvideo .bannercontent a img{
    box-shadow: 6px 6px 15px 0px rgba(0,0,0,0.5);
}

div.frontvideo .bannercontent a{
    position: relative;
}

div.frontvideo .bannercontent a:after{
    content: "\e00d";
    color: #fff;
    font-family: 'IcoMoon';
    font-style: normal;
    speak: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 70px;
    text-shadow: 6px 6px 15px rgba(0,0,0,0.5);
}

.somead .banner-background-overlay{
    background: #3134d8 !important;
    opacity: 0.86;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
}

.frontvideobanner h2{
    font-size: 54px;
}

.frontvideobanner{
    text-align: center;
}

.frontvideobanner a.btn{
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 20px 40px;
}

.frontvideobanner div.banner-background-overlay{
    background-image: -webkit-linear-gradient(140deg, #0003d8 0%, #c100cc 100%);
    background-image: -moz-linear-gradient(140deg, #0003d8 0%, #c100cc 100%);
    background-image: -o-linear-gradient(140deg, #0003d8 0%, #c100cc 100%);
    background-image: linear-gradient(140deg, #0003d8 0%, #c100cc 100%);
}

.banner-shape.bottomarrow svg{
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: auto;
}

.frontvideobanner .banner-container-inner{
    min-height: 65vh;
    max-width: 1140px;
}

.background-video-container{
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    opacity: 0;
    transition: opacity 1s;
}

.background-video-container iframe{
    max-width: none;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
}

.view-featured a.btn:hover
.view-featured a.btn:focus{

}

#at4m-mobile-container,
#at4-share{
    display: none;
}

div.blogarticle .item-image img{
    width: 100% !important;
    max-width: 9999px !important;
    height: auto;
}

.blog .item,
.blog .items-leading > div{
    position: relative;
}

.iconmenu{
    position: absolute;
    top: 60px;
    right: 0;
}

.iconmenu a.btn{
    padding: 8px 15px !important;
}

.janone_layout p {
	margin-bottom: 0.8em;
}
.gm-style .gm-style-iw-d {
	text-align: left;
}
.gm-style .gm-style-iw-d > div > div > div:first-child {
	font-family: "Nunito", Sans-serif;
}
.gm-style .gm-style-iw-d p {
	margin-bottom: 1em;
}

body.com_phocamaps.view-map .content #phocamaps > div:last-child {
	display: none;
}
body.com_phocamaps.view-map .content #phocamaps  {
	margin-bottom: 20px;
}

#phocaMap > div {
	background: #232464 !important;
}

.page-wide-modules > div.international {
	padding: 0 15px;
}

.korvaavat .categories-list {
	margin-bottom: 50px;
}

.korvaavat .categories-list div {
	display: inline-block;
        border: 0;
}
.korvaavat .categories-list a {
	display: inline-block;
	width: 230px;
	height: 90px;
	background-color: #d875d0;
	border-radius: 10px;
	padding: 20px;
	color: white;
	margin: 10px;
	text-decoration: none;
}
.korvaavat .categories-list a:focus,
.korvaavat .categories-list a:hover {
	background-color: #bf65b7;
}

.projektit .com-content-category-blog__child a {
 display: inline-block;
 width: 45%;
 padding: 2rem;
 margin: 0 5% 5% 0;
 float: left;
/* border: 3px solid #f1c40f; */
 height: 100px;
	border-radius: 8px;
	background: #a9b505;
	color: white;
}
.projektit .com-content-category-blog__child a:hover {
	background: #b8cffd;
}
.vina-accordion-content {
	margin-bottom: 50px;
}

.com-content-category-blog.blog {
	margin-top: 4rem;
	margin-bottom: 4rem;
}

.newspage .blog .blog-item {
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	border-radius: 3px;
	border: 0 solid #818a91;
	padding: 0;
}
.newspage .blog-item .item-image {
	margin-top: 0;
	width: 100%;
	height: 250px;
}
.newspage .blog-item .item-image img {
	object-fit: cover;
	width: 100%;
	height: 250px;
}
.newspage .blog-item .item-content {
	padding: 1.5rem;
}

@supports (display: grid) {
	.blog-items {
		grid-gap: 2.5em;
	}
}

#ecwid_jwrapper {
 margin-top: 2rem;
}

iframe, svg {
    max-width: 100%;
}

body.error_site .container-header,
body.error_site {
 background: white;
}
body.error_site footer {
 display: none;
}

.item-content p {
	word-break: break-word;
}

@media (min-width: 768px) {
.topmenuholder.fixedmenu{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10001;
    transform: translateY(0) !important;
    transition: all 1s cubic-bezier(0.075, 0.82, 0.165, 1);
}
}

@media (max-width: 1200px) and (min-width: 980px){
    .blog.newspage > div{
        width: 50%;
    }

    .frontreadmore.blog.newspage > div{
        width: 33.3333%;
    }
}

@media (max-width: 979px) and (min-width: 768px){
    div.footercontent > .moduletable{
        width: 45%;
    }

    .blog.newspage > div{
        width: 100%;
    }

	d.blog-item .item-image,
	d.blog-item .item-image img,
    .blog.newspage .blogarticle .item-image,
    .blog.newspage .blogarticle .item-image img{
        height: 400px;
    }

    .blog.newspage .blogarticle .blogarticle-content{
        height: calc(100% - 435px);
    }

    .footercontent > .moduletable{
        margin: 10px 0;
    }

    ul.nav.topmenu > li > a{
        padding: 15px 10px;
    }

    .perstable h3{
        font-size: 17px;
    }

    .perstable td{
        padding: 2.5% 0;
        word-wrap: break-word;
    }

    .perstable td i{
        display: none;
    }

    .perstable tr:last-child td:last-child{
        background: #f7f7f7;
        vertical-align: middle;
    }

    .bannerholder h2{
        font-size: 38px;
    }
    .page-wide-modules > div.international {
        padding: 0 22px;
    }
}

@media (max-width: 767px){
    body{
        padding: 0;
    }

    .container{
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    div.inside-footer{
        padding: 20px 0 10px 0;;
    }

    div.footercontent > .moduletable{
        width: 100%;
        margin: 15px 0;
    }

    .blog.newspage > div{
        width: 100%;
    }

	.blog-item .item-image,
	.blog-item .item-image img,
    .blog.newspage .blogarticle .item-image,
    .blog.newspage .blogarticle .item-image img{
        height: 300px;
    }

    .blog.newspage .blogarticle .blogarticle-content{
        height: calc(100% - 335px);
    }

    div.blogarticle{
        flex-wrap: wrap;
    }

    div.blogarticle .blogarticle-content{
        width: 100%;
        order: 1 !important;
        margin-bottom: 15px;
    }

    div.blogarticle .item-image{
        width: 100%;
        order: 2 !important;
        margin: 0 !important;
    }

    .items-leading  h2,
    .bannerholder h2,
    .frontvideobanner h2,
    .page-wide-modules .blogarticle h2{
        font-size: 30px;
        line-height: 1.2em !important;
    }

    .frontad table tbody tr td, 
    .mainfront table tbody tr td{
        width: 100% !important;
        padding: 15px 0;
    }

    .frontad .banner-container-inner{
        padding: 15px 0;
    }

    .frontvideobanner table td{
        display: block;
        width: 100%;
        padding: 20px 0 0 0;
    }

    .inside-header{
        display: block;
        padding: 0;
    }

    .inside-header > div{
        padding: 15px 0;
    }

    div.pagelogo{
        text-align: center;
        padding: 25px 0 0 0;
    }

    div.headermodules{
        justify-content: center;
    }

    .content table:not(.pricetable) td,
    .perstable td{
        width: 100% !important;
        display: block !important;
        padding: 15px 0 !important;
    }

    .mobileheader{
        display: flex !important;
        align-items: center;
        padding: 10px 0;
        justify-content: space-between;
    }

    .mobilelogo img{
        display: none;
    }

    .fixedmenu .mobilelogo img{
        display: inherit;
    }

    .mobiletrigger{
        width: 26px;
        height: 26px;
        display: block;
        position: relative;
    }

    .menu-hamburger{
        box-sizing: border-box;
        display: block;
        cursor: pointer;
        position: relative;
        transform: translateY(-50%);
        top: 50%;
        position: absolute;
        height: 26px;
        width: 26px;
    }

    .menu-hamburger:before,
    .menu-hamburger:after,
    .menu-hamburger span{
        background: #f1c40f;
        content: '';
        display: block;
        width: 24px;
        height: 4px;
        position: absolute;
        left: 0;
    }

    .menu-hamburger:before{
        top: 4px;
    }

    .menu-hamburger span{
        top: 12px;
        transform: translateY(0);
    }

    .menu-hamburger:after{
        top: 20px;
    }

    .menu-hamburger:before,
    .menu-hamburger:after,
    .menu-hamburger span{
        will-change: background, opacity;
        -webkit-transition: none 0.5s ease;
        transition: none 0.5s ease;
        -webkit-transition-property: transform, top, bottom, left, opacity, background;
        transition-property: transform, top, bottom, left, opacity, background;
    }

    .mobilenav-active .menu-hamburger:before,
    .mobilenav-active .menu-hamburger:after{
        top: 12px;	
    }

    .mobilenav-active .menu-hamburger span{
        transform: translateX(50px);
        opacity: 0;
        background: #f1c40f;;
    }

    .mobilenav-active .menu-hamburger:before{
        transform: rotate( 45deg );
        background: #f1c40f;;
    }

    .mobilenav-active .menu-hamburger:after{
        transform: rotate( -45deg );
        background: #f1c40f;;
    }

    ul.nav.topmenu{
        max-height: 0;
        transition: max-height 0.5s ease-out;
        overflow: hidden;
        will-change: max-height;
    }

    .mobilenav-active ul.nav.topmenu{
        max-height: 100vh;
        transition: max-height 0.5s ease-in;
    }

    ul.nav.topmenu > li{
        display: block;
    }

    ul.nav.topmenu li a{
        padding: 15px;
    }

    ul.nav.topmenu ul{
        position: relative;
        width: 100%;
    }

    .frontad table tbody tr,
    .mainfront table tbody tr{
        display: flex;
        flex-wrap: wrap;
    }
    .page-wide-modules > div.international {
        padding: 0 15px;
    }
    .page-wide-modules > div.international img {
        object-fit: cover;
        height: 50px;
        object-position: left;
    }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .frontad table tbody tr,
    .mainfront table tbody tr{
        display: table-row;
    }

    .pricetable tr{
        display: table-row;
    }

    .pricetable tr td{
        border-bottom: 1px dotted #818a91;
    }

    .pricetable tr td:last-child{
        text-align: right;
    }

    div.bottomarrow{
        height: 15px !important;
    }
 }