.catalog-hero{margin-bottom:20px}.catalog-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:18px;align-items:start}.catalog-sidebar,.catalog-card,.catalog-panel{border-radius:22px;padding:18px}.catalog-sidebar{position:sticky;top:108px}.catalog-filter{display:grid;gap:8px;margin-top:14px}.catalog-filter label{color:var(--muted);font-size:.83rem;font-weight:850}.catalog-lead--compact{font-size:.98rem}.catalog-actions--end,.company-badges--end{align-self:end}.catalog-filter input[type=date],.booking-field input,.booking-field textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:12px;padding:0 12px;color:var(--ink);background-color:#ffffffe0;color-scheme:light}:root[data-theme=dark] .catalog-filter input[type=date],:root[data-theme=dark] .booking-field input,:root[data-theme=dark] .booking-field textarea{background-color:#ffffff1a;border-color:#cadcff38}.catalog-checkbox{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.92rem;line-height:1.45}.catalog-checkbox input{margin-top:3px}.catalog-actions,.catalog-meta,.catalog-card-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.catalog-filter-actions{display:grid;gap:10px;margin-top:18px}.catalog-filter-actions .button{width:100%}.catalog-results{display:grid;gap:16px}.catalog-tabs{display:flex;gap:8px;padding:6px;border:1px solid var(--line);border-radius:999px;width:fit-content;max-width:100%;background:#ffffff85}:root[data-theme=dark] .catalog-tabs{background:#ffffff0f}.catalog-tab{min-height:38px;border:0;border-radius:999px;padding:0 16px;color:var(--muted);background:transparent;font:inherit;font-weight:850;cursor:pointer}.catalog-tab.is-active{color:#fff;background:var(--blue)}.catalog-panel[hidden]{display:none}.catalog-list-panel{padding:0}.catalog-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.catalog-card h2{font-size:1.35rem}.catalog-meta{margin-top:10px;color:var(--muted);font-size:.9rem}.catalog-pill{display:inline-flex;align-items:center;min-height:28px;border:1px solid var(--line);border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:850}.catalog-card-footer{margin-top:16px}.catalog-map{min-height:min(520px,68vh);overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#ffffff7a}.catalog-empty-map{display:grid;min-height:260px;place-items:center;color:var(--muted);text-align:center}@media(max-width:900px){.catalog-layout,.catalog-card{grid-template-columns:1fr}.catalog-sidebar{position:static}.catalog-tabs{width:100%}.catalog-tab{flex:1}}.company-page{display:grid;gap:20px}.company-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px}.company-badges,.company-grid,.company-list,.booking-actions,.slot-grid{display:grid;gap:12px}.company-badges{grid-template-columns:repeat(auto-fit,minmax(120px,max-content));margin-top:16px}.company-badge{display:inline-flex;align-items:center;min-height:30px;border:1px solid var(--line);border-radius:999px;padding:0 12px;color:var(--muted);font-size:.82rem;font-weight:850}.company-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.company-item,.booking-panel,.booking-alert{border-radius:22px;padding:18px}.company-item h3,.booking-panel h2{margin:0;font-size:1.05rem}.company-item p,.booking-panel p,.booking-alert p{margin-top:8px;color:var(--muted);line-height:1.65}.company-list{margin-top:16px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:16px;align-items:start}.booking-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-form-grid--spaced{margin-top:18px}.booking-alert--spaced{margin-top:16px}.booking-field--full,.booking-actions--full{grid-column:1 / -1}.booking-field{display:grid;gap:7px}.booking-field label{color:var(--muted);font-size:.83rem;font-weight:850}.booking-field input,.booking-field textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:12px;padding:0 12px;color:var(--ink);background-color:#ffffffe0;color-scheme:light}.booking-field textarea{min-height:92px;padding:10px 12px;resize:vertical}.public-phone-control{position:relative;display:flex;align-items:stretch;min-height:42px;overflow:visible;border:1px solid var(--line);border-radius:12px;background-color:#ffffffe0}.public-phone-control input{min-height:0;border:0;background:transparent;box-shadow:none;color:var(--ink);outline:none}.public-phone-control:focus-within{border-color:#246bfe73;box-shadow:0 0 0 3px #246bfe1f}.public-phone-control .phone-country-select{position:relative;flex:0 0 auto;min-width:6.8rem;border-right:1px solid var(--line)}.public-phone-control .phone-country-native{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;padding:0!important}.public-phone-control .phone-country-button{display:flex;width:100%;min-height:100%;align-items:center;justify-content:space-between;gap:7px;border:0;background:transparent;color:var(--ink);padding:0 10px;font:inherit;font-size:.88rem;font-weight:850}.public-phone-control .phone-country-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;display:none;min-width:100%;border-radius:16px;background:#fffffffc;padding:7px;box-shadow:0 20px 54px #1f497d29}.public-phone-control .phone-country-select.is-open .phone-country-menu{display:grid;gap:4px}.public-phone-control .phone-country-option{width:100%;border:0;border-radius:12px;background:transparent;color:var(--muted);padding:9px 10px;font:inherit;font-size:.88rem;font-weight:850;text-align:left}.public-phone-control .phone-country-option:hover,.public-phone-control .phone-country-option.is-active{color:var(--ink);background:#246bfe1f}.phone-country-label,.phone-country-option{display:inline-flex;align-items:center;gap:7px}.phone-flag{width:21px;height:14px;flex:0 0 auto;border-radius:3px;box-shadow:0 0 0 1px #1c2d4b24}.phone-country-chevron{display:grid;width:16px;height:16px;flex:0 0 auto;place-items:center;color:var(--muted);transition:transform .16s ease}.phone-country-chevron svg{width:16px;height:16px}.phone-country-select.is-open .phone-country-chevron{transform:rotate(180deg)}.phone-status{color:#e11d48;font-size:.83rem;font-weight:750;line-height:1.45}:root[data-theme=dark] .booking-field input,:root[data-theme=dark] .booking-field textarea{background-color:#ffffff1a;border-color:#cadcff38}:root[data-theme=dark] .public-phone-control{background-color:#ffffff1a;border-color:#cadcff38}:root[data-theme=dark] .public-phone-control input{border:0;background:transparent}:root[data-theme=dark] .public-phone-control .phone-country-menu{background:#142235}[data-public-booking-widget].is-loading{opacity:.62;pointer-events:none;transition:opacity .14s ease}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(86px,1fr));margin-top:12px}.slot-option{position:relative}.slot-option input{position:absolute;opacity:0;pointer-events:none}.slot-option span{display:grid;min-height:42px;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--ink);font-weight:850;cursor:pointer}.slot-option input:checked+span{border-color:var(--blue);color:#fff;background:var(--blue)}.booking-alert{border:1px solid rgba(244,166,42,.4);background:#f4a62a1f}.public-html{overflow-wrap:anywhere}.public-html img{max-width:100%;height:auto;border-radius:16px}@media(max-width:940px){.company-hero,.company-grid,.booking-layout,.booking-form-grid{grid-template-columns:1fr}}
