/************************************************************
 * Packages on submission page
 ************************************************************/
.listing-manager-submission-package {
    border: 1px solid rgba(0, 0, 0, .08);
    margin: 0 0 30px 0;
    position: relative;
}

.listing-manager-submission-package label {
    display: block;
    padding: 25px;
}

.listing-manager-submission-package h4 {
    margin: 0;
    padding: 0;
}

.listing-manager-submission-package input[type=radio] {
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
}

.listing-manager-submission-package ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.listing-manager-submission-package li {
    display: inline-block;
}

.listing-manager-submission-package li:after {
    content: '/';
}

.listing-manager-submission-package li:last-child:after {
    display: none;
}

.listing-manager-submission-package.expired {
    opacity: .5;
}

.listing-manager-submission-package.expired label {
    cursor: not-allowed;
}

.listing-manager-submission-package.expired:after {
    background-color: rgba(0, 0, 0, .04);
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

/************************************************************
 * Pricing tables
 ************************************************************/
.listing-manager-packages {
    margin: 0 -15px;
}

.listing-manager-package-wrapper {
    box-sizing: border-box;
    float: left;
    padding: 0 15px;
    width: 33.3333%;
}

.listing-manager-package {
    border: 1px solid rgba(0, 0, 0, .08);
    margin: 0 0 30px 0;
    padding: 25px;
}

.listing-manager-package h2 {
    margin: 0;
    text-align: center;
}

.listing-manager-package p {
  text-align: center;
}

.listing-manager-package ul {
    list-style: none;
    margin: 0 0 30px 0;
    padding: 0;
}

.listing-manager-package li span,
.listing-manager-package li strong {
  display: block;
}

.listing-manager-package .button {
  text-align: center;
  width: 100%;
}

/************************************************************
 * Google Maps
 ************************************************************/
.map-container, .map-wrapper {
    height: 500px;
    position: relative;
}

.map-content {
    bottom: 50px;
    left: 50px;
    position: absolute;
}

.marker {
    background-image: url('../img/marker.png');
    background-repeat: no-repeat;
    background-size: cover;
    height: 51px;
    display: block;
    left: 0;
    position: relative;
    top: 0;
    transition: all ease .15s;
    user-select: none;
    -webkit-user-select: none;
    width: 32px;
}

.marker:after {
     background-color: #fff;
     border: 0;
     border-radius: 50%;
     content: '';
     display: block;
     height: 17px;
     left: 8px;
     position: relative;
     top: -19px;
     transition: all .4s ease;
     width: 17px;
 }

.marker:before {
     background-color: rgba(0, 0, 0, .5);
     border-radius: 50%;
     bottom: 3px;
     box-shadow: 0 0 0 0 #000;
     content: '';
     display: block;
     height: 3px;
     left: 50%;
     position: absolute;
     transition: all ease .15s;
     transform: translateX(-50%);
     -webkit-transform: translateX(-50%);
     width: 3px;
     z-index: -1;
 }

.marker:hover {
    margin-top: 6px;
}

.marker:before {
    background-color: rgba(0, 0, 0, .14);
    bottom: -6px;
    box-shadow: 0 0 7px 1px rgba(0, 0, 0, .4);
    width: 16px;
}

.marker-inner {
    color: #fff;
    display: block;
    font-size: 16px;
    height: 26px;
    line-height: 27px;
    margin: 0 0 0 6px;
    position: relative;
    overflow: hidden;
    text-align: center;
    top: 6px;
    width: 26px;
}

.infobox {
    background-color: #fff;
    position: relative;
}

.infobox:after {
    border-color: transparent;
    border-style: solid;
    border-width: 12px 6px;
    border-top-color: #fff;
    bottom: -18px;
    content: '';
    display: block;
    height: 0;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 0;
}

.infobox-inner {
    background-color: #fff;
    border-radius: 0;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .2);
    padding: 15px;
    position: relative;
    width: 260px;
}

.infobox .close {
    background-color: #323232;
    border: 0;
    cursor: pointer;
    height: 20px;
    opacity: 1;
    padding: 3px;
    position: absolute;
    right: 0;
    text-indent: -9999px;
    top: 0;
    width: 20px;
    z-index: 999;
}

.infobox .close:after {
     background-color: #fff;
     content: '';
     display: block;
     height: 2px;
     left: 50%;
     position: absolute;
     top: 50%;
     transform: translateX(-50%) translateY(-50%) rotate(45deg);
     width: 10px;
 }

.infobox .close:before {
     background-color: #fff;
     content: '';
     display: block;
     height: 2px;
     left: 50%;
     position: absolute;
     top: 50%;
     transform: translateX(-50%) translateY(-50%) rotate(-45deg);
     width: 10px;
}

