.catalog-page .lodging-hero{grid-template-columns:minmax(0,1fr) auto;gap:32px;border-bottom:1px solid #dce3df;margin-bottom:28px;}
.catalog-page .lodging-hero h1{font-size:2.5rem;}
.catalog-page .lodging-kpis article{padding:12px 0 12px 24px;border:0;border-left:1px solid #b7cbbf;border-radius:0;background:transparent;box-shadow:none;}
.catalog-page .lodging-kpis strong{font-size:2rem;}
.catalog-page .lodging-layout{grid-template-columns:290px minmax(0,1fr);gap:32px;}
.catalog-page .catalog-filter-panel{background:#fff;border:1px solid #dce3df;border-radius:8px;overflow:hidden;}
.catalog-page .catalog-filter-panel>summary{padding:18px 20px;color:#245d48;background:#edf4f0;}
.catalog-page .catalog-filter-panel .lodging-filter-card{border:0;border-radius:0;background:transparent;box-shadow:none;padding:20px;}
.catalog-page .catalog-filter-panel h2{display:none;}
.catalog-page .field input,.catalog-page .field select{background:#fff;border:1px solid #bdccc3;border-radius:6px;min-height:44px;font-size:.88rem;}
.catalog-page .amenities-disclosure{border-top:1px solid #dce3df;border-bottom:1px solid #dce3df;margin:20px 0;}
.catalog-page .amenities-disclosure summary{padding:14px 0;cursor:pointer;font-weight:700;}
.catalog-page .catalog-amenities{margin:0 0 12px;}
.catalog-page .catalog-amenities legend{font-size:.82rem;color:#58665d;}
.catalog-page .catalog-amenities label{min-height:44px;align-items:center;}
.catalog-page .lodging-sidebar>.lodging-filter-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:18px 0;}
.catalog-page .lodging-results-head{border-bottom:1px solid #dce3df;padding-bottom:18px;align-items:center;flex-wrap:wrap;}
.catalog-page .lodging-results-head h2{font-size:1.35rem;}
.catalog-page .empty-results{border:1px solid #b8cebf;background:#f3f8f5;border-radius:8px;padding:32px;box-shadow:none;}
.catalog-page .empty-results::before{content:'';display:block;width:40px;height:40px;margin-bottom:20px;background:#32745e;mask:url('/assets/ui-icons/building-2.svg') center/32px no-repeat;-webkit-mask:url('/assets/ui-icons/building-2.svg') center/32px no-repeat;}
.catalog-page .empty-results p{max-width:none;line-height:1.75;}
.catalog-page .panel-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:24px;}
.catalog-page .inline-link{color:#245d48;text-decoration:underline;font-weight:600;font-size:.9rem;}
.catalog-page .btn{white-space:normal;text-align:center;}
.catalog-page .catalog-notice,.catalog-page .catalog-error{padding:16px 20px;border:1px solid #b8cebf;border-radius:8px;background:#f3f8f5;}
.catalog-page .catalog-error{border-color:#d9a99e;background:#fff3ef;}
.catalog-page .lodging-card{background:#fff;border:1px solid #dce3df;border-radius:8px;box-shadow:0 3px 10px rgba(18,36,25,.035);padding:18px;gap:22px;}
.catalog-page .lodging-card.is-promoted{border-color:#bd826e;box-shadow:none;}
.catalog-page .lodging-photo{padding:0;border-radius:6px;background:#edf4f0;}
.catalog-page .lodging-photo span{padding:18px;}
.catalog-page .lodging-meta span{background:#edf4f0;border:0;border-radius:4px;}
.catalog-page .lodging-actions{border-top:1px solid #e4ebe6;padding-top:16px;margin-top:10px;}
.catalog-page .catalog-shortcuts .filter-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:20px;}
.catalog-page .catalog-shortcuts .filter-links a{background:#fff;border:1px solid #dce3df;border-top:3px solid #397966;border-radius:8px;padding:20px 16px;justify-content:flex-start;gap:12px;overflow-wrap:anywhere;}
.catalog-page .catalog-shortcuts .filter-links a::before{content:'';width:22px;height:22px;flex-shrink:0;background:#32745e;mask:url('/assets/ui-icons/map-pin.svg') center/22px no-repeat;-webkit-mask:url('/assets/ui-icons/map-pin.svg') center/22px no-repeat;}
.catalog-page .catalog-faq{width:100%;max-width:none;}
.catalog-page .catalog-faq summary{padding:8px 0;line-height:1.6;}
@media(max-width:980px){
 .catalog-page .lodging-layout,.catalog-page .lodging-hero{grid-template-columns:minmax(0,1fr);}
 .catalog-page .lodging-hero h1{font-size:2rem;}
 .catalog-page .catalog-shortcuts .filter-links{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
 .catalog-page .lodging-hero h1{font-size:1.85rem;}
 .catalog-page .empty-results{padding:22px;}
 .catalog-page .catalog-shortcuts .filter-links{grid-template-columns:minmax(0,1fr);}
 .catalog-page .lodging-card{padding:14px;}
}
