/* Compact menu presentation; catalogue content and selection behavior are unchanged. */
.pricing-menu { --price-amount-column:190px; --menu-warm:#ede7dd; padding-top:27px; }
.pricing-menu .tariff-heading { margin-bottom:15px; }
.pricing-menu .tariff-kicker { display:none; }
.pricing-menu .tariff-heading h1 { font-size:clamp(30px,3vw,38px); line-height:1.3; margin-bottom:7px; }
.pricing-menu .tariff-lead { font-size:13px; }
.pricing-menu .tariff-tabs { margin-bottom:18px; }
.pricing-menu .tariff-tabs button { min-height:47px; padding-block:10px; }
.pricing-menu .price-toolbar { margin-bottom:23px; }
.pricing-menu .price-search { min-height:47px; }
.pricing-menu .price-browser-layout { grid-template-columns:168px minmax(0,1fr); gap:34px; }
.pricing-menu .price-browser-nav { top:108px; }
.pricing-menu .price-browser-nav .tariff-category-filters { gap:3px; }
.pricing-menu .price-browser-nav .tariff-category-filters button { min-height:45px; padding:11px 12px; }
.pricing-menu .price-menu-category+.price-menu-category { margin-top:45px; }
.pricing-menu .price-menu-category-heading { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:0 0 14px; margin:0 0 18px; border-bottom:1px solid #b9a994; }
.pricing-menu .price-menu-category-heading .tariff-category-label { margin:0 0 4px; font-size:29px; }
.pricing-menu .price-menu-category-heading>div>span { font:12px/1.65 var(--tariff-text,var(--sans)); color:var(--muted); }
.pricing-menu .price-menu-family-select { display:flex; align-items:center; gap:9px; max-width:52%; min-width:0; margin:0; }
.pricing-menu .price-menu-family-select>span { flex:none; color:var(--muted); font:12px/1.5 var(--tariff-text,var(--sans)); }
.pricing-menu .price-menu-family-select select { width:220px; max-width:100%; min-width:0; min-height:43px; margin:0; padding:10px 28px 10px 12px; border:1px solid #cdbfae; border-radius:7px; background:#fffefd; color:var(--ink); font:13px/1.5 var(--tariff-text,var(--sans)); text-overflow:ellipsis; }
.pricing-menu .price-menu-family-select select:focus-visible { outline:2px solid var(--price-accent); outline-offset:3px; }
.pricing-menu .price-menu-family-select select:disabled { opacity:.5; }
.pricing-menu .price-menu-grid { display:block; column-count:2; column-gap:26px; }
.pricing-menu .price-menu-family { display:inline-block; width:100%; min-width:0; margin:0 0 26px; padding:0; border:0; background:transparent; vertical-align:top; break-inside:avoid; }
.pricing-menu .price-menu-family>header { display:flex; align-items:center; gap:10px; min-width:0; padding:11px 13px; border:0; border-radius:8px; background:var(--menu-warm); }
.pricing-menu .price-menu-family-number { flex:none; color:#998571; font:14px/1.4 var(--tariff-numbers,var(--serif)); }
.pricing-menu .price-menu-family h2 { flex:1; min-width:0; margin:0; font:400 21px/1.5 var(--tariff-display,var(--serif)); letter-spacing:-.03em; overflow-wrap:anywhere; word-break:keep-all; }
.pricing-menu .price-menu-family-count { flex:none; color:#796b5c; font:11px/1.5 var(--tariff-text,var(--sans)); white-space:nowrap; }
.pricing-menu .price-menu-family .tariff-table tr { grid-template-columns:minmax(0,1fr) var(--price-amount-column); align-items:center; gap:3px 12px; padding:11px 5px; border-color:#e0dacf; }
.pricing-menu .price-menu-family .price-name { font-size:14px; line-height:1.6; font-weight:500; }
.pricing-menu .price-menu-family .tariff-price-kind { margin:0 0 2px; font-size:10px; }
.pricing-menu .price-menu-family .tariff-price { display:grid; grid-template-columns:minmax(0,1fr) max-content; align-items:center; gap:1px 9px; padding-top:0!important; }
.pricing-menu .price-menu-family .tariff-price>strong { grid-column:1; grid-row:1; font:400 23px/1.35 var(--tariff-numbers,var(--serif)); white-space:normal; overflow-wrap:anywhere; letter-spacing:-.035em; }
.pricing-menu .price-menu-family .tariff-price>strong small { font-size:11px; margin-left:3px; }
.pricing-menu .price-menu-family .tariff-tax { display:none; }
.pricing-menu .price-menu-family .price-inclusive { margin-top:3px; font-size:11px; line-height:1.65; }
.pricing-menu .price-menu-family .price-reference { font-size:10px; margin-top:3px; }
.pricing-menu .price-menu-family .tariff-price>.price-inclusive,
.pricing-menu .price-menu-family .tariff-price>.price-reference { grid-column:1; margin-block:0; line-height:1.45; }
.pricing-menu .price-menu-family .tariff-price>.booking-basket-add { grid-column:2; grid-row:1 / span 4; align-self:center; min-width:60px; min-height:44px; margin:0; padding:7px 9px; border-radius:7px; font-size:12px; line-height:1.25; }
.pricing-menu .price-menu-family .tariff-price>.booking-basket-add[hidden] { display:none; }
.pricing-menu .price-menu-family .tariff-price>.booking-basket-add:focus-visible { outline:2px solid #79604e; outline-offset:3px; }
.pricing-menu .price-menu-family>header.price-family-has-thumbnail { min-height:68px; padding:8px 11px 8px 8px; gap:11px; }
.pricing-menu .price-family-has-thumbnail .price-family-thumbnail { flex-basis:48px; width:48px; height:48px; border-radius:7px; }
.pricing-menu .price-family-has-thumbnail h2 { font-size:21px; }
.pricing-menu .price-menu-family .tariff-detail { font-size:11px; line-height:1.7; }
.pricing-menu .price-menu-family .tariff-composition { font-size:12px; margin-top:5px; }
.pricing-menu .price-menu-family .tariff-offer-context { margin-top:4px; }
.pricing-menu .price-menu-family .tariff-campaign { display:inline; color:#755b42; font-size:11px; }
.pricing-menu .price-menu-family .tariff-audience { display:inline; font-size:11px; }
.pricing-menu .price-menu-family .tariff-audience::before { content:' · '; }
.pricing-menu .price-menu-family .price-item-period { font-size:10px; margin-top:2px; }
.pricing-menu .price-menu-family [data-price-kind=event] { margin:0; background:#eee6da70; border-left:2px solid #b69c7d; padding-inline:10px 7px; }
.pricing-menu .price-menu-family [data-price-kind=event] .tariff-price-kind { padding:0; border:0; background:transparent; color:#775a3c; }
.pricing-menu .price-menu-family [data-price-kind=event] .tariff-price>strong { color:#785b3f; }
.price-menu-review-label { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:4px 22px; margin:0; padding:9px 24px; background:#eae4da; color:#75563d; font:12px/1.7 system-ui,sans-serif; text-align:center; }
.price-menu-review-label a { color:#4c4134; text-decoration:none; border-bottom:1px solid #b6a58e; }
@media(min-width:901px) and (max-width:1120px) {
 .pricing-menu .price-browser-layout { grid-template-columns:148px minmax(0,1fr); gap:26px; }
 .pricing-menu .price-menu-grid { column-count:1; }
 .pricing-menu .price-menu-family .tariff-table tr { --price-amount-column:200px; }
}
@media(max-width:900px) {
 .pricing-menu .price-browser-layout { grid-template-columns:1fr; gap:20px; }
 .pricing-menu .price-menu-grid { column-count:1; }
 .pricing-menu .price-menu-category-heading { align-items:center; padding-bottom:15px; margin-bottom:20px; }
 .pricing-menu .price-menu-category-heading .tariff-category-label { display:none; }
 .pricing-menu .price-menu-category-heading>div>span { font-size:11px; }
 .pricing-menu .price-menu-family-select { max-width:53%; }
 .pricing-menu .price-toolbar { margin-bottom:18px; }
}
@media(max-width:650px) {
 .pricing-menu .price-menu-grid { column-count:1; }
 .pricing-menu .price-menu-family { margin-bottom:22px; }
 .pricing-menu .tariff-heading { margin-bottom:12px; }
 .pricing-menu .tariff-heading h1 { font-size:29px; }
 .pricing-menu .tariff-kicker { display:none; }
 .pricing-menu .tariff-lead { display:none; }
 .pricing-menu .tariff-intro { font-size:11px; }
 .pricing-menu .price-toolbar { display:grid; grid-template-columns:1fr; gap:9px; }
 .pricing-menu .price-count { text-align:right; }
 .pricing-menu .price-menu-category-heading { display:block; margin-bottom:16px; }
 .pricing-menu .price-menu-category-heading>div { display:none; }
 .pricing-menu .price-menu-family-select { width:100%; max-width:none; }
 .pricing-menu .price-menu-family-select select { width:100%; flex:1; font-size:16px; }
 .pricing-menu .price-menu-family-select>span { font-size:12px; }
 .pricing-menu .price-menu-family>header { padding:12px 13px; gap:8px; }
 .pricing-menu .price-menu-family h2 { font-size:22px; }
 .pricing-menu .price-menu-family .tariff-table tr { --price-amount-column:178px; padding-block:10px; gap:3px 10px; }
 .pricing-menu .price-menu-family .tariff-price>strong { font-size:21px; }
 .pricing-menu .price-menu-family .price-name { font-size:14px; }
 .pricing-menu .price-menu-family .price-inclusive { font-size:11px; }
 .price-menu-review-label { padding:8px 14px; gap:3px 12px; font-size:11px; }
}
@media(max-width:360px) {
 .pricing-menu .price-menu-family .tariff-table tr { --price-amount-column:163px; column-gap:8px; padding-inline:2px; }
 .pricing-menu .price-menu-family .tariff-price>strong { font-size:19px; }
 .pricing-menu .price-menu-family .price-inclusive { font-size:10px; }
 .pricing-menu .price-menu-family .tariff-price { column-gap:7px; }
 .pricing-menu .price-menu-family .tariff-price>.booking-basket-add { min-width:54px; padding-inline:7px; font-size:11px; }
 .pricing-menu .price-menu-family>header { padding-inline:11px; }
 .pricing-menu .price-menu-family h2 { font-size:20px; }
 .pricing-menu .price-menu-family-count { font-size:10px; }
}
