#footer {
 float: left;
 width: 100%;
 line-height: 1.2;
 color: #fff;
 background-color: #29343f;
}

#footer ul li {
 padding: 0;
 margin: 0;
 list-style-type: none;
 text-decoration: none;
 background-image: none;
}

#footer a,
#footer a:link,
#footer a:hover,
#footer a:visited {
 color: #fff;
 opacity: 1;
}

#footer a:hover {
 opacity: 0.7;
}


/* FOOTER TOP */


/* FOOTER MENU start */

#footer_top {
 float: left;
 width: 100%;
 padding: 48px 0 48px 0;
}

#footer_top .wrapper {
 display: flex;
 justify-content: space-around;
 align-items: center;
}

#footer_top .info {
 display: flex;
 align-items: center;
 margin: 0 25px 0 0;
}

#footer_top .info .icon {
 display: flex;
 justify-content: center;
 align-items: center;
 min-width: 48px;
 width: 48px;
 height: 48px;
 margin: 0 14px 0 0;
 border-radius: 100%;
 border: 2px solid rgba(255, 255, 255, 0.2);
}

#footer_top .info .icon img {
 width: 20px;
 height: 20px;
}

#footer_top .info.license {
 font-size: 14px;
}

#footer_top .info.address {
 font-size: 16px;
}

#footer_top .info .phone {
 display: inline-block;
 align-self: flex-start;
 margin: 0 0 6px 0;
 font-size: 19px;
}

#footer_top .info .email {
 display: inline-block;
 align-self: flex-start;
 font-size: 13px;
}

#footer_top .info.contacts .text {
 display: flex;
 flex-direction: column;
}

#footer_top .info .text>span {
 font-weight: 700;
}

#footer .s0cials {
 display: flex;
}

#footer .s0cials .s0cial {
 display: flex;
 justify-content: center;
 align-items: center;
 width: 48px;
 height: 48px;
 margin: 0 10px 0 0;
 border-radius: 100%;
 border: 2px solid rgba(255, 255, 255, 0.2);
}

#footer .s0cials .s0cial:last-child {
 margin: 0;
}

#footer .s0cials .s0cial:hover {
 border: 2px solid #fff;
 background-color: #fff;
}

#footer .s0cials .s0cial .icon {
 position: relative;
 width: 20px;
 height: 20px;
}

#footer .s0cials .s0cial .icon::before {
 content: "";
 -webkit-transition: opacity 0.2s;
 -o-transition: opacity 0.2s;
 transition: opacity 0.2s;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}

#footer .s0cials .s0cial .icon::after {
 content: "";
 opacity: 0;
 -webkit-transition: opacity 0.2s;
 -o-transition: opacity 0.2s;
 transition: opacity 0.2s;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}

#footer .s0cials .s0cial.f_b .icon::before {
 background: url('/img/footer-s0cial-f_b.svg') 0px 0px no-repeat;
 background-size: 20px 40px;
}

#footer .s0cials .s0cial.f_b .icon::after {
 background: url('/img/footer-s0cial-f_b.svg') 0px -20px no-repeat;
 background-size: 20px 40px;
}

#footer .s0cials .s0cial.i_nstagram .icon::before {
 background: url('/img/footer-s0cial-i_nstagram.svg') 0px 0px no-repeat;
 background-size: 20px 40px;
}

#footer .s0cials .s0cial.i_nstagram .icon::after {
 background: url('/img/footer-s0cial-i_nstagram.svg') 0px -20px no-repeat;
 background-size: 20px 40px;
}

#footer .s0cials .s0cial:hover .icon::before {
 opacity: 0;
 -webkit-transition: opacity 0.2s;
 -o-transition: opacity 0.2s;
 transition: opacity 0.2s;
}

#footer .s0cials .s0cial:hover .icon::after {
 opacity: 1;
 -webkit-transition: opacity 0.2s;
 -o-transition: opacity 0.2s;
 transition: opacity 0.2s;
}

