html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}input,textarea,select{box-sizing: border-box;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;}.clear{clear:both;}button{-webkit-appearance: none;}
input[type='number']::-webkit-inner-spin-button, 
input[type='number']::-webkit-outer-spin-button { 
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"]{
  -moz-appearance:textfield;
}

h1, h2, nav, .aReplace, .btn, .specHeading, .simple3columns em strong, .simple3columns strong em, .simple2columns td h3 + ol li:before, .servicesText table tr:first-child td, 
.servicesText table tr td:first-child, .calc, .kpiCalc .chart h3, .kpiCalc .calc .inputs .inputOverlay input, .kpiCalc .calc .inputs .inputOverlay, .jsSlider.ui-widget, .carouselBlock, .popupModal h1, footer .table-cell h3, .flexiChart h3,.kpiCalc .calc .inputs label{ font-family: 'IBM Plex Sans', sans-serif;  }

.table{ display: table; border-collapse: collapse;}
.table-cell{ display: table-cell; vertical-align: top;}
.table-row{ display: table-row;}
html{ margin: 0; height: 100%;}
body{font-family: 'IBM Plex Sans', sans-serif; font-size:13.5px; line-height:1.428571429; color:#1e2e5d; background-color:#ffffff; height: 100%; margin: 0;}
input, select, button, textarea{ font-family: 'IBM Plex Sans'; font-size: 14px; }

.wrapper{ max-width: 1066px; width: 100%; margin: 0 auto; position: relative;} 
.center{ width: 100%; text-align: center;}

.hidden{ display: none;}
.prepEmail{ display: none;}
img{vertical-align: middle;}

.cookiesMsg{ position: fixed; bottom: 0; width: 100%; left: 0; background: #1e2e5d; padding: 20px 0; z-index: 500;}
.cookiesMsg .wrapper{ width: 775px;}
.cookiesMsg .table-cell:first-child{ color: #FFF; font-size: 12px; line-height: 16px; width: calc(100% - 110px);}
.cookiesMsg .table-cell:first-child a{ color: #4580c1; font-style: italic; text-decoration: underline;}
.cookiesMsg .table-cell:last-child{ text-align: left;}
.cookiesMsg .table-cell:last-child .btn{ min-width: 110px;}

.btn{ text-decoration: none; color: #FFF; font-size: 14px; line-height: 38px; padding: 0 30px; background: #3a86cc; font-weight: 500; display: inline-block; border: none; cursor: pointer; white-space: nowrap;}

.popupModal{ width: 100%; height: 100%; position: fixed; top: 0; left: 0; background-color: rgba(30, 46, 93, 0.79); z-index: 520; overflow: hidden;}
.popupModal .popupMsg{ z-index: 521; position: absolute; top: 50%; left: 50%; background: #FFF; width: calc(100% - 46px); max-width: 430px; transform: translate(-50%, -50%); padding-top: 95px; text-align: center; color: #000;}
.popupModal .popupMsg:before{ content: ""; width: 100%; height: 85px; background: url(images/SI_kluda-01.svg) no-repeat center top 37px; position: absolute; top: 0; left: 0;border-top-left-radius: 15px;border-top-right-radius: 15px; background-size: 54px 47px;}
.popupModal .popupMsg.success:before{ background: url(images/SI_nosutits-01.svg) no-repeat center top 37px; background-size: 54px 47px;}
.popupModal .popupMsg h1{ font-weight: 700; font-size: 25px; margin: 0px 0 15px 0; color: #004c7f; }
.popupModal .popupMsg div{ width: 100%; display: inline-block;}
.popupModal .popupMsg div p{ font-size: 14px; line-height: 20px; margin-bottom: 20px; color: #004c7f; font-weight: 700;}
.popupModal .popupMsg div input[type=button]{ min-width: 110px; margin-bottom: 35px;}

header{ height: 100px; display: inline-block; width: 100%; position: fixed; top: 0px; left: 0; z-index: 300; background: #FFF;}
header.fixed{ top: 0px;}
header .wrapper{ height: 100px; }
header .logo{ text-indent: -9999px; background: url(images/BF-Group-logo-tagline-01.svg) no-repeat; display: inline-block; width: 222px; height: 58px; margin-top: 25px; margin-left: 0; background-size: 222px 58px;}

nav.mainMenu{float: right; background: #FFF; margin-right: 0; margin-top: 52px;}
nav.mainMenu ul li:focus ul, nav.mainMenu ul li:hover ul { visibility: visible;opacity: 1;z-index: 1;transform: translateY(0%); }
nav.mainMenu ul, nav.mainMenu ul li { list-style-type: none; padding: 0; margin: 0; }
nav.mainMenu.diffMenu{ background: rgba(132, 153, 56, 0.6);}
nav.mainMenu.fixed{ position: fixed; top: 0; left: 0; z-index: 150;background: #FFF;}
nav.mainMenu ul{ float:right;}
nav.mainMenu ul li{ float:left; margin-right: 5px;}
nav.mainMenu ul li:last-child{ margin-right: 0px;}
nav.mainMenu ul li a{ display: inline-block; font-size: 13.5px; color: #1e2e5d; text-decoration: none; font-weight: 500; line-height: 48px; padding: 0 5px;}
nav.mainMenu ul li.langMenu a{ border: 1px solid #000; border-radius: 50%; margin-left: 20px; min-height: unset;}
nav.mainMenu ul li a:hover, nav.mainMenu ul li.active a{ background: #1e2e5d; color: #FFF;}
.mobileMenuSelector{ display: none;}

nav.mainMenu ul li { position: relative; }

.langMenuBlock{ position: absolute; top: 0; right: 0;}
.langMenuBlock li{ float: left;}
.langMenuBlock a{ text-decoration: none; color: #3a86cc; font-size: 16px; font-weight: 500; padding: 4px 5px;}
.langMenuBlock .active a, .langMenuBlock a:hover{ background: #3a86cc; color: #FFF; }


.headerBg{ width: 100%; max-width: 2561px; height: 500px; background: #1e2e5d; }
.headerBg .table-cell{ text-align: center; vertical-align: bottom; -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;}
.headerBg .table-cell img{ position: absolute; top: 50%;  left: 50%; transform: translate(-50%, -50%);}
.rotationBlock{height: 500px; width: 100%; display: block; margin: 100px auto 0 auto; position: relative; z-index: 1; overflow: hidden; background: #1e2e5d;}
.rotationBlock.rotationBlock2{height: 570px; text-align: center;}
.rotationBlock.rotationBlock2 .headerBg{height: 500px; margin-top: 150px;}
.rotationBlock .rotatingImage{ width: 100%; display: inline-block; height: 100%; background-position: center bottom !important; background-color: #1e2e5d !important;}
.rotationBlock .rotatingImage div.aReplace{ position: absolute; top: 182px; left: 0; width: 100%; text-align: left;}
.rotationBlock .rotatingImage div.aReplace .slogan{ font-size: 57px; font-weight: 700; color: #1e2e5d; background: rgba(255, 255, 255, 0.75); padding: 29px 39px 65px 39px; line-height: 57px; float: left;}
.rotationBlock .rotatingImage div p{ margin-top: 275px;}
.rotationBlock .rotatingImage div strong{ font-size: 30px; line-height: 38px;font-weight: 500; text-shadow: 2px 2px #000;}
.cyclePagerWrapper { position: absolute; top: 288px; z-index: 120; width: 100%;}
.cyclePagerWrapper .cycle-pager{ margin-left: 39px; width: auto;}
.cycle-pager span { width: 11px; height: 10px; display: inline-block; cursor: pointer; text-indent:-9999px; margin-right: 7px; background: #1e2e5d;}
.cycle-pager span:last-child{ margin-right: 0px;}
.cycle-pager span.cycle-pager-active { background: #4580c1;}
.cycle-pager > * { cursor: pointer;}

.fpBlock{ width: 100%; float: left; padding: 60px 0 45px 0;}
.fpBlock.block49, .fpBlock.block55{ color: #FFF; background: #1e2e5d;}
.fpBlock.block50, .fpBlock.block38, .fpBlock.block52{ background: #dfe1e8;}
.fpBlock.block50 .wrapper, .fpBlock.block51 .wrapper, .fpBlock.block52 .wrapper, .fpBlock.block55 .wrapper{ max-width: 694px;}
.fpBlock h1, .fpBlock h2{ text-align: center; font-size: 32px; font-weight: 700;  line-height: 32px; margin-bottom: 35px;}
.fpBlock .description{ font-weight: 500; font-size: 13px; line-height: 17px; text-align: justify;}
.fpBlock .description.extraDescription{ display:none;}
.fpBlock p, .fpBlock li{ margin-bottom: 18px; }
.fpBlock em{ font-style: italic; }
.fpBlock ul{ margin-left: 17px;}
.fpBlock ul li{ list-style-type: disc; }
.fpBlock.block49 ul li{ text-align: left; }
.fpBlock table{ width: 100%; table-layout: fixed; border-collapse: collapse;}
.fpBlock table td{ padding-right: 23px; padding-left: 23px; vertical-align: top;}
.fpBlock table td:last-child{ padding-right: 0px;}
.fpBlock table td:first-child{ padding-left: 0;}
.fpBlock .readMoreButton{ margin: 25px auto 0 auto; display: block;}
.fpBlock .readMoreButton.mobileOnly{ display: none;}

.fpBlock .form{ width: 100%; text-align: center; }
.fpBlock .form input[type=text], .fpBlock .form input[type=email]{ width: 100%; height: 40px; border: none; font-size: 14px; font-weight: 15px; color: #1e2e5d; padding: 0 12px; margin-bottom: 8px;}
.fpBlock .form textarea{ width: 100%; height: 140px; border: none; font-size: 14px; font-weight: 15px; color: #1e2e5d; padding: 15px 12px;margin-bottom: 10px;}

.contactsDetails{ font-size: 16px; text-align: center; margin-bottom: 12px; display: inline-block; width: 100%;}
.contactsDetails h1{ font-weight: 500; font-size: 30px; padding: 42px;}
.contactsDetails strong{ font-weight: bold;}
.contactsDetails p{ margin-bottom: 28px;}

.addressBlock p{ margin-bottom: 13px; }
.addressBlock p:last-child{ margin-bottom: 0; }
.addressBlock strong{ font-weight: bold; font-size: 14px; }
.addressBlock a{ color: #1e2e5d; text-decoration: none; }
.addressBlock a:hover{text-decoration: underline; }

.footerAddress{ padding-left: 28px; position: relative;}
.footerAddress:before{ content: ''; background: url('images/Pin.svg') no-repeat; background-size: 17px 23px; width: 17px; height: 23px; position: absolute; left: 0; top: -3px; display: block;}
.footerPhone{ padding-left: 28px; position: relative;}
.footerPhone:before{ content: ''; background: url('images/Telefons.svg') no-repeat; background-size: 21px 21px; width: 21px; height: 21px; position: absolute; left: 0; top: -2px; display: block;}
.footerEmail{ padding-left: 28px; position: relative;}
.footerEmail:before{ content: ''; background: url('images/E-pasts.svg') no-repeat; background-size: 21px 21px; width: 21px; height: 21px; position: absolute; left: 0; top: -2px; display: block;}


footer{ width: 100%; display: inline-block; position: relative; text-align: center; background: #1e2e5d; color: #FFF; height: 80px; }
footer .copyright{ font-size: 14px; font-weight: 500; height: 80px; width: 100%;}
footer .copyright .table-cell{ text-align: center; vertical-align: middle;}
footer .copyright a{ color: #FFF; text-decoration: none;}
footer .copyright a:hover{text-decoration: underline;}

::placeholder { color: #1e2e5d; opacity: 1; font-weight: 500;}
:-ms-input-placeholder { color: #1e2e5d;font-weight: 500;}
::-ms-input-placeholder { color: #1e2e5d; font-weight: 500;}

@media screen and (max-width: 1120px){
	.wrapper{ width: 94%;}
}

@media screen and (max-width: 1060px){
	nav.mainMenu ul li{ margin-right: 0px;}
	nav.mainMenu ul li a{ padding: 0 4px;}
	.headerBg{ height: 350px;}
	.rotationBlock{height: 350px;}
	.rotationBlock .wrapper{width: calc(100% - 26px);}
	.rotationBlock .rotatingImage div.aReplace{ top: 130px; }
	.rotationBlock .rotatingImage div.aReplace .slogan{ padding: 20px 28px 40px 25px; font-size: 40px;}
	.cyclePagerWrapper { top: 214px;}
	.cyclePagerWrapper .cycle-pager{ margin-left: 30px;}
	
}

@media screen and (max-width: 1024px){
	.carouselBlock .slider .item{ width: 100% !important;}
	header{ height: 50px;}
	header .wrapper{ height: 50px; width: 100%;}
	header .logo{ width: 104px; height: 30px; margin-top: 10px; background-size: 104px 30px; margin-left: 23px; }
	.rotationBlock{ margin-top: 50px;}
	.langMenuBlock{top: 12px; right: 58px;}
	.mobileMenuSelector{ display: block; float: right; width: 28px; height: 24px; background: url(images/SI_mob_burger-01.svg) no-repeat; margin-top: 12px; background-size: 28px 24px; cursor: pointer; margin-right: 23px;}
	.mobileMenuSelector.opened{ width: 26px; height: 26px; background: url(images/SI_mob_X-01.svg) no-repeat; background-size: 26px 26px;}
	
	.mainMenu{ display: none;}
	.mainMenu.opened{ display: block;}
	nav.mainMenu{ width: 100%;  margin: 0; background-color: #FFF; margin-top: 10px; height: unset; padding-bottom: 0; z-index: 200;}
	nav.mainMenu ul{ margin-top: 0; width: 100%;}
	nav.mainMenu ul li:first-child{ border-top: 2px solid #b9becd; }
	nav.mainMenu ul li{ width: 100%;text-align: center; font-size: 14px; font-weight: 500; border-bottom: 2px solid #b9becd; }
	nav.mainMenu ul li.active{ border-color: #1e2e5d; }
	nav.mainMenu ul li a{ margin-top: 0; width: 100%; height: 100%;}
	nav.mainMenu ul li.active a{ color: #FFF;}
	
	.cycle-pager{ width: auto; left: 10%; margin-left: 0;}
	.wrapper{width: calc(100% - 46px);}
	.cookiesMsg .wrapper{ width: calc(100% - 46px); display: block;}
	.cookiesMsg .table-cell, .cookiesMsg .table-cell:first-child, .cookiesMsg .table-cell:last-child{ display: block; width: 100%; text-align: center;}
	.cookiesMsg .table-cell:first-child{ margin-bottom: 18px;}
	
	.fpBlock table td img{ max-width: 100%; height: auto;}
	
	
}


@media screen and (max-width: 745px){
	.headerBg{ height: 260px;}
	.rotationBlock{height: 260px;}
	.rotationBlock .rotatingImage div.aReplace{ top: 80px;}
	.rotationBlock .rotatingImage div.aReplace .slogan{ padding: 5px 28px 35px 25px; font-size: 30px;}
	.cyclePagerWrapper { top: 155px;}
	.fpBlock .description{ font-size: 14px; line-height: 18px;}
	.fpBlock table, .fpBlock table tr, .fpBlock table td{ display: inline-block; width: 100%; margin: 0; padding:0;}
	.fpBlock p{ margin-bottom: 27px;}
	.fpBlock li{ margin-bottom: 20px;}
	.fpBlock{ padding-top: 23px;}
	.fpBlock .form{ margin-bottom: 23px; }
	.fpBlock img{ max-width: 100%; height: auto; display: block; margin: 0 auto 27px auto;}
	
	.fpBlock .descr48 td, .fpBlock .descr52 td{ display: none;}
	.fpBlock.block48 .readMoreButton, .fpBlock.block52 .readMoreButton{ margin-top: 0;}
	.fpBlock .descr48 td:first-child, .fpBlock .descr52 td:first-child{ display: inline-block;}
	.fpBlock .readMoreButton.mobileOnly{ display: block;}
}
	
	
@media screen and (max-width: 560px){
	.headerBg{ height: 220px;}
	.rotationBlock{height: 220px;}
	.rotationBlock .rotatingImage div.aReplace{ top: 80px; }
	.rotationBlock .rotatingImage div.aReplace .slogan{ padding: 17px 15px 30px 13px; font-size: 25px; line-height: 25px;}
	.cyclePagerWrapper { top: 132px;}
	.cyclePagerWrapper .cycle-pager{ margin-left: 15px;}
	.cycle-pager span{ width: 6px; height: 6px; margin-right: 4px;}
	.fpBlock h1, .fpBlock h2{ font-size: 20px; line-height: 26px; margin-bottom: 23px;}
	
}

@media screen and (max-width: 325px){
	.fpBlock img{ max-width: calc(100% + 46px); margin-left: -23px;}
}

