/* Prices on a card's service rows, on list cards and the price summary of a service list (price_sources.py, 05.10.2026). */
.svc-row .svc-main{flex:1 1 auto;min-width:0}
.svc-price{flex:none;margin-left:auto;padding-left:12px;display:grid;justify-items:end;gap:2px;text-align:right;white-space:nowrap}
.svc-price b{font-size:1.0625rem;font-weight:700;line-height:1.25;color:var(--c-ink,#101828)}
.svc-price small{font-size:.8125rem;color:var(--c-muted,#667085)}
.svc-duration{font-size:.8125rem;color:var(--c-muted,#667085)}
.svc-source{margin:14px 0 0;font-size:.875rem;line-height:1.45;color:var(--c-muted,#667085)}
.svc-source a{white-space:nowrap}
.card-price{margin:6px 0 0;font-weight:700;font-size:.9375rem;color:var(--c-ink,#101828)}
.price-summary{box-sizing:border-box;margin:32px 28px 8px;padding:24px 28px;border:1px solid var(--line,#e1e7ee);border-radius:var(--r-lg,20px);max-width:780px;background:var(--c-surface,#fff)}
.price-summary h2{margin:0 0 10px}
.price-summary-lead{margin:0 0 14px;max-width:760px;line-height:1.5}
.price-table{width:100%;max-width:760px;border-collapse:collapse;font-size:.9375rem}
.price-table th{text-align:left;font-weight:600;font-size:.8125rem;color:var(--c-muted,#667085);padding:8px 12px 8px 0;border-bottom:1px solid var(--c-line,#e4e7ec)}
.price-table td{padding:10px 12px 10px 0;border-bottom:1px solid var(--c-line,#eef0f3);vertical-align:top}
.price-table td:nth-child(2),.price-table th:nth-child(2){white-space:nowrap;text-align:right;padding-right:20px}
.price-table td:nth-child(3),.price-table th:nth-child(3){white-space:nowrap;color:var(--c-muted,#667085);width:1%}
.price-summary-note{margin:12px 0 0;max-width:760px;font-size:.8125rem;line-height:1.45;color:var(--c-muted,#667085)}
.directory-layout.map-visible~.price-summary{display:none}
@media (max-width:560px){
 .svc-price b{font-size:1rem}
 .price-table th:nth-child(3),.price-table td:nth-child(3){display:none}
}
.svc-unit{font-size:.8125rem;color:var(--c-muted,#667085)}
.price-table .price-unit{display:block;font-size:.8125rem;font-weight:400;color:var(--c-muted,#667085)}
/* a phone: the price column must not widen the page (audit 29, DES29-03) */
.svc-list{grid-template-columns:minmax(0,1fr)}
.price-table .price-unit{white-space:normal;overflow-wrap:anywhere}
@media (max-width:560px){
 .svc-row .svc-others{white-space:normal}
 .svc-price{max-width:54%}
 .svc-unit{overflow-wrap:anywhere}
 .price-table td:nth-child(2),.price-table th:nth-child(2){white-space:normal;padding-right:0;width:42%}
 .price-table td:nth-child(2) b{white-space:nowrap}
 .price-table td:first-child{overflow-wrap:anywhere}
}
/* the price summary as a framed block, and the line with the prices under the heading of the list (audit 29, DES29-05) */
.price-table a{color:var(--c-primary,#1a66c9)}
.price-lead{margin:8px 0 0;font-size:.9375rem;line-height:1.45;color:var(--c-muted,#667085)}
.price-lead a{color:inherit;text-decoration:none}
.price-lead a:hover{text-decoration:underline}
.price-lead b{color:var(--c-ink,#101828);white-space:nowrap}
@media(min-width:1700px){.price-summary{margin-left:40px;margin-right:40px}}
@media(max-width:1000px){.price-summary{margin-left:18px;margin-right:18px}}
@media(max-width:700px){.price-summary{margin:28px 16px 8px;padding:18px 16px}}
