:root {
    --site-price-color: #0f6da8;
    --site-price-muted: #6f8499;
    --site-price-old: #8b9aac;
}

.site-price {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 7px;
    color: var(--site-price-color);
    font-weight: 900;
    letter-spacing: -.025em;
    line-height: 1;
    white-space: normal;
    font-variant-numeric: tabular-nums lining-nums;
}

.site-price__main {
    display: inline-flex;
    align-items: baseline;
    gap: .42em;
    min-width: 0;
    max-width: 100%;
    white-space: nowrap;
}

.site-price__amount {
    display: inline-flex;
    align-items: baseline;
    gap: .16em;
    color: inherit;
    font-size: inherit;
    font-weight: 900;
    line-height: 1.05;
}

.site-price__value {
    color: inherit;
    font: inherit;
    line-height: inherit;
}

.site-price__currency {
    color: inherit;
    font-size: .52em;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .025em;
    text-transform: uppercase;
    white-space: nowrap;
}

.site-price:not(.site-price--contact) .site-price__amount:not(.site-price__amount--contact) {
    color: var(--site-price-color) !important;
}

.site-price__amount--contact {
    color: var(--site-price-muted);
}

.site-price__unit,
.site-price small {
    display: inline-block;
    margin: 0;
    color: var(--site-price-muted);
    font-size: clamp(12px, .34em, 14px);
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: .005em;
    white-space: nowrap;
}

.site-price__old {
    flex-basis: 100%;
    color: var(--site-price-old);
    font-size: clamp(11px, .42em, 14px);
    font-weight: 750;
    line-height: 1.1;
    text-decoration: line-through;
    letter-spacing: 0;
}

.site-price--inline {
    display: inline-flex;
    white-space: nowrap;
}

.site-price--footer {
    width: auto;
    max-width: 100%;
    justify-content: flex-start;
    align-items: baseline;
    font-size: clamp(22px, 1.75vw, 30px);
}

.site-price--hero {
    display: flex;
    align-items: baseline;
    column-gap: 9px;
    font-size: clamp(30px, 3.6vw, 42px);
}

.site-price--compact {
    gap: 2px 4px;
    font-size: 18px;
}

.site-price--compact .site-price__unit,
.site-price--compact small {
    font-size: 11px;
}

.site-price--contact {
    color: var(--site-price-muted);
}

.site-price--no-unit {
    gap: 0;
}

.site-price--listing {
    font-size: clamp(22px, 1.8vw, 30px);
}

.site-price--sidebar {
    font-size: 17px;
}

.site-sidebar .site-price--sidebar {
    align-items: baseline;
    gap: 3px 6px;
    color: var(--site-price-color);
    font-size: 17px;
    line-height: 1.15;
}

.site-sidebar .site-price--sidebar .site-price__main,
.site-sidebar .site-price--sidebar .site-price__amount {
    align-items: baseline;
}

.site-sidebar .site-price--sidebar .site-price__currency {
    font-size: 1em;
    font-weight: 900;
    letter-spacing: 0;
	margin-left: 4px
}

.site-sidebar .site-price--sidebar .site-price__unit,
.site-sidebar .site-price--sidebar small.site-price__unit {
    margin: 0;
    color: var(--site-price-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.15;
    text-transform: none;
}

.site-price--booking-summary {
    justify-content: flex-end;
    text-align: right;
}

@media (max-width: 767px) {
    .site-price {
        white-space: normal;
    }

    .site-price--hero {
        font-size: clamp(28px, 8.5vw, 34px);
    }

    .site-price--footer,
    .site-price--listing {
        font-size: clamp(22px, 7vw, 28px);
    }

    .site-price--booking-summary {
        justify-content: flex-start;
        text-align: left;
    }
}
