/*------------------------RESET---------------------------*/
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, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ul,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; text-decoration:none; list-style-type: none;}
article, aside, details, figcaption, figure, hgroup, menu, nav, section { display: block; }
/*------------------------------------------------------*/
html, body                                      {width: 100%; height: 100%; font-size: 46px;}
body                                            {overflow-x: hidden; overflow-y: auto; font-family: 'Roboto', sans-serif; background: white;}
  @media screen and (max-width: 1200px)         {html, body {font-size: 44px;}}
  @media screen and (max-width: 1150px)         {html, body {font-size: 42px;}}
  @media screen and (max-width: 1100px)         {html, body {font-size: 40px;}}
  @media screen and (max-width: 1050px)         {html, body {font-size: 38px;}}
  @media screen and (max-width: 1000px)         {html, body {font-size: 36px;}}
  @media screen and (max-width: 950px)          {html, body {font-size: 34px;}}
  @media screen and (max-width: 900px)          {html, body {font-size: 32px;}}
  @media screen and (max-width: 850px)          {html, body {font-size: 30px;}}
  @media screen and (max-width: 800px)          {html, body {font-size: 28px;}}
  @media screen and (max-width: 750px)          {html, body {font-size: 26px;}}
  @media screen and (max-width: 700px)          {html, body {font-size: 24px;}}
  @media screen and (max-width: 650px)          {html, body {font-size: 22px;}}
  @media screen and (max-width: 600px)          {html, body {font-size: 20px;}}
  @media screen and (max-width: 550px)          {html, body {font-size: 18px;}}
  @media screen and (max-width: 500px)          {html, body {font-size: 16px;}}
  @media screen and (max-width: 450px)          {html, body {font-size: 14px;}}
  @media screen and (max-width: 400px)          {html, body {font-size: 12px;}}
  

.wrapper                                        {display: flex; margin-left: auto; margin-right: auto; width: 1248px; box-sizing: border-box; flex-wrap: wrap;}
.content                                        {display: block; width: 100%; min-height: 100%; padding-top: 100px; box-sizing: border-box; position: relative;}
.hp .content                                    {padding-top: 0;}
  @media screen and (max-width: 1300px)         {
  .wrapper                                      {margin: 0 2%; width: 96%;}
  .content                                      {padding-top: 80px;}
  }

#header                                         {display: block; width: 100%; height: 100px; padding: 20px 0; box-sizing: border-box; position: fixed; top: 0; left: 0; z-index: 1000; -webkit-transition: height .35s ease-in-out; transition: height .35s ease-in-out;}
.page #header                                   {background: #34495e !important;}
#header a.logo img                              {width: auto; height: 100%;}
#header .wrapper                                {display: flex; height: 100%; justify-content: space-between; align-items: center;}
#header a.logo                                  {display: block; width: auto; height: 100%;}
#header .menu                                   {display: block; width: auto; height: 100%;} 
#header .menu #navicon                          {display: none;}
#header .menu nav                               {display: flex; width: auto; height: 100%; align-items: center;}
#header .menu nav a                             {display: block; width: auto; height: auto; color: white; margin: 0 0.5rem; font-size: 14px; font-weight: 900; line-height: 1em; text-transform: uppercase; -webkit-transition:.15s ease-in-out; transition: .15s ease-in-out;}
#header .menu nav a.cross                       {display: none;}
#header .menu nav a:hover                       {color: #e74c3c;}
#header .menu nav a.active                      {color: #e74c3c; border-bottom: solid 2px #e74c3c;}
  @media screen and (max-width: 860px)          {
  #header                                       {height: 80px; padding: 15px 0;}
  #header .menu #navicon                        {display: flex; width: 60px; height: 100%; align-items: center;}
  #header .menu #navicon a                      {display: flex; width: 100%; height: 30px; background: URL('/images/navicon.svg') no-repeat center top; background-size: 30px auto; box-sizing: border-box;}
  #header .menu #navicon a:hover                {background-position: center -30px; cursor: pointer;}
  #header .menu nav.MyDropdown                  {display: block; position: fixed; width: 230px; right: -280px; top: 0; height: 100%; padding: 68px 30px 15px; box-sizing: border-box; background: #34495e; -webkit-transition: 0.4s; -moz-transition: 0.4s; transition: 0.4s; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);}
  #header .menu nav.show                        {right: 0;}
  #header .menu nav a                           {display: inline-block; padding: 0; margin-bottom: 30px;}
  #header .menu nav a.cross                     {display: block; position: absolute; top: 15px; right: 15px; width: 30px; height: 30px; background: URL('/images/navicon.svg') no-repeat center -60px; background-size: 100% auto; -webkit-transition: none; -moz-transition: none; transition: none;}
  #header .menu nav a.cross:hover               {background-position: center -90px; cursor: pointer;}
  }

