.price-hero{padding:48px 0 40px;background:var(--surface);border-bottom:1px solid var(--line)}
.price-hero .service-title{font-size:clamp(2.3rem,5vw,4rem)}
.price-hero .service-lead{margin-bottom:18px}
.price-note{max-width:72ch;color:#475467;line-height:1.65;margin:0}
.price-catalog{padding-top:40px;padding-bottom:64px}
.price-search{max-width:760px;margin:0 0 30px}
.price-search-controls{display:flex;gap:12px}
.price-search-controls input{min-width:0;min-height:48px;caret-color:var(--dark)}
.price-search-status{min-height:24px;margin:10px 0 0;color:#475467;font-size:.9rem}
.price-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px;align-items:start}
.price-directions{position:sticky;top:110px;display:flex;flex-direction:column;gap:4px}
.price-directions h2{font-size:1rem;font-weight:700;color:var(--dark);margin:0 0 12px}
.price-directions a{padding:10px 12px;text-decoration:none;line-height:1.45;border-radius:8px;color:#475467}
.price-directions a:hover{background:var(--lavender-light);color:var(--lavender-deep)}
.price-directions a:focus-visible,.price-table a:focus-visible,.price-search button:focus-visible{outline:3px solid var(--dark);outline-offset:3px}
.price-search input:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(var(--lavender-rgb),.22)}
.price-group{scroll-margin-top:110px;margin-bottom:42px}
.price-group:last-child{margin-bottom:0}
.price-group h2{font-size:clamp(1.4rem,2.5vw,1.85rem);font-weight:700;color:var(--dark);margin:0 0 18px;text-wrap:balance}
.price-table{width:100%;border-collapse:collapse;line-height:1.6}
.price-table th,.price-table td{padding:17px 0;border-bottom:1px solid var(--line);vertical-align:top}
.price-table thead th{font-size:.85rem;color:#475467;font-weight:400;padding-top:0;padding-bottom:10px}
.price-table tbody th{font-weight:400;padding-right:24px}
.price-table td,.price-table thead th:last-child{text-align:right;width:180px}
.price-table a{text-decoration-color:#b3bdc6}
.price-table a:hover{color:var(--dark);text-decoration-color:var(--dark)}
.price-amount{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--dark)}
.price-unset{font-size:.9rem;color:#475467}
.price-empty{padding:24px 0;max-width:65ch;color:#475467}
.price-empty h2{color:var(--dark);font-size:1.65rem}
.price-booking{padding:44px 0;background:var(--surface);border-top:1px solid var(--line)}
.price-booking .container{display:flex;gap:24px;justify-content:space-between;align-items:center}
.price-booking h2{font-size:1.65rem;color:var(--dark);font-weight:700;margin:0 0 12px}
.price-booking p{color:#475467;margin:0;max-width:65ch}
.price-booking .btn{flex-shrink:0}
.nav-link[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:6px}
[hidden]{display:none!important}
@media(max-width:991.98px){.price-layout{grid-template-columns:1fr;gap:32px}.price-directions{position:static;flex-direction:row;flex-wrap:wrap;gap:8px}.price-directions h2{width:100%}.price-directions a{border:1px solid var(--line);font-size:.9rem}.price-booking .container{align-items:flex-start;flex-direction:column}}
@media(max-width:575.98px){.price-hero{padding:32px 0}.price-catalog{padding-top:28px;padding-bottom:40px}.price-table tbody th{padding-right:14px;overflow-wrap:anywhere}.price-table td,.price-table thead th:last-child{width:120px}.price-table{font-size:.9rem}.price-unset{font-size:.8rem}.price-directions a{padding:9px}.price-group{margin-bottom:34px}.price-search-controls{gap:8px}}
