.fromhome {
    margin: auto;
    max-width: 1000px;
}

.fromhome-search {
    margin-bottom: 20px;
    display: flex;
    flex-flow: row wrap;
}

.fromhome-search input[type="text"] {
    background-color: #eae8de;
    border: 1px solid #eae8de;
    border-bottom: 2px solid #3f3f3f;
    box-sizing: border-box;
    color: #3f3f3f;
    font-size: 1.8rem;
    float: none;
    line-height: 2.4rem;
    overflow: hidden;
    padding: .6rem 1rem;
    transition-property: border, box-shadow;
    width: 100%;
}

.fromhome-search label {
    align-items: center;
    color: #3f3f3f;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.9rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.fromhome-search::after {
    clear: both;
    content: "";
    display: block;
}

.fromhome-search-what {
    float: left;
    width: 250px;
    margin-right: 15px;
    position: relative;
}

.fromhome-search-where {
    float: left;
    width: 250px;
    margin-right: 15px;
}

.fromhome-search-button {
    display: flex;
    align-items: flex-end;
    margin-bottom: 10px;
}

.fromhome-google-map {
    height: 60vh;
    margin-bottom: 20px;
}

.fromhome-filter {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
}

.fromhome-filter label {
    margin-right: 5px;
}

.fromhome-filter-button button {
    padding: 15px;
    color: #fff;
    width: 120px;
    margin-right: 5px;
}

.fromhome-filter-button button:hover {
    text-decoration: underline;
}

.fromhome-filter-all {
    background-color: #ccc;
}

.fromhome-filter-buy {
    background-color: #7DB349;
}

.fromhome-filter-eat {
    background-color: #D8B83D;
}

.fromhome-filter-experience {
    background-color: #961917;
}

.fromhome-filter-range {
    display: flex;
    align-items: center;
}

.fromhome-filter-range select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #eae8de;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath fill='%233f3f3f' d='M0,52.8512957 C0,51.9392726 0.155711267,51.0494939 0.4671338,50.2042042 C0.800800801,49.3589145 1.31242353,48.6248471 1.95751307,47.9575131 C3.24769214,46.667334 4.82704927,46 6.65109554,46 C8.47514181,46 10.0322545,46.667334 11.344678,47.9575131 L100.678456,137.313536 L188.477366,49.33667 C189.767545,48.0242465 191.369147,47.3791569 193.259927,47.3791569 C195.128462,47.3791569 196.752308,48.0242465 198.042487,49.33667 C199.35491,50.6268491 200,52.2284507 200,54.1192303 C200,56.01001 199.35491,57.6116116 198.042487,58.9017907 L105.372039,151.394283 C104.08186,152.684462 102.502503,153.351796 100.678456,153.351796 C98.85441,153.351796 97.2972973,152.684462 95.9848738,151.394283 L1.95751307,57.5448782 C1.31242353,56.8997887 0.800800801,56.1212323 0.4671338,55.2759426 C0.155711267,54.4306529 0,53.6298521 0,52.8512957 Z'/%3E%3C/svg%3E");
    background-position: calc(100% - 1.6rem) 50%;
    background-repeat: no-repeat;
    background-size: 1.6rem 1.6rem;
    border: 0;
    border-radius: 0;
    box-shadow: inset 0 0 0 2px #3f3f3f;
    cursor: pointer;
    font-size: 1.8rem;
    float: none;
    height: 4rem;
    line-height: 2.4rem;
    padding: .6rem 4.6rem .6rem 1rem;
    text-overflow: ellipsis;
    transition-property: box-shadow;
    margin-left: 5px;
}