@media screen and (max-width:1100px) {
 #footer_top {
  padding: 40px 0;
 }
 #footer_top .info .icon {
  width: 46px;
  min-width: 46px;
  height: 46px;
 }
 #footer_top .info.address {
  font-size: 15px;
 }
 #footer .s0cials .s0cial {
  width: 46px;
  min-width: 46px;
  height: 46px;
 }
}

@media screen and (max-width:950px) {
 #footer_top .info .icon {
  width: 42px;
  min-width: 42px;
  height: 42px;
 }
 #footer .s0cials .s0cial {
  width: 42px;
  min-width: 42px;
  height: 42px;
 }
}

@media screen and (max-width:920px) {
 #footer_top {
  padding: 32px 0;
 }
 #footer_top .wrapper {
  flex-wrap: wrap;
 }
 #footer_top .col {
  width: 50%;
 }
 #footer_top .col.col_01,
 #footer_top .col.col_02 {
  margin: 0 0 20px 0;
 }
 #footer_top .info {
  margin: 0;
 }
}

@media screen and (max-width:750px) {
 #footer_top {
  padding: 28px 0;
 }
}

@media screen and (max-width:600px) {
 #footer_top {
  padding: 22px 0;
 }
 #footer_top .info .icon {
  width: 38px;
  min-width: 38px;
  height: 38px;
  margin: 0 10px 0 0;
 }
 #footer_top .info .icon img {
  width: 16px;
  height: 16px;
 }
 #footer_top .info.license {
  font-size: 13px;
 }
 #footer_top .info.address {
  font-size: 14px;
 }
 #footer_top .info .phone {
  font-size: 18px;
 }
 #footer .s0cials .s0cial {
  width: 38px;
  min-width: 38px;
  height: 38px;
 }
 #footer .s0cials .s0cial .icon {
  width: 16px;
  height: 16px;
 }
 #footer .s0cials .s0cial.f_b .icon::before {
  background: url('/img/footer-s0cial-f_b.svg') 0px 0px no-repeat;
  background-size: 16px 32px;
 }
 #footer .s0cials .s0cial.f_b .icon::after {
  background: url('/img/footer-s0cial-f_b.svg') 0px -16px no-repeat;
  background-size: 16px 32px;
 }
 #footer .s0cials .s0cial.i_nstagram .icon::before {
  background: url('/img/footer-s0cial-i_nstagram.svg') 0px 0px no-repeat;
  background-size: 16px 32px;
 }
 #footer .s0cials .s0cial.i_nstagram .icon::after {
  background: url('/img/footer-s0cial-i_nstagram.svg') 0px -16px no-repeat;
  background-size: 16px 32px;
 }
}

@media screen and (max-width:480px) {
 #footer_top {
  padding: 18px 0;
 }
 #footer_top .col {
  width: 100%;
 }
 #footer_top .col.col_01,
 #footer_top .col.col_02,
 #footer_top .col.col_03 {
  margin: 0 0 14px 0;
 }
}


/* FOOTER BOTTOM */

#footer_bottom {
 float: left;
 width: 100%;
 padding: 20px 0 22px 0;
 font-weight: 300;
 font-size: 12px;
 background-color: #343e49;
}

#footer_bottom .wrapper {
 display: flex;
 align-items: center;
}

#footer .rows {
 display: flex;
 flex-direction: column;
 width: 100%;
 text-align: center;
}

#footer .by_prostudio {
 display: flex;
 justify-content: center;
 margin: 12px 0 0 0;
}

#footer .by_prostudio a {
 display: flex;
}

#footer .by_prostudio a:hover {
 text-decoration: underline;
}

#footer .by_prostudio img {
 width: 89px;
 height: 15px;
 margin: 0 0 0 8px;
 vertical-align: middle;
}

@media screen and (max-width:450px) {
 #footer .wrapper {
  padding-left: 26px;
  padding-right: 26px;
 }
}

@media screen and (max-width:480px) {
 #footer .rows {
  text-align: left;
 }
 #footer .by_prostudio {
  justify-content: flex-start;
 }
}

@media screen and (max-width:380px) {
 #footer .by_prostudio {
  flex-direction: column;
  align-items: flex-start;
 }
 #footer .by_prostudio img {
  margin: 8px 0 0 0;
 }
}