.v-sprite { background-image:url('/contacts/spriteA0.png'); background-size:500px 500px; }

.v-top { margin-top:15px; }

ul.v-modes { position:relative; list-style-type:none; padding:0; margin:15px 0 0 0; text-align:center; }
ul.v-modes li { position:relative; display:inline-block; margin:0; padding:0; font-size:12px; line-height:15px; }
ul.v-modes li:nth-child(1) { padding:0 20px 0 0; }
ul.v-modes li a { position:relative; font-weight:500; color:#888888; text-decoration:none; }
ul.v-modes li a[data-id="BOHEMIA"] { padding:2px 0 0 24px; }
ul.v-modes li a[data-id="AGENTS"] { padding:2px 0 0 26px; }
ul.v-modes li a:hover {  }
ul.v-modes li a .icon { position:absolute; top:50%; left:0;  height:18px; margin-top:-9px; }
ul.v-modes li a[data-id="BOHEMIA"] .icon { width:18px; background-position:-102px -100px; }
ul.v-modes li a[data-id="AGENTS"] .icon { width:20px; background-position:-126px -100px; }
ul.v-modes li a.active { color:#0077CC; }
ul.v-modes li a.active[data-id="BOHEMIA"] .icon { background-position:-102px -120px; }
ul.v-modes li a.active[data-id="AGENTS"] .icon { background-position:-126px -120px; }
ul.v-modes .indicator { position:absolute; bottom:-8px; left:0px; width:8px; height:6px; background-position:-240px 0px; transition:left 0.3s; }

ul.v-toplinks { position:relative; list-style-type:none; padding:0; margin:0; text-align:center; line-height:0; }
ul.v-toplinks li { position:relative; display:inline-block; border-left:solid 1px #E0E0E0; line-height:0; }
ul.v-toplinks li:first-child { border-left:0; }
ul.v-toplinks li a { position:relative; display:inline-block; min-width:40px; height:30px; padding:3px 8px 0 8px; color:#000000; text-decoration:none; font-size:12px; line-height:12px; }
ul.v-toplinks li a:hover { background-color:#F0F0F0; color:#0077CC; }
ul.v-toplinks li a .icon { position:absolute; top:50%; left:50%; width:24px; height:24px; margin:-12px 0 0 -12px; }
ul.v-toplinks li[data-id="email"] a .icon { background-position:-30px -200px; }
ul.v-toplinks li[data-id="email"] a:hover .icon { background-position:-30px -224px; }
ul.v-toplinks li[data-id="facebook"] a .icon { background-position:-54px -200px; }
ul.v-toplinks li[data-id="facebook"] a:hover .icon { background-position:-54px -224px; }
ul.v-toplinks li[data-id="foursquare"] a .icon { background-position:-78px -200px; }
ul.v-toplinks li[data-id="foursquare"] a:hover .icon { background-position:-78px -224px; }
ul.v-toplinks li[data-id="pinterest"] a .icon { background-position:-102px -200px; }
ul.v-toplinks li[data-id="pinterest"] a:hover .icon { background-position:-102px -224px; }
ul.v-toplinks li[data-id="instagram"] a .icon { background-position:-126px -200px; }
ul.v-toplinks li[data-id="instagram"] a:hover .icon { background-position:-126px -224px; }
ul.v-toplinks li a table { table-layout:fixed; margin-top:4px; }
ul.v-toplinks li a .smalltext { font-size:10px; line-height:12px; font-weight:500; color:#888888; padding-right:8px; white-space:nowrap; }
ul.v-toplinks li a .text { font-size:16px; line-height:18px; font-weight:900; white-space:nowrap; }
ul.v-toplinks li[data-id="phone"] a .smalltext { display:none; }

.v-detailed h2 { font-size:20px; line-height:23px; font-weight:400; color:#0077CC; margin:0; padding:0 0 3px 0; }
.v-detailed .col-details { position:relative; padding:15px; margin-right:80px; }
.v-detailed .col-mapbutton { position:absolute; top:0; bottom:0; right:0; width:80px; background-color:rgba(255,255,255,0); }
.v-detailed .col-mapbutton:hover { transition:all 0.2s; background-color:#F6F6F6; cursor:pointer; }
.v-detailed .col-mapbutton .icon { position:absolute; top:50%; left:50%; width:32px; height:32px; margin:-16px 0 0 -16px; background-position:-100px 0px; }
.v-detailed .col-mapbutton:hover .icon { background-position:-140px 0px; }
.v-detailed .col-mapbutton .tick { position:absolute; width:14px; height:9px; top:50%; left:50%; margin-left:-7px; margin-top:17px; opacity:0; background-position:-260px 0px; }
.v-detailed .col-mapbutton:hover .tick { transition:margin 0.2s, opacity 0.2s; opacity:1; margin-top:22px; }
.v-detailed .col-mapbutton.active { background-color:#F0F0F0; }
.v-detailed .col-mapbutton.active .icon { background-position:-180px 0px; }
.v-detailed .col-mapbutton.active .tick { transition:margin 0.2s, opacity 0.2s; opacity:1; margin-top:22px; background-position:-280px 0px; }
.v-detailed .label { position:relative; display:inline-block; margin-bottom:5px; background-color:#009900; font-size:11px; line-height:14px; color:#FFFFFF; font-weight:700; padding:3px 5px; }
.v-detailed .text { font-size:16px; line-height:18px; font-weight:500; }
.v-detailed .item-container { position:relative; margin:0 0 0 -15px; }
.v-detailed .item { position:relative; padding:18px 10px 0 49px; min-height:24px; font-size:16px; line-height:18px; font-weight:500; }
.v-detailed .item:hover { cursor:pointer; }
.v-detailed .item[data-type="phone"] { width:auto; }
.v-detailed .item[data-type="email"] { width:auto; }
.v-detailed .item[data-type="hours"] { width:auto; }
.v-detailed .item .icon { position:absolute; display:block; top:15px; left:15px; width:24px; height:24px; }
.v-detailed .item[data-type="phone"] .icon { background-position:0 0; }
.v-detailed .item[data-type="email"] .icon { background-position:0 -32px; }
.v-detailed .item[data-type="hours"] .icon { background-position:0 -64px; }
.v-detailed .item[data-type="phone"]:hover .icon { background-position:-24px 0; }
.v-detailed .item[data-type="email"]:hover .icon { background-position:-24px -32px; }
.v-detailed .item[data-type="hours"]:hover .icon { background-position:-24px -64px; }
.v-detailed .item a { color:#000000; text-decoration:none; }
.v-detailed .item:hover a { color:#DD3311; }
.v-detailed .item .hours-title { font-size:11px; line-height:13px; font-weight:500; color:#777777; }
.v-detailed .map-container { position:relative; height:0; display:block; overflow:hidden; transition:height 0.3s; }
.v-detailed .map-container .map { height:260px; background-color:#F0F0F0; }
.v-detailed .map-container.active { height:260px; }
.v-detailed[data-type="detailed"] .map-container { height:260px; }
.v-detailed .alllink { position:relative; color:#000000; text-decoration:none; }
.v-detailed .alllink .backicon { position:relative; width:9px; height:12px; background-position:0px -200px; }
.v-detailed .alllink td:nth-child(1) { width:17px; }
.v-detailed .alllink td:nth-child(2) span { font-size:14px; line-height:17px; font-weight:500; color:#666666; border-bottom:solid 1px rgba(255,255,255,0); }
.v-detailed .alllink:hover td:nth-child(2) span { color:#DD3311; border-bottom:solid 1px #DD3311; }

.v-cities { position:relative; display:block; table-layout:fixed; width:100%; font-size:16px; line-height:21px; }
.v-cities .maincities { position:relative; display:block; vertical-align:top; font-weight:500; padding:0 0 10px 0; border-bottom:solid 1px #EEEEEE; }
.v-cities .maincities div { padding:2px 10px 2px 0; }
.v-cities .maincities div a { color:#000000; text-decoration:none; }
.v-cities .maincities div a:hover { color:#DD3311; border-bottom:solid 1px #DD3311; }
.v-cities .allcities { position:relative; display:block; padding:10px 0 0 0; }
.v-cities .allcities .columns { position:relative; }
.v-cities .allcities .columns div { padding:2px 10px 2px 0; }
.v-cities .allcities .columns div a { color:#000000; text-decoration:none; vertical-align:top; }
.v-cities .allcities .columns div a:hover { color:#DD3311; border-bottom:solid 1px #DD3311; }

.v-agentslist {  }
.v-agentslist .head { margin-bottom:20px; }
.v-agentslist .head td { vertical-align:middle; }
.v-agentslist .head td:nth-child(1) { width:32px; }
.v-agentslist .head .back { position:relative; display:block; width:17px; height:22px; background-position:-360px 0px; }
.v-agentslist .head h2 { font-size:26px; line-height:30px; font-weight:400; color:#0077CC; margin:0; padding:0; }
.v-agentslist .divider { position:relative; background-color:#F0F0F0; height:1px; margin:10px 0; }

.v-agentslist ul { position:relative; padding:0; margin:0; list-style-type:none; }
.v-agentslist li {  }
.v-agentslist li a { position:relative; display:block; color:#000000; text-decoration:none; padding:8px 0; }
.v-agentslist li:hover { background-color:#E4F3FF; }
.v-agentslist li div.list-tbl { position:relative; display:block; table-layout:fixed; width:100%; padding:0 8px; }
.v-agentslist li div.list-col { position:relative; display:block; vertical-align:middle; font-size:15px; line-height:19px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.v-agentslist li div.list-col:nth-child(1) { font-weight:500; }
.v-agentslist li div.list-col:nth-child(2) { color:#333333; }
.v-agentslist li div.list-col:nth-child(3) { color:#333333; display:none; }
.v-agentslist li div.list-col:nth-child(4) { width:28px; display:none; }
.v-agentslist li .arrow { position:relative; width:12px; height:16px; background-position:-310px -16px; margin:0 auto; }
.v-agentslist li:hover .arrow { background-position:-310px 0px; }

@media (min-width:600px) {

  .v-cities { display:table; }
  .v-cities .maincities { display:table-cell; width:150px; border-right:solid 1px #EEEEEE; border-bottom:0; padding:0; }
  .v-cities .allcities { display:table-cell; padding:0 0 0 20px; }
  .v-cities .allcities .columns { column-width:50%; column-count:2; }

}

@media (min-width:768px) {

  .bhm-layout-datacell.v-top { padding-top:10px; padding-bottom:10px; }

  ul.v-toplinks { z-index:100; float:right; margin:0; }
  ul.v-toplinks li[data-id="phone"] a .smalltext { display:block; }
  ul.v-modes { z-index:90; text-align:left; margin:0; padding:8px 0 0 0; }

  .v-detailed .col-details { margin-right:110px; }
  .v-detailed .col-mapbutton { width:110px; }
  .v-detailed .item { float:left; }
  .v-detailed .item[data-type="phone"] { width:30%; }
  .v-detailed .item[data-type="email"] { width:33%; }
  .v-detailed .item[data-type="hours"] { width:37%; }

  .v-cities .allcities .columns { column-width:33.3%; column-count:3; }

  .v-agentslist li div.list-tbl { display:table; padding:0; }
  .v-agentslist li div.list-col { display:table-cell; }
  .v-agentslist li div.list-col:nth-child(1) { width:222px; padding:0 15px 0 32px; }
  .v-agentslist li div.list-col:nth-child(2) { padding:0 15px 0 0; }
  .v-agentslist li div.list-col:nth-child(3) { display:table-cell; width:180px; padding:0 15px 0 0; }
  .v-agentslist li div.list-col:nth-child(4) { display:table-cell; }

}

@media (min-width:960px) {

  .v-detailed .item[data-type="phone"] { width:25%; }
  .v-detailed .item[data-type="email"] { width:33%; }
  .v-detailed .item[data-type="hours"] { width:42%; }

  .v-cities .allcities .columns { column-width:25%; column-count:4; }

  .v-agentslist li div.list-col:nth-child(1) { width:282px; }
  .v-agentslist li div.list-col:nth-child(3) { width:210px; }

}

@media only screen and ( -webkit-min-device-pixel-ratio: 2),
       only screen and ( -moz-min-device-pixel-ratio: 2),
       only screen and ( min-device-pixel-ratio: 2),
       only screen and ( min-resolution: 192dpi),
       only screen and ( min-resolution: 2dppx)
{
  .v-sprite { background-image:url('/contacts/spriteA0@2x.png'); }
}