@media {
    .fromhome {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media (min-width: 36.25em) {
    .fromhome {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media (min-width: 51.875em) {
    .fromhome {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media (min-width: 68.125em) {
    .fromhome {
        padding-left: 6rem;
        padding-right: 6rem;
    }
}

.fromhome-list-details-button {
    display: flex;
    align-items: center;
    justify-content: center;
}

.fromhome-list-details-button::after {
    clear: both;
    content: "";
    display: block;
}

.fromhome-list-details-button button:hover {
    box-shadow: inset 0 -1px;
}

.fromhome-list-details {
    font-size: 1.8rem;
    line-height: 3rem;
}

.fromhome-list-details h4.SHOP, .fromhome-details-headline h3.SHOP {
    color: #7DB349;
}

.fromhome-list-details h4.RESTAURANT, .fromhome-details-headline h3.RESTAURANT {
    color: #D8B83D;
}

.fromhome-list-details h4.EVENT, .fromhome-details-headline h3.EVENT {
    color: #961917;
}

.fromhome-list-details .tr img {
    height: 100%;
}

.fromhome-list-details-icon {
    margin-right: 10px;
}

.fromhome-list-details .tr {
    border-bottom: 2px solid #6e6e6e;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.fromhome-list-details .tr .distance {
    display: flex;
    align-items: center;
    margin-left: auto;
}

.fromhome-list-details .tr p:last-of-type {
    margin-bottom: 10px;
}

.fromhome-details {
    margin-left: auto;
    margin-right: auto;
    max-width: 65rem;
    position: relative;
}

.fromhome-details-back {
    margin: 20px 0;
}

@media {
    .fromhome-details-content, .fromhome-details-back {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media (min-width: 36.25em) {
    .fromhome-details-content, .fromhome-details-back {
        padding-left: 4rem;
        padding-right: 4rem;
    }

    .fromhome-details-headline {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

@media (min-width: 51.875em) {
    .fromhome-details-content, .fromhome-details-back {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media (min-width: 68.125em) {
    .fromhome-details-content, .fromhome-details-back {
        padding-left: 0;
        padding-right: 0;
    }
}

.fromhome-details-content {
    font-size: 1.8rem;
    line-height: 3rem;
}

.fromhome-details-content .p-icon-phone::after, .fromhome-details-content .p-icon-email::after {
    top: .75rem;
}

.fromhome-details-content h3 {
    margin-bottom: 10px;
}

.fromhome-details-address {
    margin-bottom: 20px;
}

.fromhome-details-infos-detail {
    float: left;
    text-align: center;
    width: 50px;
    height: 75px;
}

.fromhome-details-infos-detail img {
    width: 100%;
}

.fromhome-details-infos {
    margin-top: 20px;
}

.fromhome-details-infos::after {
    clear: both;
    content: "";
    display: block;
}

@media (max-width: 36.25em) {
    .fromhome-search-what {
        margin-bottom: 10px;
        width: 100%;
    }

    .fromhome-search-where {
        margin-bottom: 10px;
        width: 100%;
    }

    .fromhome-filter-button {
        width: 100%;
    }

    .fromhome-filter-button button {
        width: 100%;
    }
}

@media (max-width: 51.874em) {
    .fromhome-filter-range {
        margin-top: 10px;
    }
}

#fromhome-overview div.dt-processing {
    background: #eee;
    position: fixed;
}

#fromhome-overview .fromhome-table-icon {
    height: 25px;
}

table.fromhome {
    font-size: 14px;
    max-width: 100%;
}

table.fromhome .fa {
    font-size: 24px;
    margin-right: 5px;
}

table.fromhome .fa:not([disabled]):hover {
    font-weight: bold;
}

table.fromhome .fa-check {
    color: #7db349;
}

table.fromhome .fa-xmark {
    color: #961917;
}

table.fromhome .fa-trash-can:hover {
    cursor: pointer;
}

table.fromhome .fa-triangle-exclamation {
    color: #961917;
}

table.fromhome .fa-circle-info {
    color: #146ebe;
    cursor: pointer;
}

table.fromhome .fa[disabled] {
    color: #aaa;
    cursor: not-allowed;
}

table.fromhome td.name div {
    display: flex;
    align-items: center;
}

table.fromhome td.name img {
    margin-right: 5px;
}

table.fromhome td.number {
    text-align: right;
}

table.fromhome .functions {
    text-wrap: nowrap;
}

table.fromhome td, table.fromhome th {
    word-break: normal;
}

#fromhome-overview .expire-cache-button {
    background: #961917;
    color: #fff;
    padding: 10px;
}

#fromhome-overview #confirm-expire-cache {
    margin-top: 40px;
}

#fromhome-overview .section-button {
    border: 1px solid black;
    border-radius: 7px;
    padding: 3px 8px;
}

#fromhome-overview .section-button.active {
    background: black;
    color: #fff;
    font-weight: bold;
}

#fromhome-overview .btn-filter {
    color: #fff;
    padding: 5px;
    margin-right: 5px;
}

#fromhome-overview .btn-filter:hover {
    text-decoration: underline;
}

#fromhome-overview .btn-filter.active {
    text-decoration: underline;
    font-weight: bold;
}

#fromhome-overview .btn-shop {
    background: #7db349;
}

#fromhome-overview .btn-restaurant {
    background: #d8b83d;
}

#fromhome-overview .btn-event {
    background: #961917;
}

#fromhome-overview #add-button, #refresh-button {
    background: #7db349;
    color: #fff;
    padding: 10px 15px;
    margin-left: 15px;
}

#fromhome-overview #add-button:hover .fa {
    font-weight: bold;
}

#fromhome-overview #popup-overlay {
    z-index: 999999;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

#fromhome-overview .popup-form {
    z-index: 999999;
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    width: 500px;
}

#fromhome-overview .popup-close {
    position: absolute;
    top: 8px;
    right: 12px;
    background: none;
    border: 1px solid #333;
    padding: 3px;
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    color: #333;
    z-index: 1;
}

#fromhome-overview .popup-close:hover {
    color: #000;
}