.psll{ position: relative; margin:0 0 20px 0; width: 100%;}
.psll-body {}
.psll:after{content:" ";clear:both;display:block;}
.psll-title{/*display:none;*/}
.psll-select {display:none;}


/* switch */
.psll-listshort .psll-switch {position:absolute; left:0;top:0;display:none;white-space: nowrap;}
.psll-listshort .psll-switch .psll-switch-btn {padding:7px 30px 7px 50px;line-height:20px;border:2px solid #d2d2d2;display:inline-block;box-sizing: border-box;
text-align: center; cursor: pointer;}
.psll-listshort .psll-switch .psll-switch-btn:hover {background-color: #f8f8f8;}
.psll-listshort .psll-switch .psll-switch-btn-active {background-color: #444444;border-color: #444444;color: #ffffff;}
.psll-listshort .psll-switch .psll-switch-btn-active:hover {background-color: #444444;}
.psll-listshort .psll-switch .psll-switch-map {border-right:none; border-bottom-left-radius: 3px;border-top-left-radius: 3px;
    background-image: url(../img/design/locationslist/location-gray.png);background-repeat: no-repeat;background-position: 20px center;}
.psll-listshort .psll-switch .psll-switch-list {border-left:none;border-bottom-right-radius: 3px;border-top-right-radius: 3px;
    background-image: url(../img/design/locationslist/list-gray.png);background-repeat: no-repeat;background-position: 20px center;}

.psll-listshort .psll-switch .psll-switch-btn-active.psll-switch-map{
    background-image: url(../img/design/locationslist/location-white.png);
}
.psll-listshort .psll-switch .psll-switch-btn-active.psll-switch-list{
    background-image: url(../img/design/locationslist/list-white.png);
}


/* panel psll-listshort (map hidden)*/

.psll-panel {}
.psll-panel-title {display:none;}

.psll-listshort {padding: 0 0 20px 0;}
.psll-listshort .psl {float:left; width:48%; margin-right:1%;margin-bottom: 1%; padding:10px 0 10px 0; min-height:200px;border:2px solid #e8e8e8; border-radius:3px;}

.psll-listshort .psl .psl-image {float:left; width: 22%;  margin:0;padding:0;padding-top:5px;margin-right:2%;margin-left:2%; font-size:0;}
.psll-listshort .psl .psl-image a {font-size:0; padding:0;margin:0;height:auto;line-height: 0;}
.psll-listshort .psl-image-align-right .psl-image {float:right;margin:0;margin-left: 2%;}
.psll-listshort .psl .psl-image img {width:100%;}
.psll-listshort .psl-defaultimg .psl-image img {border:1px solid #e3e3e3; }

.psl-mappin {display:none; position: absolute; z-index: 1; width: 30px;height:35px;text-align:center;
    top: 10px; right: 10px; cursor: pointer;
    background: url(../img/design/locationslist/pin-small.png) no-repeat top center;
}
.psl-mappin-bw {width:1px;height:1px;position:absolute;left:-1000px;background: url(../img/design/locationslist/pin-small-bw.png) no-repeat top center;}


.psll-listshort .psl .psl-body {}
.psll-image-placement-separate .psl .psl-body {width: 73%;float:right;}
.psll-image-placement-separate .psl-image-align-right .psl-body {float:left;}
.psll-listshort .psl-noimage .psl-body {width:96%; margin:0 2%;}

.psll-listshort .psl-wrap {padding: 5px 0; position: relative;}
.psll-listshort .psl-wrap:after {content: "";display: block; clear:both;}

.psll-listshort .psl .psl-title {width:100%; padding:0 0 10px 0;margin:0;font-size: large; }
.psll-listshort .psl .psl-title a {text-decoration: none;font-size: large; color: inherit;}

.psll-listshort .psl .psl-text {width: 100%; text-align: left;margin:0;}
.psll-listshort .psl .psl-text .psl-text-content p {margin-top:0;padding-top: 0; margin-bottom:10px;}
.psll-listshort .psl .psl-text .psl-text-content .dots-splitter {display:none;}

.psll-listshort .psl .psl-text .psl-text-hours, .psll-listshort .psl .psl-text .psl-text-map,
.psll-listshort .psl .psl-text .psl-text-icon, .psll-listshort .psl .psl-text .psl-text-title{display:none;}

.psll-listshort .psl .psl-text .psl-text-address {display:block; padding-left:25px; padding-right:5px;margin-bottom:4px; line-height:26px;
    background: url(../img/design/locationslist/location-small.png) no-repeat left center; }

.psll-listshort .psl .psl-text .psl-text-phone {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
    background: url(../img/design/locationslist/phone-small.png) no-repeat left center; }

.psll-listshort .psl .psl-text .psl-text-fax {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
    background: url(../img/design/locationslist/phone-small.png) no-repeat left center; }

.psll-listshort .psl .psl-text .psl-text-email {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
    background: url(../img/design/locationslist/email-small.png) no-repeat left center;}


.psll-listshort .psl .psl-more, .psll-listshort .psl .psl-more a {display:inline;font-size:small;}

/* panel psll-listshort (map showing)*/
.psll-switch-selmap .psll-panel{border:1px solid #ccc;float:left;height:450px;overflow:hidden;width:29%;}
.psll-switch-selmap .psll-panel .psl{border:none;border-bottom:2px solid #e8e8e8;border-radius:0;float:none;height:auto;margin:5px 0 0;min-height:auto;padding:0;position:static;width:100%;}
.psll-switch-selmap .psll-panel .psl-active {background: #f7f7f7;}

.psll-switch-selmap .psll-panel-title {display:block; font-size:small;text-transform: uppercase; line-height:40px;
    text-align:center;padding:0 5px;color:#ffffff;background: #555555;
}
.psll-switch-selmap .psll-panel-body {height: 410px; overflow: scroll;}
.psll-switch-selmap .psl .psl-mappin {display:block;}

.psll-switch-selmap .psl-active {background: #e2e2e2;}

.psll-switch-selmap .psl .psl-title,
.psll-switch-selmap .psl .psl-title a{font-size:small; margin:0;padding:0;}
.psll-switch-selmap .psl .psl-text{font-size:small; line-height: 20px;}
.psll-switch-selmap .psl .psl-text .psl-text-address,
.psll-switch-selmap .psl .psl-text .psl-text-phone,
.psll-switch-selmap .psl .psl-text .psl-text-fax,
.psll-switch-selmap .psl .psl-text .psl-text-email {padding:0;margin:0; font-size:smaller;  background: none; line-height:20px;}

.psll-switch-selmap .psl .psl-more {display:inline;}
    /* map */
.psll-withmap {padding-top:60px;}
.psll-withmap .psll-switch {display:block;}

.psll-map {display:block;  visibility:hidden;width: 70%; float:left;height: 450px; overflow:hidden; position:absolute; right: 10000px;border:1px solid #cccccc;border-right:none;}
.psll-switch-selmap .psll-map{position:relative;right:auto;visibility:visible;}

.psll-map .psll-map-body {width:100%; height: 100%;border: none; position: absolute;margin:auto; z-index: 1; background: #f5f5f5;}

/* panel psll-listfull */
.psll-listfull .psll-switch {display:none;}
.psll-listfull .psl {margin:10px 0 20px 0;}
.psll-listfull .psl:after {content: "";display: block; clear:both;}
.psll-listfull .psl-text-content:after {content: "";display: block; clear:both;}

.psll-listfull .psl .psl-image {display:none;}
.psll-listfull .psl .psl-body {width: 100%; float:none;}

.psll-listfull .psl .psl-title {width:100%; padding:0 0 30px 0;margin:0;font-size: large; }
.psll-listfull .psl .psl-title a {text-decoration: none;font-size: large; color: inherit;}

.psll-listfull .psl .psl-text {width: 100%; text-align: left;margin:0;}

.psll-listfull .psl .psl-text .psl-text-content p {margin-top:0;padding-top: 0; margin-bottom:10px;}
.psll-listfull .psl .psl-text .psl-text-content .dots-splitter {display:none;}

.psll-listfull .psl .psl-text .psl-text-cell{background:#f9f9f9;border:1px solid #e3e3e3;border-radius:5px;box-sizing:border-box;float:left;margin-right:2%;min-height:230px;position:relative;width:32%;}
.psll-listfull .psl .psl-text .psl-text-cell:after{content:"";display:block;padding-bottom:70%;}

.psll-listfull .psl .psl-text .psl-text-cell.psl-text-map{margin-right:0;}
.psll-listfull .psl .psl-text-map-directions{display:block;float:right;font-size:small;margin:0 0 0 2%;padding:5px 0 0;text-align:right;width:32%;}
.psll-listfull .psl .psl-text-map-directions a{color:#222;text-decoration:underline;}
.psll-listfull .psl .psl-text-map-directions a:hover{text-decoration:none;}

.psll-listfull .psl .psl-text .psl-text-icon {
    position:absolute;z-index:5;top: -25px; left:0;right:0; margin:auto; width:45px; height:45px; border:1px solid #e3e3e3;border-radius: 22px;
    background: #ffffff url(../img/design/locationslist/phone.png) no-repeat center center; background-size: 70%;
}
.psll-listfull .psl .psl-text .psl-text-hours .psl-text-icon { background-image:url(../img/design/locationslist/hours.png);}
.psll-listfull .psl .psl-text .psl-text-map .psl-text-icon { background-image:url(../img/design/locationslist/location.png);}

.psll-listfull .psl .psl-text .psl-text-title{display:block;font-size:large;font-weight:bold;height:30px;line-height:30px;position:absolute;text-align:center;top:30px;width:100%;}
.psll-listfull .psl .psl-text .psl-text-cell-wrap {
    position:absolute; margin:auto;left:0;right:0; display:block; text-align:center;top: 80px;
    width:90%; font-size:small;
}
.psll-listfull .psl .psl-text .psl-text-location {display:block;font-weight:bold;margin-bottom:10px;}
.psll-listfull .psl .psl-text .psl-text-address {display:block;padding-bottom:10px;}
.psll-listfull .psl .psl-text .psl-text-phone {}
.psll-listfull .psl .psl-text .psl-text-fax {}
.psll-listfull .psl .psl-text .psl-text-email {}

.psl .psl-text .psl-text-hours .psl-text-cell-wrap { width:90%; font-size:0; line-height: 0;}
.psl .psl-text .psl-weekday {min-width: 45%;display:inline-block;text-align:left;padding-right:10px; line-height: 22px; margin:0;}
.psl .psl-text .psl-weekday-name{display:inline-block;font-size:small;font-weight:bold;width:32px;}
.psl .psl-text .psl-weekday-hours {font-size: small;}

.psl .psl-text .psl-weekday-name-full {display:none;}

.psl .psl-text .psl-weekdays-notes{display:inline-block;font-size:small;line-height:22px;margin:10px 0 0;text-align:left;width:100%;}

.psl .psl-text .psl-text-phone {display:inline-block; padding-left:21px;padding-right:20px;margin-bottom:4px; line-height:18px;
    background: url(../img/design/locationslist/phone-small.png) no-repeat left top; background-size: contain;}

.psl .psl-text .psl-text-fax {display:inline-block; padding-left:21px;padding-right:20px;margin-bottom:4px; line-height:18px;
    background: url(../img/design/locationslist/phone-small.png) no-repeat left top; background-size: contain;}

.psl .psl-text .psl-text-email {display:inline-block; padding-left:21px;padding-right:20px;margin-bottom:4px;line-height:18px;
    background: url(../img/design/locationslist/email-small.png) no-repeat left top; background-size: contain;}


.psll-listfull .psl .psl-text .psl-text-map .psl-text-cell-wrap { width:100%; height:100%; top:0;left:0; font-size:0; line-height: 0; overflow:hidden; text-align:center;}

.psll-listfull .psl .psl-text .psl-text-map .psl-text-cell-wrap img {z-index:1; width: 100%; position:absolute;left:0;top:0;bottom:0;margin:auto;}

.psll-listfull .psl .psl-text .psl-text-map .psl-text-cell-wrap .psl-text-map-body {width:100%; height: 100%;border: none;
    position: absolute;margin:auto; z-index: 2; background: #f5f5f5;}

.psll-listfull .psl .psl-more {display:none;}


.psll .psll-ismobile {width:1px;height:1px;font-size:0;position:absolute;right:10000px;display:none;}

@media screen and (max-width:1200px), screen and (max-device-width:1280px){
    .psll-listfull .psl .psl-text .psl-weekday {padding-right:5px; line-height: 18px;}
    .psll-listfull .psl .psl-text .psl-weekday-name {font-size: x-small; width:26px;}
    .psll-listfull .psl .psl-text .psl-weekday-hours {font-size: x-small;}

    .psll-listfull .psl .psl-text .psl-text-title {font-size: medium;}
}
@media screen and (max-width:990px), screen and (max-device-width:1024px){

}
@media screen and (max-width:768px), screen and (max-device-width:768px){
    .psll-listfull .psl .psl-text .psl-text-cell {
        float:none; clear:both; width: 96%;  height: auto; margin-bottom:30px;
    }
    .psll-listfull .psl .psl-text .psl-text-cell:after{content: "";display: block; clear:both; padding:0;}

    .psll-listfull .psl .psl-text .psl-weekday {padding-right:10px; line-height: 22px; }
    .psll-listfull .psl .psl-text .psl-weekday-name {font-size: small; width:32px;}
    .psll-listfull .psl .psl-text .psl-weekday-hours {font-size: small;}
    .psll-listfull .psl .psl-text .psl-text-title {position: static; margin-top:30px; font-size: small;}
    .psll-listfull .psl .psl-text .psl-text-cell-wrap {position: static; margin-top:30px;}

    .psll-listfull .psl .psl-title {clear:both; font-size: x-large;}
    .psll-listfull .psl .psl-text .psl-text-map .psl-text-cell-wrap { height:300px; position:relative; overflow:hidden;}


    .psll-listshort .psl {float:none; width:100%; margin: auto; margin-bottom:10px;padding:10px 0 10px 0;border:2px solid #e8e8e8; border-radius:3px;}


    .psll .psll-ismobile{display: block;}

    .psll-switch-selmap .psll-body {width: 100%; }
    .psll-switch-selmap .psll-map{border:1px solid #ccc;clear:both;float:none;height:300px;margin-bottom:10px;max-height:300px;position:relative;width:100%;}

    .psll-switch-selmap .psll-panel {width:100%; position: static; height: auto;min-height: auto; float:none;clear:both;}
    .psll-switch-selmap .psll-panel-title {display:none;}
    .psll-switch-selmap .psll-panel-body {height: auto; overflow: hidden;}
    
    .psll-switch-selmap .psll-panel{border:0;}
    .psll-switch-selmap .psll-panel .psl{border:2px solid #ccc;display:none;float:none;height:auto;margin:0;padding:0;position:static;width:100%;}
    .psll-switch-selmap .psll-panel .psl-active {display:block;}

    .psll-switch-selmap .psll-panel .psl-wrap {margin:0; padding:0; border:0;width: 100%; height:auto;min-height:auto;position: static;float:none;}
    .psll-switch-selmap .psll-panel .psl-body {margin:0; padding:0; border:0;width: 100%; height:auto;min-height:auto;position: static;float:none;}
    .psll-switch-selmap .psll-panel .psl-text {margin:0; padding:0 20px; box-sizing: padding-box; border:0;width: 100%; height:100%;position: static;float:none;}

    .psll-switch-selmap .psll-panel .psl-image {display: block;width:100%; margin:0; padding:15px 15px 0 15px; clear:both;float:none; background: #cccccc; }
    .psll-switch-selmap .psll-panel .psl-image img {margin:0;padding:0;}

    .psll-switch-selmap .psll-panel .psl-more,
    .psll-switch-selmap .psll-panel .psl-mappin,
    .psll-switch-selmap .psll-panel .psl-title {display:none;}

    .psll-switch-selmap .psl .psl-text .psl-text-hours,
    .psll-switch-selmap .psl .psl-text .psl-text-icon,
    .psll-switch-selmap .psl .psl-text .psl-text-title{display:block;}

    .psll-switch-selmap .psl .psl-text .psl-text-title {
        width: 100%; height:30px; line-height: 30px;display:block;font-size:medium; text-align:left;
        font-weight:bold;margin: 5px 0;
    }
    .psll-switch-selmap .psl .psl-text{font-size:medium; line-height: 22px;}

    .psll-switch-selmap .psl .psl-text .psl-text-address {display:block; padding-left:25px; padding-right:5px;margin-bottom:4px; line-height:26px;
        background: url(../img/design/locationslist/location-small.png) no-repeat left center; }

    .psll-switch-selmap .psl .psl-text .psl-text-phone {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
        background: url(../img/design/locationslist/phone-small.png) no-repeat left center; }

    .psll-switch-selmap .psl .psl-text .psl-text-fax {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
        background: url(../img/design/locationslist/phone-small.png) no-repeat left center; }

    .psll-switch-selmap .psl .psl-text .psl-text-email {display:inline-block; padding-left:25px;padding-right:5px;margin-bottom:4px; line-height:26px;
        background: url(../img/design/locationslist/email-small.png) no-repeat left center;}


    .psll-switch-selmap .psll-select {display:block; width:100%;height:52px; margin-bottom:20px;position: relative;overflow: hidden; }
    .psll-select-body{background:#fff;border:1px solid #ccc;height:50px;position:absolute;top:0;width:100%;z-index:100;}
    .psll-select .psll-select-item { height:50px;line-height:50px;display:none;cursor: pointer; padding-left:20px; padding-right:30px;overflow:hidden;}
    .psll-select .psll-select-item-active {display:block; background: url(../img/design/locationslist/desc.gif) no-repeat 96% 20px;}


    .psll-select-open {overflow: visible !important; padding:0;}
    .psll-select-open .slimScrollDiv {width:100%;}
    .psll-select-open .psll-select-body{height:auto;max-height:300px;overflow:visible;width:100%;}
    .psll-select-open .psll-select-item {display:block;border-bottom:1px solid #f1f1f1;}
    .psll-select-open .psll-select-item-active {background: #f7f7f7;}
    .psll-select-open .psll-select-item:first-child {background-image: url(../img/design/locationslist/asc.gif);
        background-repeat: no-repeat; background-position: 96% 20px;}


}
@media screen and (max-width:600px), screen and (max-device-width:600px){

}
@media screen and (max-width:480px), screen and (max-device-width:480px){

    .psll-listshort .psl .psl-image {float:none; width: 100%;  margin:0;padding:0;margin-right:2%;margin-left:2%;}
    .psll-listshort .psl-image-align-right .psl-image {float:right;margin:0;margin-left: 2%;}
    .psll-listshort .psl .psl-image img {width:100%;border:0; clear: both;padding-top:5px; }


    .psll-listshort .psl .psl-body { width: 100%; float:none; clear: both;}


}
@media screen and (max-width:340px), screen and (max-device-width:340px){}

.psll-masterhide {display:none !important;}