.wplf-detail-location p,
.wplf-detail-location h1,
.wplf-detail-location h2,
.wplf-detail-location h3,
.wplf-detail-location h4,
.wplf-detail-location h5,
.wplf-detail-location h6,
.wplf-detail-location span,
.wplf-detail-location div,
.wplf-detail-location a,
.wplf-detail-location button {
    font-family: 'Inter'!important;
}

.wplf-detail-location img {
	box-shadow: none!important;
}

.wplf-content input[type="text"], .wplf-content input[type="number"], .wplf-content input[type="email"], .wplf-content input[type="url"], .wplf-content input[type="password"], .wplf-content input[type="search"], .wplf-content input[type=reset], input[type=tel], .wplf-content input[type=date], .wplf-content select {
    height: 48px!important;
    box-sizing: border-box!important;
    box-shadow: none!important;
}

.wplf-mb-1 {
	margin-bottom: 1rem;
}

.wplf-mt-1 {
	margin-top: 1rem;
}

.wplf-detail-location-template .wplf-detail-location {
	margin: 0 auto 20px auto;
	padding: 0 30px;
}

.wplf-detail-location {
    width: 100%;
    max-width: 1600px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 10px;
}

.wplf-detail-location .wplf-single-left-panel, .wplf-detail-location .wplf-single-right-panel {
    -ms-flex: 0 0 calc(50% - 10px);
    flex: 0 0 calc(50% - 10px);
    max-width: calc(50% - 10px);
}

.wplf-detail-location .wplf-single-bottom-panel {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

.wplf-single-map {
	border-radius: 16px;
}

.wplf-single-frame {
	background: #fff;
	border: 1px solid #D9DADD;
	box-shadow: 0px 4px 16px 0px rgba(48, 58, 79, 0.04);
	padding: 30px;
	border-radius: 24px;
}

.wplf-single-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wplf-single-tags a {
    padding: 8px 12px;
    background-color: #F0F4F7;
    border-radius: 6px;
    text-decoration: none!important;
    color: #4F505A;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
}

.wplf-single-tags a:hover {
	background-color: #D9DADD;
}

.wplf-single-image img {
    width: 100%;
    aspect-ratio: 730 / 360;
    object-fit: cover;
    border-radius: 16px;
    cursor: pointer;
}

.wplf-single-title {
	font-size: 24px;
	font-weight: 600;
	line-height: 32px;
	text-align: left;
	color: #28282D;
	margin-bottom: 8px;
}

.wplf-single-address {
	display: flex;
	align-items: center;
	column-gap: 8px;
}

.wplf-single-address span {
	font-size: 16px;
	font-weight: 400;
	line-height: 22px;
	color: #28282D;
}

.wplf-single-info-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.wplf-single-btn-link {
	display: flex;
	gap: 4px;
	border: 1px solid #E4E4E9;
	border-radius: 6px;
	padding: 8px 12px;
	background-color: #fff;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	color: #01527B!important;
	text-decoration: none!important;
}

.wplf-single-btn-link:hover {
	background-color: #EBF5FA;
	border-color: #0173AB;
}

.wplf-galleries {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
	padding: 0px;
	gap: 8px;
}

.wplf-galleries img {
    aspect-ratio: 1 / 1;
    width: 115px;
    border-radius: 8px;
    cursor: pointer;
    object-fit: cover;
}

/*Styles info windows*/
.wplf-single-map .gm-style-iw-chr {
    display: none;
}

.wplf-single-map .gm-style-iw > div {
    overflow: visible !important;
}

.wplf-single-map .gm-style-iw-c {
    padding: 12px!important;
    background: none!important;
}

.wplf-single-map .gm-style-iw-d, .wplf-single-map .gm-style-iw-c {
    max-height: initial !important;
}

.wplf-custom-fancybox button {
	border: none;
	width: var(--f-thumb-width);
	padding: 0;
	border-radius: 0;
}

.wplf-custom-fancybox button:focus {
	background-color: unset;
	color: unset;
}
/* End styles info windows */

.wplf-day-rows {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.wplf-single-bottom-panel .wplf-day-rows {
	flex-direction: row;
	flex-wrap: wrap;
}
.wplf-shop-hours h3 {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 600;
	font-size: 20px;
	line-height: 100%!important;
	color: #28282D;
	margin-top: 0;
	margin-bottom: 25px;
}
.wplf-shop-hours .wplf-day-row {
	display: flex;
	align-items: center;
}

.wplf-single-bottom-panel .wplf-shop-hours .wplf-day-row {
	flex-direction: column;
	gap: 20px;
}

.wplf-single-right-panel .wplf-shop-hours .wplf-day-title {
	flex: 0 0 135px;
}

.wplf-single-bottom-panel .wplf-shop-hours .wplf-day-title {
	width: 100%;
	text-align: center;
}

.wplf-single-bottom-panel .wplf-day-row.wplf-is-open {
	width: 156px;
}

.wplf-shop-hours .wplf-day-title span {
	border: 1px solid #979797;
	border-radius: 8px;
	background-color: #fff;
	font-weight: 400;
	font-size: 16px;
	line-height: 130%;
	color: #B9B9B9;
	padding: 7px 16px;
}

.wplf-shop-hours .wplf-is-open .wplf-day-title span {
	border-color: #0173AB;
	background-color: #0173AB;
	color: #fff;
}

.wplf-shop-hours .wplf-time-group {
	display: flex;
	gap: 5px;
	font-weight: 400;
	font-size: 17px;
	line-height: 130%;
	text-align: center;
	color: #6A6A6D;
}

.wplf-single-bottom-panel .wplf-shop-hours .wplf-day-title span {
	display: block;
}

.wplf-single-right-panel .wplf-shop-hours .wplf-time-group {
	flex-wrap: wrap;
	padding: 6px 16px;
	border: 1px solid #979797;
	border-radius: 8px;
	box-sizing: border-box;
}

.wplf-single-right-panel .wplf-shop-hours .wplf-time-group.wplf-time-col {
	flex-direction: column;
}

.wplf-single-bottom-panel .wplf-shop-hours .wplf-time-group {
	flex-direction: column;
	width: 156px;
}

.wplf-shop-hours .wplf-time-slot {
	display: flex;
	gap: 5px;
	font-size: 14px;
}

.wplf-single-right-panel .wplf-shop-hours .wplf-time-group:not(.wplf-time-col) .wplf-time-slot:not(:last-child)::after {
	content: "/";
	color: #000;
}

.wplf-single-bottom-panel .wplf-shop-hours .wplf-time-slot {
	flex-direction: column;
	gap: 0;
	padding: 7px 16px;
	border: 1px solid #979797;
	border-radius: 8px;
	box-sizing: border-box;
}

@media (max-width: 1024px) {
    .wplf-detail-location {
        flex-direction: column;
    }

    .wplf-detail-location .wplf-single-right-panel, .wplf-detail-location .wplf-single-left-panel {
        flex: none;
        width: 100%;
        max-width: 100%;
    }

    .wplf-detail-location .wplf-single-left-panel {
        margin-left: 0;
        margin-top: 20px;
    }
}

@media (max-width: 480px) {
	.wplf-single-frame {
		padding: 20px;
	}
}