#footer                                         {display: block; width: 100%; height: auto; background: #34495e; position: absolute; bottom: 0; left: 0;}
#footer .wrapper                                {height: 100%; padding: 30px 0; box-sizing: border-box;}
#footer .col                                    {display: block; width: 33.33%; min-height: 100%; padding: 15px 40px 30px; box-sizing: border-box; border-right: solid 1px #1d2936;}
#footer .col:last-child                         {border-right: none;}
#footer .col img                                {display: block; width: auto; height: 60px; margin-bottom: 30px;}
#footer .col h2                                 {display: block; margin-bottom: 20px; font-size: 18px; color: #1d2936; font-weight: 900; text-transform: uppercase;}
#footer .col a                                  {display: block; font-size: 20px; color: white; font-weight: 400; margin-bottom: 3px;}
#footer .col a:hover                            {text-decoration: underline;}
#footer .col a.mail                             {font-weight: 900; padding: 5px 0 5px 55px; margin-left: 24px; background: URL('/images/footer-icon-mail.svg') no-repeat left top; background-size: auto 100%; margin-bottom: 7px;}
#footer .col a.tel                              {font-weight: 900; padding: 5px 0 5px 55px; margin-left: 24px; background: URL('/images/footer-icon-tel.svg') no-repeat left top; background-size: auto 100%;}
#footer .col ul                                 {;}
#footer .col ul li                              {;}
#footer .col ul li:last-child a                 {margin-bottom: 0;}
  @media screen and (max-width: 1240px)         {
  #footer .col                                  {padding: 10px 25px 20px;}
  #footer .col img                              {height: 50px; margin-bottom: 20px;}
  #footer .col h2                               {font-size: 16px;}
  #footer .col a                                {font-size: 16px; text-shadow: 0px 0px 3px rgba(0,0,0,0.4);}
  #footer .col a.tel, #footer .col a.mail       {padding: 3px 0 3px 35px; margin-left: 22px;}
  }
  @media screen and (max-width: 960px)          {
  #footer .col                                  {width: 100%; padding: 30px 0; border-right: none; border-bottom: solid 1px #1d2936; text-align: center;}
  #footer .col img                              {height: auto; width: 200px; margin: 0px auto 45px;}
  #footer .col:last-child                       {border-bottom: none;}
  #footer .col a                                {font-size: 16px; padding-left: 0;}
  #footer .col a.tel, #footer .col a.mail       {padding: 42px 0 0; margin-top: 20px; margin-left: 0; background-position: center top; background-size: auto 35px;}
  }

