.catalog-filters{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}.catalog-filters button{font:inherit;font-size:15px;padding:12px 22px;border:1px solid #d7d0bd;background:white;color:var(--navy);cursor:pointer;border-radius:5px}.catalog-filters button[aria-pressed=true]{background:var(--navy);color:white}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.catalog-card{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.catalog-card[hidden]{display:none}.catalog-image{display:block;position:relative;background:#fff;border-bottom:1px solid var(--line)}.catalog-image img{width:100%;height:285px;object-fit:contain;padding:12px}.catalog-image span{position:absolute;bottom:10px;left:12px;background:var(--navy);color:white;padding:5px 10px;font-size:12px}.catalog-card-body{padding:24px}.catalog-card h3{font-size:25px;margin:0 0 12px}.contractor-catalog .catalog-price{font-size:28px;color:var(--gold);font-weight:800;margin:10px 0}.catalog-card p{margin:8px 0;font-size:16px}.contractor-catalog dl{margin:20px 0}.contractor-catalog dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 0;font-size:15px}.contractor-catalog dt{color:var(--muted)}.contractor-catalog dd{margin:0;text-align:right;font-weight:600}.catalog-open{color:var(--navy);font-weight:800;font-size:15px}.catalog-detail{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:start}.catalog-detail figure{margin:0 0 24px;border:1px solid var(--line);background:#fff;padding:18px}.catalog-plan img{width:100%;height:auto;object-fit:contain}.catalog-render{width:100%;max-height:450px;object-fit:contain}.catalog-detail figcaption{font-size:15px;color:var(--muted);padding:10px 0}.catalog-summary{padding:28px;border:1px solid var(--line);background:var(--cream)}.catalog-specs{grid-column:1/-1;margin-bottom:24px}.catalog-specs h2{font-size:30px}.catalog-specs ul{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;padding-left:22px}.catalog-specs li{font-size:16px;line-height:1.65;border-bottom:1px solid var(--line);padding:13px 0}.catalog-filters button:focus-visible,.catalog-open:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-detail{grid-template-columns:1fr}}@media(max-width:620px){.catalog-grid,.catalog-specs ul{grid-template-columns:1fr}.catalog-image img{height:290px}.catalog-filters button{flex:1 1 40%;padding:10px}.catalog-card-body{padding:20px}}
.contractor-catalog .catalog-card .catalog-price{font-size:25px!important;line-height:1.3!important}.contractor-catalog .catalog-card h3{font-size:25px!important;line-height:1.3!important}.catalog-card-body{display:flex;flex-direction:column}.catalog-card{display:flex;flex-direction:column}.catalog-card-body{flex:1}.catalog-open{margin-top:auto}
#app [data-contractor-catalog] .catalog-card p.catalog-price{font-size:25px!important;line-height:1.3!important}
.contractor-catalog .catalog-cover{display:block;overflow:hidden}.contractor-catalog .catalog-cover img{display:block;width:100%;height:210px;object-fit:cover;padding:0}.contractor-catalog .catalog-cover.is-plan img{object-fit:contain;background:#fff;padding:10px}.contractor-catalog .house-card{border-radius:14px;display:flex;flex-direction:column}.contractor-catalog .house-card[hidden]{display:none!important}.contractor-catalog .house-card-body{display:flex;flex:1;flex-direction:column}.contractor-catalog .house-link{margin-top:auto}.contractor-catalog .house-price{font-size:25px!important}.contractor-catalog .house-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important}.contractor-catalog .house-tabs button span,.contractor-catalog .house-tabs button small{display:block}.contractor-catalog .house-facts strong{font-size:18px}.contractor-catalog .house-series-heading{display:block;color:var(--gold);font-size:26px;margin:20px 0 10px}.catalog-back{margin-top:36px}@media(max-width:620px){.contractor-catalog .house-tabs button{padding:12px 6px!important;font-size:12px!important}.contractor-catalog .house-tabs button small{font-size:10px!important}.contractor-catalog .house-facts{grid-template-columns:1fr}}
.house-information{background:var(--cream,#f7f4ec)}
.house-information .lead{max-width:900px}
.house-information-table{width:100%;border-collapse:collapse;background:white;margin:28px 0}
.house-information-table caption{text-align:left;font-size:22px;font-weight:800;padding:14px 0}
.house-information-table th,.house-information-table td{padding:16px 20px;border-bottom:1px solid #dedbd4;text-align:left;font-size:16px;line-height:1.6}
.house-information-table th{width:34%;color:var(--navy,#0a1828)}
.house-info-panels{margin:28px 0}
.house-info-panels details{background:white;border:1px solid #dedbd4;margin:12px 0;padding:20px 24px}
.house-info-panels summary{cursor:pointer;font-size:19px;font-weight:800;color:var(--navy,#0a1828)}
.house-info-panels p{font-size:16px;line-height:1.7;margin:18px 0 0}
.house-info-panels img{display:block;max-width:100%;max-height:850px;margin:24px auto;object-fit:contain}
@media(max-width:600px){.house-information-table th,.house-information-table td{padding:12px 10px;font-size:14px}.house-info-panels details{padding:16px}}
.house-image-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:60px 64px;border:0;background:rgba(3,12,24,.97);color:white;z-index:2147483647}
.house-image-viewer[open]{display:flex;align-items:center;justify-content:center}
.house-image-viewer::backdrop{background:rgba(0,0,0,.9)}
.house-image-viewer figure{margin:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.house-image-viewer img{min-height:0;max-width:100%;max-height:calc(100% - 70px);object-fit:contain}
.house-image-viewer figcaption,.house-image-viewer a{color:white;font-size:14px;text-align:center}
.house-image-viewer button{position:absolute;background:#10283e;color:white;border:1px solid #bfa063;border-radius:50%;width:44px;height:44px;font-size:30px;cursor:pointer}
.house-image-viewer [data-close]{right:16px;top:12px}
.house-image-viewer [data-prev]{left:12px;top:50%}
.house-image-viewer [data-next]{right:12px;top:50%}
[data-contractor-catalog] .house-visual img,[data-contractor-catalog] .house-info-panels img{cursor:zoom-in}
@media(max-width:600px){.house-image-viewer{padding:64px 12px 80px}.house-image-viewer [data-prev],.house-image-viewer [data-next]{top:auto;bottom:16px}}
