.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:.375rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out;pointer-events:auto;opacity:1;flex-shrink:0;outline:none;border:1px solid transparent;background-color:transparent;color:inherit}.button:disabled{pointer-events:none;opacity:.5}.button svg{pointer-events:none;flex-shrink:0}.button svg:not([class*=size-]){width:1rem;height:1rem}.button:focus-visible{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.5)}.button[aria-invalid=true]{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}.dark .button[aria-invalid=true]{box-shadow:0 0 0 3px hsl(var(--destructive)/.4)}.button--default{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.button--default:hover{background-color:hsl(var(--primary)/.9)}.button--destructive{background-color:hsl(var(--destructive));color:#ffffff}.button--destructive:hover{background-color:hsl(var(--destructive)/.9)}.button--destructive:focus-visible{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}.dark .button--destructive{background-color:hsl(var(--destructive)/.6)}.dark .button--destructive:focus-visible{box-shadow:0 0 0 3px hsl(var(--destructive)/.4)}.button--outline{background-color:hsl(var(--background));color:hsl(var(--foreground));border-color:hsl(var(--border))}.button--outline:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.dark .button--outline{background-color:hsl(var(--input)/.3);border-color:hsl(var(--input))}.dark .button--outline:hover{background-color:hsl(var(--input)/.5)}.button--secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.button--secondary:hover{background-color:hsl(var(--secondary)/.8)}.button--ghost{background-color:transparent;color:inherit}.button--ghost:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.dark .button--ghost:hover{background-color:hsl(var(--accent)/.5)}.button--link{background-color:transparent;color:hsl(var(--primary));padding:0;height:auto;border-color:transparent}.button--link:hover{text-decoration:underline;text-underline-offset:4px}.button--size-default{height:2.25rem;padding:.5rem 1rem}.button--size-default:has(>svg){padding-inline:.75rem}.button--size-sm{height:2rem;padding-inline:.75rem;border-radius:.375rem;gap:.375rem}.button--size-sm:has(>svg){padding-inline:.625rem}.button--size-lg{height:2.5rem;padding-inline:1.5rem;border-radius:.375rem}.button--size-lg:has(>svg){padding-inline:1rem}.button--size-icon{width:2.25rem;height:2.25rem;padding:0;border-radius:.375rem;justify-content:center;align-items:center}.image-fallback{display:inline-block;background-color:#f3f4f6;text-align:center;vertical-align:middle;width:100%;height:100%;overflow:hidden}.image-fallback-inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-fallback-inner img{max-width:100%;max-height:100%;object-fit:contain}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border:1px solid var(--color-border,rgba(0,0,0,.1));padding:.125rem .5rem;font-size:.75rem;font-weight:500;width:-moz-fit-content;width:fit-content;white-space:nowrap;flex-shrink:0;gap:.25rem;overflow:hidden;transition:color .15s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease}.badge>svg{width:.75rem;height:.75rem;pointer-events:none}.badge:focus-visible{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}.badge[aria-invalid=true]{border-color:var(--destructive)}.badge[aria-invalid=true],.dark .badge[aria-invalid=true]{box-shadow:0 0 0 3px var(--destructive)}.badge--default{border-color:transparent;background-color:var(--primary);color:var(--primary-foreground)}.badge--default:hover{filter:brightness(.95)}.badge--secondary{border-color:transparent;background-color:var(--secondary);color:var(--secondary-foreground)}.badge--secondary:hover{filter:brightness(.95)}.badge--destructive{border-color:transparent;background-color:var(--destructive);color:#ffffff}.badge--destructive:hover{filter:brightness(.95)}.badge--destructive:focus-visible{box-shadow:0 0 0 3px var(--destructive)}.dark .badge--destructive{opacity:.9}.badge--outline{background-color:transparent;color:var(--foreground)}.badge--outline:hover{background-color:var(--accent);color:var(--accent-foreground)}.card{background-color:var(--color-card,var(--card));color:var(--color-card-foreground,var(--card-foreground));display:flex;flex-direction:column;gap:1.5rem;border-radius:var(--radius-xl,1rem);border:1px solid var(--color-border,var(--border))}.card-header{display:grid;grid-auto-rows:min-content;grid-template-rows:auto auto;align-items:flex-start;grid-gap:.375rem;gap:.375rem;padding:1.5rem}.card-header:has([data-slot=card-action]){grid-template-columns:1fr auto}.card-title{line-height:1}.card-description{color:var(--color-muted-foreground,var(--muted-foreground))}.card-action{grid-column-start:2;grid-row:1/span 2;align-self:flex-start;justify-self:flex-end}.card-content{padding-left:1.5rem;padding-right:1.5rem}.card-content:last-child{padding-bottom:1.5rem}.card-footer{display:flex;align-items:center;padding:1.5rem}.property-card{overflow:hidden;border:1px solid #e5e5e5;border-radius:.625rem;background-color:#ffffff;transition:box-shadow .3s ease;cursor:pointer}.property-card:hover{box-shadow:0 20px 40px rgba(15,23,42,.15)}.property-card-image-wrapper{position:relative;overflow:hidden}.property-card-image{width:100%;height:16rem;object-fit:cover;transition:transform .5s ease}.property-card:hover .property-card-image{transform:scale(1.05)}.property-card-badge{position:absolute;top:1rem;right:1rem;border:0;background-image:linear-gradient(90deg,#d97706,#b45309);color:#ffffff;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.property-card-content{padding:1.5rem}.property-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.75rem}.property-card-location{display:flex;align-items:center;gap:.5rem;color:#525252}.property-card-location-text{font-size:.875rem}.property-card-icon{width:1rem;height:1rem}.property-card-price{color:#171717;font-weight:600;margin-bottom:1rem}.property-card-meta{display:flex;align-items:center;gap:1.5rem;color:#525252;font-size:.875rem}.property-card-meta-item{display:flex;align-items:center;gap:.375rem}.property-card-meta-icon{width:1rem;height:1rem}.property-card-hover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 20%,rgba(0,0,0,.45));display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.5rem;opacity:0;transform:translateY(10px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}.property-card:hover .property-card-hover-overlay{opacity:1;transform:translateY(0)}.property-card-hover-inner{display:flex;align-items:center;gap:.5rem;color:#ffffff;font-size:1rem;font-weight:500;opacity:0;transform:translateY(10px);transition:opacity .35s ease,transform .35s ease}.property-card:hover .property-card-hover-inner{opacity:1;transform:translateY(0)}.property-card-hover-icon{transition:transform .35s ease}.property-card:hover .property-card-hover-icon{transform:translateX(4px)}.avatar{position:relative;display:flex;width:40px;height:40px;flex-shrink:0;overflow:hidden;border-radius:9999px}.avatar-image{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1;display:block}.avatar-fallback{background-color:var(--muted);display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:9999px;font-weight:600;font-size:.875rem;color:var(--foreground)}.testimonial-card{border:1px solid #e5e5e5;height:100%}.testimonial-content{padding:1.5rem}.testimonial-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.testimonial-avatar,.testimonial-avatar-fallback{width:3rem;height:3rem;background-color:#1e3a8a;color:#ffffff;display:flex;align-items:center;justify-content:center;border-radius:9999px;font-weight:600;font-size:1rem}.testimonial-name{color:#171717;font-weight:500}.testimonial-stars{margin-top:.25rem;display:flex;gap:.25rem}.star{width:1rem;height:1rem}.star.filled{fill:#f59e0b;color:#f59e0b}.star.empty{color:#d4d4d4}.testimonial-review{color:#404040;font-style:italic}.benefit-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem}.benefit-icon-wrapper{width:4rem;height:4rem;border-radius:9999px;background-color:#1e3a8a;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.benefit-icon{width:2rem;height:2rem;color:#ffffff}.benefit-title{color:#171717;font-weight:600;margin-bottom:.5rem}.benefit-description{color:#525252;font-size:.95rem;line-height:1.5}.input{display:flex;align-items:center;height:2.25rem;width:100%;min-width:0;border-radius:.375rem;border-width:1px;border-style:solid;border-color:hsl(var(--input));padding-inline:.75rem;padding-block:.25rem;font-size:1rem;line-height:1.5;background-color:hsl(var(--input-background));color:hsl(var(--foreground));transition:color .15s ease-in-out,box-shadow .15s ease-in-out,border-color .15s ease-in-out;outline:none;box-sizing:border-box}.dark .input{background-color:hsl(var(--input)/.3)}.input::placeholder{color:hsl(var(--muted-foreground))}.input::selection{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.input::-webkit-file-upload-button{display:inline-flex;align-items:center;justify-content:center;height:1.75rem;border:0;background-color:transparent;padding:0;margin-right:.5rem;font-size:.875rem;font-weight:500;color:hsl(var(--foreground));cursor:pointer}.input::file-selector-button{display:inline-flex;align-items:center;justify-content:center;height:1.75rem;border:0;background-color:transparent;padding:0;margin-right:.5rem;font-size:.875rem;font-weight:500;color:hsl(var(--foreground));cursor:pointer}.input:focus-visible{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.5)}.input[aria-invalid=true]{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}.dark .input[aria-invalid=true]{box-shadow:0 0 0 3px hsl(var(--destructive)/.4)}.input:disabled{pointer-events:none;cursor:not-allowed;opacity:.5}@media (min-width:768px){.input{font-size:.875rem}}.textarea{display:flex;field-sizing:content;resize:none;min-height:150px;width:100%;border-radius:.375rem;border-width:1px;border-style:solid;border-color:hsl(var(--input));padding-inline:.75rem;padding-block:.5rem;font-size:1rem;background-color:hsl(var(--input-background));color:hsl(var(--foreground));transition:color .15s ease-in-out,box-shadow .15s ease-in-out,border-color .15s ease-in-out;outline:none;box-sizing:border-box}.dark .textarea{background-color:hsl(var(--input)/.3)}.textarea::placeholder{color:hsl(var(--muted-foreground))}.textarea:focus-visible{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.5)}.textarea[aria-invalid=true]{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}.dark .textarea[aria-invalid=true]{box-shadow:0 0 0 3px hsl(var(--destructive)/.4)}.textarea:disabled{cursor:not-allowed;opacity:.5}@media (min-width:768px){.textarea{font-size:.875rem}}.label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.group[data-disabled=true] .label{pointer-events:none;opacity:.5}.peer:disabled+.label,.peer:disabled~.label{cursor:not-allowed;opacity:.5}