.gallery-section{background:var(--white);border-top:1px solid var(--gray-200);padding-top:32px}.gallery-anchor{scroll-margin-top:84px}.gallery-title-wrap{text-align:center;max-width:1280px;margin:0 auto;padding:0 32px 24px}.gallery-title{color:var(--charcoal);letter-spacing:1px;margin-bottom:8px;font-family:Bebas Neue,sans-serif;font-size:clamp(32px,4vw,44px)}.gallery-subtitle{color:var(--charcoal-soft);max-width:580px;margin:0 auto;font-size:16px;font-weight:300}.filter-bar{z-index:50;background:var(--white);border-bottom:1px solid var(--gray-200);border-top:1px solid var(--gray-200);margin-top:24px;padding:14px 32px;position:sticky;top:84px;box-shadow:0 2px 8px #0000000a}.filter-inner{flex-wrap:wrap;align-items:center;gap:10px;max-width:1280px;margin:0 auto;display:flex}.filter-toggle{background:var(--charcoal);color:var(--white);letter-spacing:1.5px;text-transform:uppercase;border:none;border-radius:100px;align-items:center;gap:8px;padding:9px 16px;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:700;display:inline-flex}.filter-toggle .check{background:var(--red);width:14px;height:14px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;font-size:9px;display:inline-flex}.filter-pill{background:var(--white);color:var(--charcoal);border:1px solid var(--gray-200);letter-spacing:1px;text-transform:uppercase;border-radius:100px;align-items:center;gap:6px;padding:8px 14px;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600;transition:border-color .15s;display:inline-flex}.filter-pill:hover{border-color:var(--charcoal)}.filter-pill .chevron{color:var(--gray-500);font-size:10px}.filter-pill.more{color:var(--charcoal-soft);border-style:dashed}select.filter-pill{appearance:none;cursor:pointer;width:auto;box-shadow:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%238E8E93' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:30px;line-height:1.2}select.filter-pill:focus{outline:2px solid var(--red);outline-offset:2px}select.filter-pill.active{background-color:var(--charcoal);color:var(--white);border-color:var(--charcoal);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%23FFFFFF' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>")}.filter-sort{letter-spacing:1.5px;text-transform:uppercase;color:var(--charcoal-soft);align-items:center;gap:10px;margin-left:auto;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:600;display:inline-flex}.filter-sort select{letter-spacing:1px;text-transform:uppercase;color:var(--charcoal);background:var(--white);border:1px solid var(--gray-200);appearance:none;width:auto;box-shadow:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%238E8E93' d='M5 8l5 5 5-5H5z'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;background-size:16px;border-radius:6px;outline:none;padding:7px 30px 7px 12px;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:700;line-height:1.2}.results-header{justify-content:space-between;align-items:baseline;max-width:1280px;margin:0 auto;padding:24px 32px 12px;display:flex}.results-count{letter-spacing:1.5px;text-transform:uppercase;color:var(--charcoal-soft);font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600}.results-count strong{color:var(--charcoal);font-weight:700}.clear-filters{letter-spacing:2px;text-transform:uppercase;color:var(--red);background:0 0;border:none;padding:0;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:700}.gallery{grid-template-columns:repeat(4,1fr);gap:24px;max-width:1280px;margin:0 auto;padding:8px 32px 56px;display:grid}.card{background:var(--white);border:1px solid var(--gray-200);cursor:pointer;border-radius:10px;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;position:relative;overflow:hidden}.card:hover{border-color:var(--red);transform:translateY(-4px);box-shadow:0 14px 38px #3a3a3c1f}.card-image{aspect-ratio:4/3;background:linear-gradient(135deg,#4d4d50 0%,#2c2c2e 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.card-image:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.card-image-name{letter-spacing:2px;color:#ffffff21;font-family:Bebas Neue,sans-serif;font-size:42px;position:relative}.card:nth-child(2) .card-image{background:linear-gradient(135deg,#5c2a2b 0%,#3a1819 100%)}.card:nth-child(3) .card-image{background:linear-gradient(135deg,#2a4a3a 0%,#1a3024 100%)}.card:nth-child(4) .card-image{background:linear-gradient(135deg,#3a3a60 0%,#1f1f40 100%)}.card:nth-child(5) .card-image{background:linear-gradient(135deg,#604530 0%,#3a2a1a 100%)}.card:nth-child(6) .card-image{background:linear-gradient(135deg,#2a4a60 0%,#1a2f3a 100%)}.card:nth-child(7) .card-image{background:linear-gradient(135deg,#4a4a52 0%,#2a2a30 100%)}.card:nth-child(8) .card-image{background:linear-gradient(135deg,#4d3050 0%,#2a1830 100%)}.card:nth-child(9) .card-image{background:linear-gradient(135deg,#3a4d40 0%,#1a2a20 100%)}.card:nth-child(10) .card-image{background:linear-gradient(135deg,#50403a 0%,#2c201c 100%)}.card:nth-child(11) .card-image{background:linear-gradient(135deg,#2a3050 0%,#18203a 100%)}.card:nth-child(12) .card-image{background:linear-gradient(135deg,#4a2a4a 0%,#2a182a 100%)}.badge{background:var(--white);color:var(--charcoal);letter-spacing:1.5px;text-transform:uppercase;z-index:2;border-radius:3px;align-items:center;gap:6px;padding:5px 9px;font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:12px;left:12px}.badge .star{color:var(--red);font-size:11px;line-height:1}.save-btn{width:36px;height:36px;color:var(--charcoal);z-index:2;background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .15s,background .15s;display:flex;position:absolute;top:10px;right:10px}.save-btn:hover{background:var(--white);transform:scale(1.08)}.save-btn svg{width:18px;height:18px}.save-btn.saved{color:var(--red)}.save-btn.saved svg{fill:var(--red);stroke:var(--red)}.card-body{flex-direction:column;flex:1;padding:18px 18px 20px;display:flex}.card-name{letter-spacing:.5px;color:var(--charcoal);margin-bottom:4px;font-family:Bebas Neue,sans-serif;font-size:26px;line-height:1}.card-style{letter-spacing:1.5px;text-transform:uppercase;color:var(--charcoal-soft);margin-bottom:14px;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:600}.card-specs{border-top:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200);justify-content:space-between;margin-bottom:14px;padding:12px 0;display:flex}.card-spec{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;display:flex}.card-spec-value{letter-spacing:.5px;color:var(--charcoal);font-family:Barlow Condensed,sans-serif;font-size:17px;font-weight:700;line-height:1}.card-spec-label{letter-spacing:1.3px;text-transform:uppercase;color:var(--gray-500);font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:600}.card-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.card-price{flex-direction:column;font-family:Barlow,sans-serif;line-height:1.2;display:flex}.card-price .from{letter-spacing:1.3px;text-transform:uppercase;color:var(--gray-500);font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:600}.card-price .amount{color:var(--red);letter-spacing:.3px;font-size:17px;font-weight:700}.card-request-price{border:1.5px solid var(--charcoal);color:var(--charcoal);letter-spacing:1.5px;text-transform:uppercase;background:0 0;border-radius:4px;padding:8px 14px;font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:700;transition:background .15s,color .15s}.card-request-price:hover{background:var(--charcoal);color:var(--white)}.card-view{letter-spacing:1.5px;text-transform:uppercase;color:var(--red);align-items:center;gap:4px;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.card-view .arrow{transition:transform .18s}.card:hover .card-view .arrow{transform:translate(3px)}.load-more-wrap{text-align:center;background:var(--white);padding:24px 24px 80px}.load-more{border:1.5px solid var(--charcoal);letter-spacing:2px;text-transform:uppercase;color:var(--charcoal);background:0 0;border-radius:4px;padding:16px 36px;font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:700;transition:background .18s,color .18s}.load-more:hover{background:var(--charcoal);color:var(--white)}.load-more-count{letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-500);margin-top:14px;font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:600;display:block}@media (max-width:1100px){.gallery{grid-template-columns:repeat(3,1fr)}}@media (max-width:820px){.gallery{grid-template-columns:repeat(2,1fr);padding:8px 16px 48px}.filter-bar{padding:12px 16px;top:70px}.results-header{padding:20px 16px 10px}.filter-sort{border-top:1px solid var(--gray-200);justify-content:flex-end;width:100%;margin-top:6px;margin-left:0;padding-top:4px}.ai-chips{gap:8px}.ai-chip{padding:9px 16px;font-size:13px}.row-header{padding:0 16px}.row-scroll{padding:4px 16px 14px}.browse-band{margin:32px 16px 0;padding:40px 24px}}@media (max-width:500px){.gallery{grid-template-columns:1fr}.ai-hero{padding:56px 20px}}.matcher-status{color:#ffffffc7;text-align:center;min-height:24px;margin-top:28px;font-family:Barlow,sans-serif;font-size:15px}.matcher-status.error{color:#ff9c9c}.matcher-dots:after{content:"...";text-align:left;width:1.4em;animation:1.4s steps(4,end) infinite matcher-dots;display:inline-block}@keyframes matcher-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.matcher-results{width:100%;max-width:1180px;margin:36px auto 0;display:none}.matcher-results.visible{display:block}.matcher-results-eyebrow{color:#ffffff9e;letter-spacing:2px;text-transform:uppercase;text-align:center;margin-bottom:8px;font-family:Barlow Condensed,sans-serif;font-size:13px}.matcher-results-title{color:var(--white);letter-spacing:.5px;text-align:center;margin-bottom:28px;font-family:Bebas Neue,sans-serif;font-size:clamp(28px,4vw,40px)}.matcher-results-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px;display:grid}.matcher-result-card{background:var(--white);text-align:left;color:var(--charcoal);border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 14px 38px #00000047}.matcher-result-photo{aspect-ratio:4/3;background:linear-gradient(135deg,#e9e7e2,#d6d3cc) 50%/cover;width:100%;position:relative}.matcher-result-featured{background:var(--red);color:var(--white);letter-spacing:1.2px;text-transform:uppercase;border-radius:4px;padding:4px 9px;font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:600;position:absolute;top:10px;left:10px}.matcher-result-body{padding:18px 20px 20px}.matcher-result-name{letter-spacing:.5px;margin-bottom:4px;font-family:Bebas Neue,sans-serif;font-size:26px;line-height:1.05}.matcher-result-meta{color:var(--charcoal-soft);letter-spacing:.5px;text-transform:uppercase;margin-bottom:12px;font-family:Barlow Condensed,sans-serif;font-size:14px}.matcher-result-reasons{color:var(--charcoal-soft);margin:10px 0 16px;padding-left:1.1em;font-size:13.5px;line-height:1.55}.matcher-result-reasons li{margin-bottom:4px}.matcher-result-reasons li::marker{color:var(--red)}.matcher-result-cta{color:var(--red);align-items:center;gap:6px;font-family:Barlow,sans-serif;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.matcher-result-cta .arrow{transition:transform .18s}.matcher-result-card:hover .matcher-result-cta .arrow{transform:translate(4px)}.matcher-start-over{text-align:center;margin-top:12px}.matcher-start-over button{color:#ffffffd9;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:24px;padding:9px 18px;font-family:Barlow,sans-serif;font-size:14px;transition:background .15s,color .15s,border-color .15s}.matcher-start-over button:hover{color:var(--white);background:#ffffff14;border-color:#fff9}.matcher-summary-quote{color:#ffffffb8;text-align:center;max-width:720px;margin:6px auto 22px;font-size:15px;font-style:italic;line-height:1.55}@media (max-width:880px){.matcher-results-grid{grid-template-columns:1fr;max-width:480px;margin-left:auto;margin-right:auto}}.price-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#141416b8;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.price-modal-overlay.visible{display:flex}.price-modal{background:var(--white);border-radius:14px;width:100%;max-width:520px;padding:32px 32px 28px;animation:.18s ease-out priceModalIn;position:relative;box-shadow:0 30px 80px #0006}@keyframes priceModalIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.price-modal-close{color:var(--gray-500);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.price-modal-close:hover{color:var(--charcoal)}.price-modal h3{letter-spacing:.5px;margin-bottom:6px;font-family:Bebas Neue,sans-serif;font-size:30px;line-height:1.1}.price-modal .plan-line{color:var(--charcoal-soft);margin-bottom:18px;font-size:14px}.price-modal-form label{letter-spacing:1.5px;text-transform:uppercase;color:var(--charcoal-soft);margin-top:14px;margin-bottom:6px;font-family:Barlow Condensed,sans-serif;font-size:12px;display:block}.price-modal-form label:first-child{margin-top:0}.price-modal-form input,.price-modal-form textarea{border:1px solid var(--gray-300);width:100%;color:var(--charcoal);background:var(--white);border-radius:8px;padding:11px 14px;font-family:Barlow,sans-serif;font-size:15px;transition:border-color .15s}.price-modal-form input:focus,.price-modal-form textarea:focus{border-color:var(--red);outline:none}.price-modal-form textarea{resize:vertical;min-height:70px}.price-modal-submit{background:var(--red);color:var(--white);letter-spacing:1.2px;text-transform:uppercase;cursor:pointer;border:0;border-radius:8px;width:100%;margin-top:20px;padding:13px 18px;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:600;transition:background .15s}.price-modal-submit:hover{background:var(--red-dark)}.price-modal-submit:disabled{background:var(--gray-300);cursor:wait}.price-modal-status{color:var(--charcoal-soft);text-align:center;min-height:18px;margin-top:12px;font-size:13.5px}.price-modal-status.error{color:var(--red)}.price-modal-success{text-align:center;padding:12px 0}.price-modal-success .check{background:var(--red);width:56px;height:56px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;font-size:28px;display:flex}.price-modal-disclaimer{color:var(--gray-500);text-align:center;margin-top:14px;font-size:12px;line-height:1.5}.fp-hero{background:linear-gradient(135deg,#3a3a3cd1 0%,#3a3a3ca6 100%),radial-gradient(circle at 70% 30%,#df1f262e 0%,#0000 50%),url(/brand/hero_floorplans_web.jpg) 50%/cover no-repeat;background-color:var(--charcoal);color:var(--white);text-align:center;padding:76px 24px 64px}.fp-hero-inner{max-width:900px;margin:0 auto}.fp-hero-eyebrow{text-transform:uppercase;letter-spacing:3px;color:#ffffff8c;margin-bottom:16px;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600}.fp-hero-title{color:var(--white);letter-spacing:1px;margin:0 0 14px;font-family:Bebas Neue,sans-serif;font-size:clamp(40px,6vw,72px);line-height:1}.fp-hero-title .accent{color:var(--red)}.fp-hero-sub{color:#ffffffd9;max-width:620px;margin:0 auto 16px;font-size:clamp(15px,1.5vw,18px);font-weight:300;line-height:1.6}.fp-hero-trust{text-transform:uppercase;letter-spacing:1.5px;color:#ffffffb3;font-family:Barlow Condensed,sans-serif;font-size:12.5px;font-weight:500}@media (max-width:640px){.fp-hero{padding:56px 20px 48px}.fp-hero-trust{font-size:11px;line-height:1.8}}.fp-accel{max-width:1280px;margin:0 auto;padding:16px 32px 0}.fp-accel-inner{background:var(--charcoal);border-radius:16px;padding:22px 24px}.fp-accel-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--white);margin-bottom:12px;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:600}.fp-accel-label span{text-transform:none;letter-spacing:0;color:#ffffffb3;margin-top:3px;font-family:Barlow,sans-serif;font-size:14px;font-weight:300;display:block}.fp-accel-row{gap:10px;display:flex}.fp-accel-input{min-width:0;color:var(--charcoal);background:var(--white);border:none;border-radius:100px;outline:none;flex:1;padding:13px 20px;font-family:Barlow,sans-serif;font-size:15px}.fp-accel-send{background:var(--red);color:var(--white);text-transform:uppercase;letter-spacing:1px;cursor:pointer;white-space:nowrap;border:none;border-radius:100px;padding:13px 22px;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:600;transition:background .15s}.fp-accel-send:hover{background:var(--red-dark)}.fp-accel-send .arrow{margin-left:4px}.fp-accel-send:disabled{opacity:.6;cursor:wait}.fp-accel-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.fp-accel-chip{color:#ffffffe6;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:100px;padding:6px 14px;font-family:Barlow,sans-serif;font-size:13px;transition:background .15s}.fp-accel-chip:hover{background:#fff3}.fp-accel-status{color:#ffffffd9;margin-top:10px;font-size:13.5px}.fp-accel-status:empty{margin-top:0}.fp-accel-status.error{color:#ffb3b3}.fp-accel-status.loading:after{content:"…"}@media (max-width:640px){.fp-accel{padding:22px 16px 0}.fp-accel-row{flex-direction:column}.fp-accel-send{width:100%}}.fp-match-banner{background:#df1f2612;border:1px solid #df1f2640;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;max-width:1280px;margin:18px auto 0;padding:12px 18px;display:flex}.fp-match-banner[hidden]{display:none}.fp-match-banner-text{color:var(--charcoal);font-family:Barlow,sans-serif;font-size:14.5px}.fp-match-banner-text strong{color:var(--red)}.fp-match-clear{text-transform:uppercase;letter-spacing:.5px;color:var(--charcoal);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #3a3a3c40;border-radius:100px;padding:6px 14px;font-family:Barlow Condensed,sans-serif;font-size:13px}.fp-match-clear:hover{border-color:var(--red);color:var(--red)}.hh-toast{background:var(--charcoal);color:var(--white);opacity:0;pointer-events:none;z-index:4000;border-radius:100px;padding:12px 20px;font-family:Barlow,sans-serif;font-size:14px;transition:opacity .25s,transform .25s;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(12px);box-shadow:0 10px 30px #00000040}.hh-toast.hh-toast-visible{opacity:1;transform:translate(-50%)translateY(0)}
