.contacts {
  margin:0 15px 15px 15px;
}
.contacts .title {
  color:#254293;
	font-size:24px;
	line-height:30px;
}
.contacts .title span {
  color:#818181;
}
.contacts h2 {
	font-size:16px;
	line-height:20px;
	font-weight:400;
}
.contacts .adresses {
  max-width:320px;
}
.contacts .border-map {
  box-sizing: border-box;
  width:100%;
  padding:10px 12px 10px 12px;
  border:1px solid #C5C5C5;
  color:#7a7a7a;
  margin:15px 0 0 0;
}
.contacts .border-map a,
.contacts .border-map a:link,
.contacts .border-map a:visited,
.contacts .border-map a:hover,
.contacts .border-map a:active{
  color:#7a7a7a;
}
.contacts .border-map p span {
  color:#e03d39;
}
.contacts .border-map iframe {
  border:0;
  padding:0;
  text-align: center;
  margin: 10px 0 0 0;
  width:100%;
}
.contacts .labels-map {
  width:100%;
  margin:15px 0 0 0;
}
.labels-map .mark {
  width:46%;
  float:left;
  display:inline;
}
.labels-map .mark.first {
  width:53%;
}
.labels-map .title {
  color:#04589c;
	font-size:14px;
	line-height:18px;  
}
.labels-map .label-a {
  width:45px;
  height:65px;
  background: url('images/blue.png') center bottom no-repeat;
}
.labels-map .title-a {
  color:#04589c;
	font-size:14px;
	line-height:18px;  
}
.labels-map .label-b {
  width:45px;
  height:65px;
  background: url('images/green.png') center bottom no-repeat;
}
.labels-map .title-b {
  color:#0d7008;
	font-size:14px;
	line-height:18px;  
}

@media (min-width:640px) {
  .contacts .adresses-t {
    display:table;
    width:100%;
  }
  .contacts .adresses {
    display:table-cell;
    width:300px;
    vertical-align:top;
  }
  .contacts .border-map {
    display:table-cell;
    width:350px;
    vertical-align:top;    
  }
  .contacts .border-map p {
    display:none;
  }
  .labels-map .mark {
    display:table;
  }
  .labels-map .label-a,
  .labels-map .label-b {
    border-right:20px solid transparent;
  }
  .labels-map .label-a,
  .labels-map .label-b,
  .labels-map .title-a,
  .labels-map .title-b  {
    display:table-cell;
    vertical-align:bottom;
  }
}

@media (min-width:769px) {
  
  .contacts {
    margin: 0 0 15px 0;
  }
}
@media (min-width:840px) {
  .contacts .contacts-t {
    display:table;
    width:100%;
  }
  .contacts .adresses-t {
    display:table-cell;
    vertical-align:top; 
    width:auto;
  } 
  .contacts .labels-map {
    display:table-cell;
    vertical-align:bottom; 
    width:200px;
    border-left:20px solid transparent;
  }
  .labels-map .mark,
  .labels-map .mark.first {
    width:100%;
  }
}
@media (min-width:920px) {
  .contacts .labels-map {
    width:230px;
  }  
}
@media (min-width:1100px) {
  .contacts .labels-map {
    width:390px;
  }  
  .labels-map .mark, .labels-map .mark.first {
    width:50%;
  }
}