.infobox .close:hover {
    background-color: #323232;
}

.infobox-image {
    background-size: cover;
    background-position: center center;
    border-radius: 0;
    height: 170px;
    margin: -15px -15px 0 -15px;
    position: relative;
}

.infobox-image:after {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), transparent 55px);
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
}

.infobox-image a {
    bottom: 0;
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.infobox-item {
    border-bottom: 1px solid #f4f4f4;
    margin: 0 0 12px 0;
    padding: 0 0 12px 0;
}

.infobox-item:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}


.infobox-item-title {
    color: #323232;
    display: block;
    font-size: 14px;
    margin: 12px 0 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.infobox-item-title a {
    color: #323232;
}

.infobox-item-image {
    background-repeat: no-repeat;
    background-size: cover;
    float: left;
    height: 45px;
    margin: 0 13px 0 0;
    position: relative;
    width: 60px;
}

.infobox-item-image a {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.infobox.multiple .infobox-inner {
    overflow: auto;
}

.infobox-title {
    position: relative;
}

.infobox-title h2 {
    font-size: 15px;
    font-weight: 700;
    margin: 13px 0 0 0;
    padding: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 170px;
    white-space: nowrap;
}

.infobox-rating {
    font-size: 12px;
    position: absolute;
    right: 0;
    top: 2px;
}

.infobox-category {
    font-size: 12px;
    position: absolute;
    right: 0;
    top: -2px;
}

.map-actions {
    user-select: none;
    -webkit-user-select: none;
}

.map-actions a {
    background-color: #323232;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    height: 30px;
    line-height: 30px;
    margin: 0 -4px 0 0;
    min-width: 30px;
    text-align: center;
    transition: all .15s linear;
}

.map-actions a:hover {
    background-color: #323232;
    color: #fff;
}

.map-actions span {
    font-size: 13px;
    padding: 0 15px;
}

.map-actions a:first-of-type:before {
    content: none;
}

.map-actions a:before {
    border-left: 1px solid #323232;
    content: "";
    display: block;
    position: absolute;
    height: 20px;
    margin-top: 5px;
}

.map-actions-group {
    display: inline-block;
    margin: 0 12px 0 0;
}

.map-actions-group:hover a:before {
    height: 30px;
    margin-top: 0;
}

.clusterer {
    align-items: center;
    background-color: #323232;
    border-radius: 50%;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
    color: rgba(255, 255, 255, .7);
    display: flex;
    font-size: 10px;
    font-weight: 700;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.clusterer-inner {
    align-items: center;
    border: 2px solid rgba(255, 255, 255, .4);
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 11px;
    font-weight: 700;
    height: 28px;
    justify-content: center;
    line-height: 20px;
    width: 28px;
}

.map-message {
    font-size: 32px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}

/************************************************************
 * Agent
 ************************************************************/
.agent {
    border-bottom: 1px solid rgba(0, 0, 0, .04);
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
}

.agent:after {
    clear: both;
    content: '.';
    display: block;
    visibility: hidden;
}

.agent .post-thumbnail {
    float: left;
    margin: 0 30px 0 0;
}

.agent .post-title {
    font-size: 26px;
}

.agent .post-title a {
    color: inherit;
}

.agent .post-subtitle {
    font-size: 16px;
}

.single-agent .post-social ul,
.agent .post-social ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.single-agent .post-social li,
.agent .post-social li {
    display: inline-block;
    margin: 0 10px 0 0;
}

.single-agent .post-overview dt,
.agent .post-overview dt {
    float: left;
    min-width: 120px;
    padding: 8px 0;
}

.single-agent .post-overview dd,
.agent .post-overview dd {
    margin: 0;
    padding: 8px 0;
}

/************************************************************
 * Company
 ************************************************************/
.company {
    border-bottom: 1px solid rgba(0, 0, 0, .04);
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
}

.company:after {
    clear: both;
    content: '.';
    display: block;
    visibility: hidden;
}

.company .post-thumbnail {
    float: left;
    margin: 0 30px 0 0;
}

.company .post-title {
    font-size: 26px;
}

.company .post-title a {
    color: inherit;
}

.company .post-subtitle {
    font-size: 16px;
}

.single-company .post-social-simple ul,
.company .post-social-simple ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.single-company .post-social-simple li,
.company .post-social-simple li {
    display: inline-block;
    margin: 0 10px 0 0;
}

.single-company .post-overview dt,
.company .post-overview dt {
    float: left;
    min-width: 120px;
    padding: 8px 0;
}

.single-company .post-overview dd,
.company .post-overview dd {
    margin: 0;
    padding: 8px 0;
}