html,body {
  width: 100%;
  /*overflow-x: hidden;*/
}
body {
  font: 400 1.55rem/1.5 'Rubik', sans-serif;  
  font-smoothing: antialiased;
  font-variant-caps: normal;
  font-variant-east-asian: normal;
  font-variant-ligatures: normal;
  font-variant-numeric: normal;
  font-stretch: 100%;
  background-color: #fff;
  position: relative;
}

a {
	color: #FF3C20;
	text-decoration: underline;
}
sup {
	vertical-align: super;
}

/* helpers */

.wrap {
	max-width: 991px;
  box-sizing: border-box;
	width: 90%;
	margin: auto;
	position: relative;
}
.wrap--lg {
  max-width: 1400px;
}
.nowrap {
	white-space: nowrap;
}
.img-bordered {
	border-radius: 20px;
}
.img-round {
  border-radius: 999px;
}

.p-1 {
  padding: 2rem;
}
.p-2 {
  padding: 2rem;
}
.p-3 {
  padding: 3rem;
}
.p-4 {
  padding: 4rem;
}

.px-1 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-2 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-3 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-4 {
  padding-left: 4rem;
  padding-right: 4rem;
}

.py-1 {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.py-2 {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.py-3 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-4 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.mb-1 {
	margin-bottom: 2rem;
}
.mb-2 {
	margin-bottom: 2rem;
}
.mb-3 {
	margin-bottom: 3rem;
}
.mb-4 {
	margin-bottom: 4rem;
}
.mb-5 {
	margin-bottom: 5rem;
}

input, textarea {
  font-family: 'Rubik';
}
input[type="radio"],
input[type="checkbox"] {
  -webkit-appearance:  none;
  appearance:  none;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  border: 2px solid #BEE4F8;
  background:  none;
  margin: 0 4px 0 0;
}

input[type="radio"] {
  border-radius: 999px;
}
input[type="checkbox"] {
  border-radius: 3px;
}
input[type="radio"]:checked,
input[type="checkbox"]:checked {
  border-color: #FF3C20;
}
input[type="radio"]:checked,
input[type="checkbox"]:checked {
  background-color: #FF3C20;
  background-position: center center;
  background-repeat: no-repeat;
}
input[type="radio"]:checked {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='5' cy='5' r='5' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");
}
input[type="checkbox"]:checked {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='9' viewBox='0 0 10 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.0125 0.25L7.15 1.15L3.675 4.625L2.6625 3.65L1.7625 2.75L0 4.5125L0.9 5.4125L2.775 7.2875L3.6375 8.1875L4.5375 7.2875L8.9125 2.9125L9.8125 2.0125L8.0125 0.25Z' fill='white'/%3E%3C/svg%3E%0A");
}

.btn,
.txt {
  appearance: none;
  font-size: 1.5rem;
  padding: 1rem 2rem;
  box-sizing: border-box;
  text-decoration: none;
  border-radius: 3px;
}

.btn {
  display: inline-block;
  min-width: 120px;
  box-sizing: border-box;
  text-align: center;
  font-weight: 600;
  cursor: pointer;
}
.btn-primary {
  color: #fff;
  background-color: #FF3C20;
  border: 1px solid #FF3C20;
}
.btn-primary:hover {
  border-color: #000;
  background-color: #fff;
  color: #000;
}

.btn-outline {
  color: #FF3C20;
  background-color: transparent;
  border: 1px solid #FF3C20;
}
.btn-outline:hover {
  opacity: .75;
}

.btn-light {
  background-color: #F9C65D;
  color: #FF3C20;
  box-shadow: 3px 3px 0 0 #FF3C20;
}
.btn-light:hover {
  box-shadow: -3px -3px 0 0 #FF3C20;
}

.btn-lg {
  padding: 1.5rem 2.5rem;
  font-size: 1.7rem;  
}
.btn-big {
  padding: 1.8rem 2.8rem;
  font-size: 1.9rem;
  /*
  background: linear-gradient(45deg, #ff3c20 0% , #ff3c20 50%, #d71b00 51%, #d71b00 100%);
  background-size: 400% 400%;

  -webkit-animation: bganimate 2s ease infinite;
  -moz-animation: bganimate 2s ease infinite;
  -o-animation: bganimate 2s ease infinite;
  animation: bganimate 2s ease infinite;*/
}

@-webkit-keyframes bganimate {
    0%{background-position:0% 50%}
    50%{background-position:100% 51%}
    100%{background-position:0% 50%}
}
@-moz-keyframes bganimate {
    0%{background-position:0% 50%}
    50%{background-position:100% 51%}
    100%{background-position:0% 50%}
}
@-o-keyframes bganimate {
    0%{background-position:0% 50%}
    50%{background-position:100% 51%}
    100%{background-position:0% 50%}
}
@keyframes bganimate {
    0%{background-position:0% 50%}
    50%{background-position:100% 51%}
    100%{background-position:0% 50%}
}

.btn-ico {
  min-width: 0;
  padding: .5rem;
}
.btn-ico svg {
  width: 48px;
}
.btn-ico:hover path {
  stroke: #000;
}

.txt {
  border: 1px solid #000;
  background-color: #fff;
  padding: 1.5rem;
}
.txt100 {
  width: 100%;
}
.txt[type="file"] {
  
}
.bg-white {
  background-color: #fff;
}
.bg-light {
  background-color: #E7E7E7;
}
.bg-gray {
  background-color: #C5C5C5;
}
.bg-dark {
  background-color: #FF3C20;
  color: #fff;
}
.bg-dark a:not(.btn) {
  color: #fff;
}

/* grid */

[class^="rw"] {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  margin-left: -1.5%;
  margin-right: -1.5%;
}
[class^="rw"] > * {
  padding-left: 1.5%;
  padding-right: 1.5%;
}

.rw-0 {
  margin-left: 0;
  margin-right: 0;
}
.rw-0 > * {
  padding-left: 0;
  padding-right: 0;
}
.rw-07 {
  margin-left: -.7%;
  margin-right: -.7%;
}
.rw-07 > * {
  padding-left: .7%;
  padding-right: .7%;
}

.rw-nowrap {
  flex-wrap: nowrap;
}
.rw-vertical {
  align-items: center;
}
.rw-justify {
  justify-content: space-between;
}
.rw-center {
  justify-content: center;
}
.rw-bottom {
  align-items: flex-end;
}
.rw-right {
  justify-content: flex-end;
}
.rw-column {
  flex-direction: column;
}

[class*=cl-] {
  box-sizing: border-box;
}
.cl {
  flex-grow: 1;
}
.cl-0 {
  flex: 1;
}
.show {
  display: block;
}
.show-flex {
  display: flex;
}
.show-inline {
  display: inline;
}
.hidden {
  display: none;
}
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}

.cl-auto {
  width: auto;
}
.cl-1 {
  width: 8.333%;
}
.cl-2 {
  width: 16.666%;
}
.cl-3 {
  width: 25%;
}
.cl-4 {
  width: 33.333%;
}
.cl-5 {
  width: 41.666%;
}
.cl-6 {
  width: 50%;
}
.cl-7 {
  width: 58.333%;
}
.cl-8 {
  width: 66.666%;
}
.cl-9 {
  width: 75%;
}
.cl-10 {
  width: 83.333%;
}
.cl-11 {
  width: 91.666%;
}
.cl-12 {
  width: 100%;
}
.cl-24 {
  width: 20%;
}
.cl-17 {
  width: 14.166%;
}
.cl-96 {
  width: 80%;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.order-3 {
  order: 3;
}
.order-4 {
  order: 4;
}
.order-5 {
  order: 5;
}
.order-6 {
  order: 6;
}
.order-7 {
  order: 7;
}
.order-8 {
  order: 8;
}
.order-9 {
  order: 9;
}
.order-10 {
  order: 10;
}
.order-11 {
  order: 11;
}
.order-12 {
  order: 12;
}

@media (min-width: 767px) {
  .p-1 {
    padding: 2rem;
  }
  .p-2 {
    padding: 4rem;
  }
  .p-3 {
    padding: 6rem;
  }
  .p-4 {
    padding: 8rem;
  }

  .px-1 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .px-2 {
    padding-left: 4rem;
    padding-right: 4rem;
  }
  .px-3 {
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .px-4 {
    padding-left: 8rem;
    padding-right: 8rem;
  }

  .py-1 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .py-2 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .py-3 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .py-4 {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }

  .mt-1 {
    margin-top: 2rem;
  }
  .mb-1 {
    margin-bottom: 2rem;
  }
  .mb-2 {
    margin-bottom: 3rem;
  }
  .mb-3 {
    margin-bottom: 6rem;
  }
  .mb-4 {
    margin-bottom: 8rem;
  }
  .mb-5 {
    margin-bottom: 10rem;
  }
  .m-auto {
    margin: auto;
  }

  .sm-show {
    display: block;
  }
  .sm-show-flex {
    display: flex;
  }
  .sm-show-inline {
    display: inline;
  }
  .sm-hidden {
    display: none;
  }
  .sm-text-center {
    text-align: center;
  }
  .sm-text-left {
    text-align: left;
  }
  .sm-text-right {
    text-align: right;
  }
  
  .cl-sm-auto {
    width: auto;
  }
  .cl-sm-1 {
    width: 8.333%;
  }
  .cl-sm-2 {
    width: 16.666%;
  }
  .cl-sm-3 {
    width: 25%;
  }
  .cl-sm-4 {
    width: 33.333%;
  }
  .cl-sm-5 {
    width: 41.666%;
  }
  .cl-sm-6 {
    width: 50%;
  }
  .cl-sm-7 {
    width: 58.333%;
  }
  .cl-sm-8 {
    width: 66.666%;
  }
  .cl-sm-9 {
    width: 75%;
  }
  .cl-sm-10 {
    width: 83.333%;
  }
  .cl-sm-11 {
    width: 91.666%;
  }
  .cl-sm-12 {
    width: 100%;
  }
  .cl-sm-24 {
    width: 20%;
  }
  .cl-sm-17 {
    width: 14.166%;
  }
  .cl-sm-96 {
    width: 80%;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
}

@media (min-width: 991px) {
  .bg-show {
    display: block;
  }
  .bg-show-flex {
    display: flex;
  }
  .bg-show-inline {
    display: inline;
  }
  .bg-hidden {
    display: none;
  }
  .bg-text-center {
    text-align: center;
  }
  .bg-text-left {
    text-align: left;
  }
  .bg-text-right {
    text-align: right;
  }
  
  .cl-bg-auto {
    width: auto;
  }
  .cl-bg-1 {
    width: 8.333%;
  }
  .cl-bg-2 {
    width: 16.666%;
  }
  .cl-bg-3 {
    width: 25%;
  }
  .cl-bg-4 {
    width: 33.333%;
  }
  .cl-bg-5 {
    width: 41.666%;
  }
  .cl-bg-6 {
    width: 50%;
  }
  .cl-bg-7 {
    width: 58.333%;
  }
  .cl-bg-8 {
    width: 66.666%;
  }
  .cl-bg-9 {
    width: 75%;
  }
  .cl-bg-10 {
    width: 83.333%;
  }
  .cl-bg-11 {
    width: 91.666%;
  }
  .cl-bg-12 {
    width: 100%;
  }
  .cl-bg-24 {
    width: 20%;
  }
  .cl-bg-17 {
    width: 14.166%;
  }
  .cl-bg-96 {
    width: 80%;
  }
  .order-bg-1 {
    order: 1;
  }
  .order-bg-2 {
    order: 2;
  }
  .order-bg-3 {
    order: 3;
  }
  .order-bg-4 {
    order: 4;
  }
  .order-bg-5 {
    order: 5;
  }
  .order-bg-6 {
    order: 6;
  }
  .order-bg-7 {
    order: 7;
  }
  .order-bg-8 {
    order: 8;
  }
  .order-bg-9 {
    order: 9;
  }
  .order-bg-10 {
    order: 10;
  }
  .order-bg-11 {
    order: 11;
  }
  .order-bg-12 {
    order: 12;
  }
}

@media (min-width: 1200px) {
  .lg-show {
    display: block;
  }
  .lg-show-flex {
    display: flex;
  }
  .lg-show-inline {
    display: inline;
  }
  .lg-hidden {
    display: none;
  }
  .lg-text-center {
    text-align: center;
  }
  .lg-text-left {
    text-align: left;
  }
  .lg-text-right {
    text-align: right;
  }
  
  .cl-lg-auto {
    width: auto;
  }
  .cl-lg-1 {
    width: 8.333%;
  }
  .cl-lg-2 {
    width: 16.666%;
  }
  .cl-lg-3 {
    width: 25%;
  }
  .cl-lg-4 {
    width: 33.333%;
  }
  .cl-lg-5 {
    width: 41.666%;
  }
  .cl-lg-6 {
    width: 50%;
  }
  .cl-lg-7 {
    width: 58.333%;
  }
  .cl-lg-8 {
    width: 66.666%;
  }
  .cl-lg-9 {
    width: 75%;
  }
  .cl-lg-10 {
    width: 83.333%;
  }
  .cl-lg-11 {
    width: 91.666%;
  }
  .cl-lg-12 {
    width: 100%;
  }
  .cl-lg-24 {
    width: 20%;
  }
  .cl-lg-17 {
    width: 14.166%;
  }
  .cl-lg-96 {
    width: 80%;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
}

/* typo */

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h4, .h5 {
  font-family: 'Rubik';
  font-weight: 700;
  color: #03486A;
}

h1, .h1 {
  font-size: 3.6rem;
  line-height: 1.2;
}
h2,.h2 {
  font-size: 3.2rem;
  line-height: 1.2;
}
h3,.h3 {
  font-size: 2.8rem;
  line-height: 1.2;
}
h4,.h4 {
  font-size: 2.4rem;
}
h5,.h5 {
  font-size: 2.4rem;
}


@media (min-width: 767px) {
	h1, .h1 {
    font-size: 4.8rem;
    line-height: 1.2;
  }
  h2,.h2 {
    font-size: 3.6rem;
    line-height: 1.2;
  }
  h3,.h3 {
    font-size: 2.4rem;
    line-height: 1.2;
  }
  h4,.h4 {
    font-size: 1.8rem;
  }
  h5,.h5 {
    font-size: 1.6rem;
  }
}
@media (min-width: 991px) {
  h1, .h1 {
    font-size: 5.6rem;
    line-height: 1.2;
  }
  h2,.h2 {
    font-size: 4.8rem;
    line-height: 1.2;
  }
  h3,.h3 {
    font-size: 3.6rem;
    line-height: 1.2;
  }
  h4,.h4 {
    font-size: 2.4rem;
  }
  h5,.h5 {
    font-size: 1.8rem;
  }
}

/* elements */
.textblock {
  font-size: 1.6rem;
  line-height: 1.65;
}
.textblock p,
.textblock ul,
.textblock ol {
  margin-bottom: 2rem;
}

.textblock ul,
.textblock ol {
  margin-left: 32px;
}
.textblock ul {
  list-style: disc;
}

/* POPUP
-------------------- */
.fade {
  zoom: 1;
  background: transparent;
  background: rgba(0,0,0,0.7);
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 1000;
  display: none;
}
.popup {
  background: #fff;
  position: absolute;
  left: 0;
  right: 0;
  width: 90%;
  max-width: 700px;
  margin: auto;
  z-index: 1101;
  display: none;
}
.popup .close {
  position: absolute;
  width: 32px;
  height: 32px;
  cursor: pointer;
  top: -18px;
  right: -18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='40px' height='40px'%3E%3Cpath fill-rule='evenodd' fill='rgb(222, 228, 239)' d='M20.000,-0.000 C31.046,-0.000 40.000,8.954 40.000,20.000 C40.000,31.046 31.046,40.000 20.000,40.000 C8.954,40.000 -0.000,31.046 -0.000,20.000 C-0.000,8.954 8.954,-0.000 20.000,-0.000 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(62, 61, 87)' d='M25.657,11.514 L28.485,14.343 L14.343,28.485 L11.515,25.656 L25.657,11.514 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(62, 61, 87)' d='M28.485,25.656 L25.657,28.485 L11.515,14.343 L14.343,11.514 L28.485,25.656 Z'/%3E%3C/svg%3E") no-repeat center center;
  background-size: 100%;
}
@media (min-width: 580px) {
  .popup .close {
    top: -36px;
    right: -36px;
  }
}
.popup-body {
  min-height: 250px;
}
.popup-footer {
  background-color: #E8F7FF;
}
.popup .close:hover {
  opacity: 0.6;
}
.popup-error,
.popup-confirm {
  font-size: 1.8rem;
  display: none;
  padding: 1.5rem;
  border: 1px solid #b74d34;
  background-color: #ffe3db;
  color: #b74d34;
  margin-bottom: 15px;
  text-align: center;
  border-radius: 3px;
}
.popup-confirm {
  background-color: #e8ffdb;
  color: #76b736;
  border-color: #76b736;
}
.signal {
  border-color: #bcad9d !important;
  background-color: #fff0e0 !important;
}
.form-label {
  opacity: .85;
  margin-bottom: .5rem;
}
.form-meta {
  font-size: 1.5rem;
  opacity: .5;
}