/* GENERAL */
.button                                         {display: inline-block; padding: 14px 28px; border-style: solid; font-weight: 500; border-width: 2px; box-sizing: border-box; cursor: pointer; text-transform: uppercase; -webkit-transition: .15s ease-in-out; transition: .15s ease-in-out;}
.button span                                    {font-weight: 900;}
.button.red                                     {background: #e74c3c; color: white; border-color: #e74c3c;}
.button.red:hover                               {background: #d43b2b; border-color: #d43b2b;}
.button.red.disabled:hover                      {background: #e74c3c; color: white; border-color: #e74c3c; cursor: default;}
.button.blue                                    {background: #34495e; color: white; border-color: #34495e;}
.button.blue:hover                              {background: #203346; border-color: #203346;}
.button.border                                  {color: white; border-color: white;}
.button.border:hover                            {background: white; color: black;}
select                                          {display: block; width: 240px; height: 40px; padding: 0 8px; box-sizing: border-box; border: none; outline: none; cursor: pointer; background: URL('/images/select-arrow.jpg') no-repeat right top, white; background-size: auto 40px, cover;}
select::-ms-expand                              {display: none;}
select                                          {-webkit-appearance: none; appearance: none; -moz-appearance: none;}
   
.input1                                         {display: block; width: 200px; height: 40px; padding: 0 8px; box-sizing: border-box; background: white; border: none; outline: none;}                                         
textarea                                        {display: block; height: 100px; padding: 8px; border: solid 2px white; outline: none; box-sizing: border-box;}
input.chk1:not(:checked), input.chk1:checked    {position: absolute; left: -9999px;}
input.chk1:not(:checked) + label,
input.chk1:checked + label                      {display: block; position: relative; height: 34px; cursor: pointer;}
input.chk1:not(:checked) + label:before,
input.chk1:checked + label:before               {content: ""; display: block; width: 34px; height: 34px; margin-right: 15px; background-image: URL('/images/checkbox.svg'); background-size: 100% 300%;}
input.chk1:not(:checked) + label:before         {background-position: left top;}
input.chk1:not(:checked) + label:hover:before   {background-position: left center;}
input.chk1:checked + label:before               {background-position: left bottom;}
.button:focus, textarea:focus, input:focus,
.select:focus, input.chk1:checked:focus + label:before,
input.chk1:not(:checked):focus + label:before   {border: dashed 1px #c2c2c2 !important; box-sizing: border-box;}
label span                                      {color: #ed1c24;}
.section                                        {display: block; width: 100%; padding: 1.4rem 0;}
.heading1                                       {display: block; width: 100%; font-size: 40px; font-weight: 900; color: #e74c3c; text-align: center; margin-bottom: 1rem;}
h1.heading1                                     {font-size: 60px;}
.areaImg                                        {padding: 1rem 0; background: URL('/images/areaImg.jpg') no-repeat center center; background-size: cover; position: relative;}
.areaImg .wrapper                               {display: flex; width: auto; height: auto; justify-content: center; align-items: center; padding: 0.8rem 0;}
.areaImg .wrapper .title                        {display: block; font-size: 26px; font-weight: 600; color: white; margin-right: 1rem;}
.areaImg .wrapper .button                       {font-size: 15px; margin: 10px 0;}
.areaText                                       {background: #ebf0f2;}                                                                  
.areaText p                                     {display: block; width: 100%; font-size: 22px; font-weight: 400; color: #3d3d3d; text-align: justify; margin-top: 15px;}
.areaText p:first-child                         {margin-top: 0;}
.coop .wrapper                                  {justify-content: center;}                                           
.coop .wrapper > a                              {display: flex; align-items: flex-end; width: auto; height: 60px; margin: 20px; overflow: hidden;}
.coop .wrapper > a img                          {display: block; width: auto; height: 200%; opacity: 0.65; -webkit-filter: grayscale(50%); filter: grayscale(50%); -webkit-transition: .15s ease-in-out; transition: .15s ease-in-out;}
.coop .wrapper > a:hover                        {align-items: flex-start;}
.coop .wrapper .footer-button                   {display: flex; width: 100%; justify-content: center; margin-top: 50px;}
.coop .wrapper .footer-button .button           {font-size: 18px; font-weight: 300; text-transform: none; padding: 12px 40px;}
  @media screen and (max-width: 1080px)         {
  .areaImg .wrapper .title                      {width: 100%; text-align: center; margin-right: 0;}  
  }  
  @media screen and (max-width: 900px)          {
  .section                                      {padding: 2.5rem 0;}
  .heading1                                     {font-size: 26px;}
  h1.heading1                                   {font-size: 54px;}
  .areaImg .wrapper                             {padding: 1rem 0;}
  .areaImg .wrapper .title                      {font-size: 22px;}
  .areaImg .wrapper p                           {font-size: 18px;}
  .areaImg .wrapper .button                     {font-size: 14px; padding: 10px 20px;}  
  .areaText p                                   {font-size: 16px;}
  .coop .wrapper > a                            {height: 50px; margin: 16px;}
  }
  @media screen and (max-width: 640px)          {
  h1.heading1                                   {font-size: 42px;}
  .coop .wrapper > a                            {height: 40px; margin: 12px;}
  } 

.hp .top                                        {width: 100%; height: auto; padding: 4rem 0; background: URL('/images/img1.jpg') no-repeat center center; background-size: cover;}    
.hp .top .box                                   {display: flex; justify-content: center; flex-wrap: wrap; text-align: center; max-width: 640px; height: auto; margin: 0 auto; padding: 0 30px; box-sizing: border-box;}
.hp .top .box p                                 {color: white; font-size: 18px; font-weight: 400; margin-top: 40px;}
.hp .top .box h1                                {color: white; font-size: 56px; font-weight: 500; margin-top: 40px; line-height: 1.2em;}
.hp .top .box .buttons                          {display: block; width: 100%; margin-top: 20px;}
.hp .top .box .buttons a                        {width: 190px; font-size: 16px; margin: 0 3px;}
  @media screen and (max-width: 900px)          {
  .hp .top                                      {padding: 5rem 0;}
  .hp .top .box h1                              {font-size: 46px;}
  .hp .top .box p                               {font-size: 16px;}
  .hp .top .box .buttons a                      {width: 166px; font-size: 13px;}
  }
  @media screen and (max-width: 640px)          {
  .hp .top                                      {padding: 6rem 0;}
  .hp .top .box h1                              {font-size: 36px;}
  .hp .top .box p                               {font-size: 14px;}
  .hp .top .box .buttons a                      {width: 156px; font-size: 12px;}
  }               
  @media screen and (max-width: 420px)          {
  .hp .top                                      {padding: 7rem 0;}
  .hp .top .box h1                              {font-size: 30px;}
  .hp .top .box p                               {font-size: 13px;}
  .hp .top .box .buttons a                      {width: 160px; font-size: 11px; margin: 2px;}
  } 

.hp .infographics .wrapper                      {;}
.hp .infographics h2                            {display: block; width: 100%; font-size: 1rem; font-weight: 900; color: #e74c3c; text-align: center; line-height: 1.1em;}
.hp .infographics p                             {display: block; width: 100%; font-size: 0.5rem; color: #595959; font-weight: 500; text-align: center;}
.hp .infographics p.info                        {font-weight: 300; margin-top: 1.2rem; color: #4b4b4b;}
.hp .infographics p.info span                   {font-size: 1.7em; color: #e74c3c; font-weight: 900;}
.hp .infographics.v2 p.info                     {margin-top: 0;}
  @media screen and (max-width: 960px)          {
  .hp .infographics h2                          {font-size: 30px; margin-bottom: 3px;}
  .hp .infographics p                           {font-size: 16px;}
  .hp .infographics p.info                      {margin-top: 30px;}  
  }
  @media screen and (max-width: 680px)          {
  .hp .infographics h2                          {font-size: 26px;}
  .hp .infographics p                           {font-size: 14px;}
  .hp .infographics p.info                      {margin-top: 24px;}  
  }

.hp .assets                                     {background: #ebf0f2;}
.hp .assets .wrapper                            {justify-content: center; flex-wrap: wrap;}
.hp .assets .box                                {display: flex; width: auto; height: auto; align-items: center; flex-wrap: wrap;}
.hp .assets .box:nth-child(2)                   {margin: 0 1.6rem;}
.hp .assets .box p.num                          {display: block; height: 100px; width: 100px; color: white; margin-right: 20px; font-size: 40px; font-weight: 200; line-height: 100px; text-align: center; border-radius: 100%; background: #34495e;}
.hp .assets .box p.title                        {display: block; font-size: 20px; font-weight: 600; color: #34495e; text-align: center;}
  @media screen and (max-width: 960px)          {
  .hp .assets .box p.num                        {height: 80px; width: 80px; font-size: 34px; line-height: 80px;}
  .hp .assets .box p.title                      {font-size: 18px;}    
  }
  @media screen and (max-width: 680px)          {
  .hp .assets .box                              {width: 30%; justify-content: center;}
  .hp .assets .box:nth-child(2)                 {margin: 0;}
  .hp .assets .box p.num                        {margin: 0 0 15px;}
  .hp .assets .box p.title                      {width: 100%; text-align: center; font-size: 18px;}    
  }
  @media screen and (max-width: 380px)          {
  .hp .assets .box p.num                        {height: 60px; width: 60px; font-size: 30px; line-height: 60px;}
  .hp .assets .box p.title                      {font-size: 16px;}    
  }
  
.hp .howitworks .step                           {display: flex; width: 100%; align-items: flex-end; flex-wrap: wrap;}
.hp .howitworks .step.s2                        {justify-content: center; margin: 1rem 0;}
.hp .howitworks .step.s3                        {justify-content: flex-end;}
.hp .howitworks .step img                       {height: 110px; width: auto; margin-right: 1rem;}
.hp .howitworks .step p                         {display: block; font-size: 24px; color: #4b4b4b;}
.hp .howitworks .step p a                       {color: #e74c3c; text-decoration: underline;}
.hp .howitworks .step p a:hover                 {text-decoration: none;}
  @media screen and (max-width: 1080px)         {
  .hp .howitworks .step img                     {height: 80px;}
  .hp .howitworks .step p                       {font-size: 20px;}  
  }
  @media screen and (max-width: 760px)          {
  .hp .howitworks .step.s2                      {margin: 2rem 0;}
  .hp .howitworks .step img                     {height: 60px;}
  .hp .howitworks .step p                       {font-size: 17px;}  
  }  
  @media screen and (max-width: 540px)          {
  .hp .howitworks .step,
  .hp .howitworks .step.s3                      {width: 100%; justify-content: center;}  
  .hp .howitworks .step.s1                      {margin-top: 2rem;}
  .hp .howitworks .step img                     {margin-right: 0;}
  .hp .howitworks .step p                       {width: 100%; text-align: center;}  
  }  

.faq                                            {background: #f1f3f5;}  
.faq .wrapper                                   {max-width: 1100px; margin-left: auto; margin-right: auto;}
.faq .info                                      {display: block; width: 100%; padding: 18px 0 18px 75px; color: #3d3d3d; font-size: 20px; line-height: 1.2em; font-weight: 400;  background: URL('/images/icon-info.png') no-repeat left center; background-size: auto 60px;}
.faq .info a                                    {color: #e74c3c; font-weight: 300; text-decoration: underline;}
.faq .info a:hover                              {text-decoration: none;}
.faq .line                                      {display: block; width: 100%; height: 1px; background: #dcdcdc; margin: 30px 0;}
.faq .question                                  {display: flex; width: 100%; justify-content: space-between; margin: 0 auto 0.8rem;}
.faq .question .num                             {display: flex; width: 70px; height: 70px; justify-content: center; align-items: center; margin-top: 7px; background: #e74c3c; color: white; font-size: 30px; font-weight: 200; border-radius: 100%;}
.faq .question .text                            {display: block; width: calc(100% - 100px);}
.faq .question .text h2                         {display: block; width: 100%; margin-bottom: 4px; font-size: 22px; font-weight: 500; color: #303030;}
.faq .question .text p                          {display: block; width: 100%; font-size: 17px; font-weight: 400; color: #303030;}
  @media screen and (max-width: 820px)          {
  .faq .info                                    {padding: 15px 0 15px 75px; font-size: 18px; background-size: auto 56px;}
  .faq .question .num                           {width: 56px; height: 56px; font-size: 22px;}
  .faq .question .text                          {width: calc(100% - 74px);}
  .faq .question .text h2                       {font-size: 18px;}
  .faq .question .text p                        {font-size: 15px;}
  }

.contact                                        {background: #f1f3f5;}  
.contact .wrapper                               {max-width: 1100px; justify-content: space-between; margin-left: auto; margin-right: auto;}
.contact .info                                  {display: block; width: 100%; padding: 18px 0 18px 75px; color: #3d3d3d; font-size: 20px; line-height: 1.2em; font-weight: 400;  background: URL('/images/icon-info.png') no-repeat left center; background-size: auto 60px;}
.contact .line                                  {display: block; width: 100%; height: 1px; background: #dcdcdc; margin: 30px 0;}
.contact .left                                  {display: block; width: calc(100% - 410px);}
.contact .left .row                             {display: flex; width: 100%; flex-wrap: wrap; margin-bottom: 10px;}
.contact .left label                            {display: block; width: 170px; color: #4b4b4b; font-size: 16px; font-weight: 600; margin-top: 11px;}
.contact .left .row input                       {width: 240px;}
.contact .left .row textarea                    {width: calc(90% - 170px); height: 3rem;}
.contact .left .row > p                         {display: block; font-size: 15px; font-weight: 500; color: #4b4b4b; margin-left: 10px; margin-top: 10px;}
.contact .left .button                          {margin-left: 170px; padding: 18px 0; width: 300px; font-weight: 600;}
.contact .right                                 {display: block; width: 380px; background: #34495e; padding: 30px; box-sizing: border-box; position: relative;}
.contact .right:before                          {display: block; width: 25px; height: 50px; position: absolute; left: -24px; top: 25px; background: URL('/images/contact-arrow.png') no-repeat right center; background-size: 100% 100%; content: "";}
.contact .right a                               {display: block; font-size: 20px; color: white; font-weight: 400;}
.contact .right a:hover                         {text-decoration: underline;}
.contact .right a.mail                          {font-weight: 900; padding: 8px 0 8px 55px; background: URL('/images/footer-icon-mail.svg') no-repeat left top; background-size: auto 100%; margin-bottom: 12px;}
.contact .right a.tel                           {font-weight: 900; padding: 8px 0 8px 55px; background: URL('/images/footer-icon-tel.svg') no-repeat left top; background-size: auto 100%;}
.contact .right h2                              {display: block; margin-top: 20px; font-size: 20px; color: #1d2936; font-weight: 900; margin-bottom: 5px;}
.contact .right p, .contact .right a.web        {display: block; font-size: 20px; color: white; font-weight: 300;}
.contact .right p strong                        {font-weight: 500;}
.contact .right a.web                           {margin: 5px 0;}
  @media screen and (min-width: 961px) and (max-width: 1080px){
  .contact .left                                {width: calc(100% - 300px);}
  .contact .right                               {width: 290px; padding: 20px;}
  .contact .right:before                        {width: 20px; height: 42px;  left: -19px; top: 20px;}
  .contact .right a                             {font-size: 16px;}
  .contact .right a.mail, .contact .right a.tel {padding: 5px 0 5px 40px;}
  .contact .right h2                            {margin-top: 16px; font-size: 18px; margin-bottom: 4px;}
  .contact .right p, .contact .right a.web      {font-size: 17px;}
  .contact .right a.web                         {margin: 4px 0;}  
  }
  @media screen and (max-width: 960px)          {
  .contact .left                                {display: block; width: 100%; margin: 0 auto;}
  .contact .left .row input                     {width: 200px;}
  .contact .left .row textarea                  {width: 340px; height: 6rem;}
  .contact .left .button                        {width: 260px;}
  .contact .right                               {width: 100%; margin: 30px auto 0;}
  .contact .right:before                        {display: none;}
  }
  @media screen and (max-width: 820px)          {
  .contact .info                                    {padding: 15px 0 15px 75px; font-size: 18px; background-size: auto 56px;}
  }
  @media screen and (max-width: 580px)          {
  .contact .left label                          {width: 100%; margin-bottom: 5px;}
  .contact .left .row input                     {width: 100%;}
  .contact .left .row textarea                  {width: 100%; height: 180px;}
  .contact .left .row > p                       {margin-left: 0px;}
  .contact .left .button                        {width: 100%; margin-left: 0px;}
  .contact .right                               {padding: 20px 15px;}
  .contact .right a                             {font-size: 16px;}
  .contact .right a.mail, .contact .right a.tel {padding: 5px 0 5px 40px;}
  .contact .right h2                            {margin-top: 16px; font-size: 18px; margin-bottom: 4px;}
  .contact .right p, .contact .right a.web      {font-size: 17px;}
  .contact .right a.web                         {margin: 4px 0;}
  }
  
.offer                                          {background: #f1f3f5;}  
.offer .wrapper                                 {max-width: 1100px; justify-content: space-between; align-items: flex-start; margin-left: auto; margin-right: auto;}
.offer .info                                    {display: block; width: 100%; padding: 18px 0 18px 75px; color: #3d3d3d; font-size: 20px; line-height: 1.2em; font-weight: 400;  background: URL('/images/icon-info.png') no-repeat left center; background-size: auto 60px;}
.offer .line                                    {display: block; width: 100%; height: 1px; background: #dcdcdc; margin: 30px 0;}
.offer .left                                    {display: block; width: calc(100% - 410px);}
.offer .left h2                                 {display: block; width: 100%; margin-bottom: 25px; font-size: 22px; font-weight: 900; color: #3d3d3d;}
.offer .left .row                               {display: flex; width: 100%; flex-wrap: wrap; margin-bottom: 10px;}
.offer .left label                              {display: block; width: 170px; color: #4b4b4b; font-size: 16px; font-weight: 600; margin-top: 11px;}
.offer .left .row input,
.offer .left .row .select                       {width: 240px;}
.offer .left .row textarea                      {width: calc(90% - 170px); height: 3rem;}
.offer .left .row > p                           {display: block; font-size: 15px; font-weight: 500; color: #4b4b4b; margin-left: 10px; margin-top: 10px;}
.offer .left .terms                             {display: flex; align-items: center; margin-left: 170px; width: auto; font-weight: 300 !important;}
.offer .left .terms a                           {display: inline; text-decoration: underline; color: #e74c3c;}
.offer .left .terms a:hover                     {text-decoration: none;}
.offer .left .button                            {margin-left: 170px; padding: 18px 0; width: 300px; font-weight: 600;}
.offer .right                                   {display: block; width: 380px; position: relative;}
.offer .right .box                              {display: block; width: 100%; background: #34495e; padding: 30px; box-sizing: border-box; position: relative;}
.offer .right .box:before                       {display: block; width: 25px; height: 50px; position: absolute; left: -24px; top: 25px; background: URL('/images/contact-arrow.png') no-repeat right center; background-size: 100% 100%; content: "";}
.offer .right .box h2                           {display: block; font-size: 20px; color: white; font-weight: 900; margin-bottom: 5px; text-transform: uppercase; text-align: center;}
.offer .right .box .row                         {display: flex; width: 100%; align-items: flex-end; margin-top: 25px;}
.offer .right .box .row img                     {display: block; width: 100px; height: auto; margin-right: 25px;}
.offer .right .box .row p                       {display: block; width: calc(100% - 125px); font-size: 16px; color: white; font-weight: 300;}
.offer .right .box.v2                           {margin-top: 190px;}
.offer .right .box > p                          {display: block; width: 100%; text-align: center; font-size: 16px; margin-top: 20px; color: white; font-weight: 300;}
.offer-steps                                    {background: URL('/images/img1.jpg') no-repeat center center; background-size: cover; padding: 2rem 0;}
.offer-steps .heading1                          {color: white; margin-bottom: 2rem;}
.offer-steps .wrapper                           {display: block; max-width: 1000px; margin-left: auto; margin-right: auto;}
.offer-steps .step                              {display: flex; width: 100%; justify-content: space-between; align-items: center; margin-top: 0.6rem;}
.offer-steps .step .num                         {display: flex; width: 90px; height: 90px; justify-content: center; align-items: center; background: #e74c3c; color: white; font-size: 30px; font-weight: 200; border-radius: 100%;}
.offer-steps .step .text                        {display: block; width: calc(100% - 110px); font-size: 26px; color: white;}
.offer-infographic                              {background: #e74c3c;}
.offer-infographic .wrapper                     {justify-content: center; align-items: center;}
.offer-infographic img                          {display: block; width: 100px; height: 100px; margin-right: 1rem;}
.offer-infographic .text                        {display: block; width: 360px; font-size: 22px; color: white; font-weight: 300;}
  @media screen and (max-width: 1160px)         {
  .offer-steps .wrapper                         {max-width: 900px;}
  .offer-steps .step .num                       {width: 75px; height: 75px; font-size: 26px;}
  .offer-steps .step .text                      {width: calc(100% - 92px); font-size: 22px;}
  }
  @media screen and (max-width: 1080px)         {
  .offer .right .box.v2                         {margin-top: 174px;}  
  }
  @media screen and (max-width: 960px)          {
  .offer .left                                  {display: block; width: 100%; margin: 0 auto;}
  .offer .left .row input,
  .offer .left .row .select                     {width: 200px;}
  .offer .left .row textarea                    {width: 340px; height: 6rem;}
  .offer .left .button                          {width: 260px;}
  .offer .right                                 {width: 100%; margin-top: 40px;}
  .offer .right .box:before                     {display: none;}
  .offer .right .box .row                       {display: block; width: 100%; margin-top: 25px;}
  .offer .right .box .row img                   {margin: 0 auto 8px;;}
  .offer .right .box .row p                     {width: 100%; text-align: center;}
  .offer .right .box.v2                         {margin-top: 20px;}
  .offer-steps .wrapper                         {max-width: 700px;}
  .offer-steps .step .num                       {width: 60px; height: 60px; font-size: 21px;}
  .offer-steps .step .text                      {width: calc(100% - 78px); font-size: 18px;}
  }
  @media screen and (max-width: 820px)          {
  .offer .info                                  {padding: 15px 0 15px 75px; font-size: 18px; background-size: auto 56px;}
  .offer-steps                                  {padding: 4rem 0;}
  .offer-steps .wrapper                         {max-width: 100%;}
  .offer-steps .step                            {display: block; margin-top: 1.6rem;}
  .offer-steps .step .num                       {width: 50px; height: 50px; font-size: 20px; margin: 0 auto 10px;}
  .offer-steps .step .text                      {width: 100%; font-size: 16px; text-align: center; }
  }
  @media screen and (max-width: 580px)          {
  .offer .left label                            {width: 100%; margin-bottom: 5px;}
  .offer .left .row input,
  .offer .left .row .select                     {width: 100%;}
  .offer .left .row textarea                    {width: 100%; height: 180px;}
  .offer .left .row > p                         {margin-left: 0px;}
  .offer .left .button                          {width: 100%; margin-left: 0px;}
  .offer-infographic img                        {width: 80px; height: 80px; margin-right: 0; margin-bottom: 1rem;}
  .offer-infographic .text                      {width: 100%; font-size: 18px; text-align: center;}

  }

/* Flash Message */
.message                                        {display: block; width: 100%; padding: 15px; box-sizing: border-box; background: #34495e; color: white; font-size: 15px; font-weight: 500; text-align: center; margin-bottom: 25px;}
#pie-chart {width: 100px; height: 100px;margin-right:1rem;}