.nav{border-bottom:1px solid var(--color-border);background:#fff;position:sticky;top:0;z-index:10}.nav__inner{max-width:var(--content-max-width);margin:0 auto;padding:.9rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.nav__brand{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:1.05rem;color:var(--color-purple);text-decoration:none}.nav__logo{height:32px;width:auto;display:block}.nav__links{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.nav__link{color:var(--color-text);text-decoration:none;font-size:.95rem}.nav__link:hover{color:var(--color-purple)}.nav__link--soon{color:var(--color-muted);display:inline-flex;align-items:center;gap:.4rem;cursor:default}.nav__badge{font-size:.68rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;background:var(--color-badge-bg);color:var(--color-muted);border-radius:999px;padding:.15rem .5rem}.footer{border-top:1px solid var(--color-border);background:var(--color-surface);margin-top:3rem}.footer__inner{max-width:var(--content-max-width);margin:0 auto;padding:2.5rem 1.5rem 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}@media (max-width: 720px){.footer__inner{grid-template-columns:repeat(2,1fr)}}.footer__col{display:flex;flex-direction:column;gap:.5rem}.footer__col h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-muted);margin-bottom:.25rem}.footer__col a{color:var(--color-text);text-decoration:none;font-size:.92rem}.footer__col a:hover{color:var(--color-purple)}.footer__soon{font-size:.85rem;color:var(--color-muted);font-style:italic}.footer__col--newsletter p{font-size:.88rem;color:var(--color-muted);margin:0}.footer__newsletter{display:flex;gap:.5rem}.footer__newsletter input{flex:1;min-width:0;padding:.5rem .6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color var(--transition),box-shadow var(--transition);font-size:.85rem}.footer__newsletter input:focus{outline:none;border-color:var(--color-purple);box-shadow:0 0 0 3px #4b2e831f}.footer__newsletter button{padding:.5rem .8rem;border:none;border-radius:var(--radius-sm);background:var(--color-purple);color:#fff;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background-color var(--transition)}.footer__newsletter button:hover:not(:disabled){background:var(--color-purple-dark)}.footer__newsletter button:disabled,.footer__newsletter input:disabled{cursor:not-allowed;opacity:.6}.footer__newsletter-success,.footer__newsletter-error{font-size:.85rem}.footer__newsletter-success{color:var(--color-purple);font-weight:600}.footer__newsletter-error{color:#b3261e}.footer__social{display:flex;align-items:center;gap:.6rem;margin-top:.4rem}.footer__social-label{font-size:.8rem;color:var(--color-muted)}.footer__social-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-purple);text-decoration:none;font-size:.88rem;font-weight:600}.footer__social-link:hover{opacity:.8}.footer__bottom{border-top:1px solid var(--color-border);padding:1rem 1.5rem;text-align:center}.footer__bottom p{font-size:.8rem;color:var(--color-muted);margin:0}.hero{max-width:var(--content-max-width);margin:0 auto;padding:3.5rem 1.5rem 2.5rem;display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem;align-items:center}@media (max-width: 780px){.hero{grid-template-columns:1fr}}.hero__text h1{font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.15;margin:0 0 1rem;color:var(--color-text)}.hero__text p{color:var(--color-muted);font-size:1.02rem;line-height:1.55;margin:0 0 1.5rem;max-width:46ch}.hero__actions{display:flex;gap:.9rem;flex-wrap:wrap}.hero__image{display:block;width:100%;min-height:260px;height:100%;max-height:360px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.4rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color var(--transition),color var(--transition),transform var(--transition),box-shadow var(--transition)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--color-purple);color:#fff}.btn--primary:hover{background:var(--color-purple-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--primary:active{transform:translateY(0)}.btn--secondary{background:transparent;color:var(--color-purple);border:1.5px solid var(--color-purple)}.btn--secondary:hover{background:var(--color-badge-bg)}.why{max-width:68ch;margin:0 auto;padding:1rem 1.5rem 3rem;text-align:left}.why h2{font-size:1.4rem;margin:0 0 .75rem}.why p{color:var(--color-muted);line-height:1.6;margin:0}.do-now{background:var(--color-surface);padding:3rem 1.5rem}.do-now h2{max-width:var(--content-max-width);margin:0 auto 1.5rem;font-size:1.4rem;padding:0 .25rem}.do-now__cards{max-width:var(--content-max-width);margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width: 640px){.do-now__cards{grid-template-columns:1fr}}.do-now__card{display:block;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;text-decoration:none;color:var(--color-text);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.do-now__card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.do-now__card h3{margin:0 0 .4rem;font-size:1.1rem}.do-now__card p{margin:0 0 .9rem;color:var(--color-muted);font-size:.92rem}.do-now__cta{color:var(--color-purple);font-weight:600;font-size:.9rem}.coming-soon{padding:3rem 1.5rem}.coming-soon h2{max-width:var(--content-max-width);margin:0 auto 1.5rem;font-size:1.4rem;padding:0 .25rem}.coming-soon__cards{max-width:var(--content-max-width);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media (max-width: 780px){.coming-soon__cards{grid-template-columns:1fr}}.coming-soon__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;position:relative}.coming-soon__badge{display:inline-block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-purple);background:var(--color-badge-bg);border-radius:var(--radius-pill);padding:.2rem .6rem;margin-bottom:.75rem}.coming-soon__card h3{margin:0 0 .4rem;font-size:1.05rem}.coming-soon__card p{margin:0;color:var(--color-muted);font-size:.9rem;line-height:1.5}.credibility{background:var(--color-purple);color:#fff;text-align:center;padding:1.5rem}.credibility p{margin:.15rem 0;font-size:.95rem}.credibility__pending{color:#ffffffb3;font-style:italic;font-size:.85rem}.image-placeholder{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,var(--color-surface),var(--color-surface) 10px,#ffffff 10px,#ffffff 20px);border:1px dashed var(--color-border);border-radius:12px;color:var(--color-muted);font-size:.85rem;text-align:center;padding:1rem}.apartment-card{display:block;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;color:var(--color-text);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.apartment-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.apartment-card__link{display:block;text-decoration:none;color:inherit}.apartment-card__image{min-height:150px;border-radius:0;border-width:0 0 1px}img.apartment-card__image{display:block;width:100%;height:150px;object-fit:cover}.apartment-card__body{padding:.75rem 1.25rem 1.25rem}.apartment-card__top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:1.25rem 1.25rem 0}.apartment-card__top h3{margin:0;font-size:1.05rem}.apartment-card__rating{flex-shrink:0;font-size:.85rem;font-weight:600;color:var(--color-purple)}.apartment-card__neighborhood{margin:.2rem 0 .6rem;font-size:.85rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.02em}.apartment-card__blurb{margin:0 0 .35rem;font-size:.92rem;color:var(--color-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.apartment-card__blurb--expanded{-webkit-line-clamp:unset;overflow:visible}.apartment-card__blurb-toggle{display:inline-flex;align-items:center;gap:.25rem;margin:0 0 1rem;padding:0;border:none;background:none;color:var(--color-purple);font-size:.82rem;font-weight:600;cursor:pointer;transition:color var(--transition)}.apartment-card__blurb-toggle:hover{text-decoration:underline}.apartment-card__blurb-toggle-icon{font-size:.7rem}.apartment-card__footer{display:flex;align-items:center;justify-content:space-between}.apartment-card__price{font-weight:700;font-size:.95rem}.apartment-card__cta{color:var(--color-purple);font-weight:600;font-size:.85rem;text-decoration:none}.apartment-card__cta:hover{text-decoration:underline}.catalog{max-width:var(--content-max-width);margin:0 auto;padding:2.5rem 1.5rem 4rem}.catalog__header{margin-bottom:1.25rem}.catalog__header h1{font-size:clamp(1.6rem,2.6vw,2.1rem);margin:0 0 .4rem}.catalog__header p{margin:0;color:var(--color-muted)}.catalog__disclaimer{max-width:62ch;margin-top:.5rem;color:var(--color-muted);font-size:.85rem;line-height:1.5}.catalog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media (max-width: 900px){.catalog__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.catalog__grid{grid-template-columns:1fr}}.apartment-detail{max-width:var(--content-max-width);margin:0 auto;padding:2rem 1.5rem 4rem}.apartment-detail--missing{text-align:center;padding-top:4rem}.apartment-detail__back{display:inline-block;color:var(--color-purple);text-decoration:none;font-weight:600;font-size:.9rem;margin-bottom:1.25rem}.apartment-detail__back:hover{opacity:.8}.apartment-detail__disclaimer{max-width:62ch;margin:1.5rem 0 0;color:var(--color-muted);font-size:.85rem;line-height:1.5}.apartment-detail__layout{display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem;align-items:start}@media (max-width: 780px){.apartment-detail__layout{grid-template-columns:1fr}}.apartment-detail__image{min-height:320px}img.apartment-detail__image{display:block;width:100%;height:320px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.apartment-detail__info h1{font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 .4rem}.apartment-detail__address{margin:0 0 .15rem;color:var(--color-text);font-size:.95rem}.apartment-detail__neighborhood{margin:0 0 1.25rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.85rem}.apartment-detail__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;margin-bottom:1.5rem}@media (max-width: 480px){.apartment-detail__stats{grid-template-columns:repeat(2,1fr)}}.apartment-detail__stats>div{display:flex;flex-direction:column;gap:.15rem}.apartment-detail__stat-value{font-weight:700;font-size:1rem;color:var(--color-purple)}.apartment-detail__stat-label{font-size:.75rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.02em}.apartment-detail__blurb{color:var(--color-muted);line-height:1.6;margin:0}.account{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.account__header{margin-bottom:1.25rem}.account__header h1{font-size:clamp(1.6rem,2.6vw,2.1rem);margin:0 0 .4rem}.account__header p{margin:0;color:var(--color-muted)}.account__banner{background:var(--color-badge-bg);border:1px solid var(--color-border);border-radius:10px;padding:.85rem 1.1rem;margin-bottom:2rem;color:var(--color-muted);font-size:.88rem;font-style:italic;line-height:1.5}.account__tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--color-border);margin-bottom:1.75rem}.account__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-bottom:2px solid transparent;padding:.65rem .25rem;margin-right:1.25rem;font-size:.95rem;font-weight:600;color:var(--color-muted);cursor:pointer}.account__tab:hover{color:var(--color-text)}.account__tab--active{color:var(--color-purple);border-bottom-color:var(--color-purple)}.account__panel{margin-bottom:2rem}.account__form{display:flex;flex-direction:column;gap:1.1rem}.account__field{display:flex;flex-direction:column;gap:.35rem}.account__field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}@media (max-width: 520px){.account__field-row{grid-template-columns:1fr}}.account__field label,.account__field-label{font-size:.85rem;font-weight:600;color:var(--color-text)}.account__field input,.account__field select{border:1px solid var(--color-border);border-radius:8px;padding:.6rem .75rem;font-size:.95rem;font-family:inherit;color:var(--color-text);background:#fff}.account__field input:focus,.account__field select:focus{outline:2px solid var(--color-purple);outline-offset:1px}.account__chips{display:flex;flex-wrap:wrap;gap:.5rem}.account__chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);background:#fff;border-radius:999px;padding:.4rem .9rem;font-size:.85rem;color:var(--color-text);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.account__chip:hover{border-color:var(--color-purple)}.account__chip--active{background:var(--color-purple);border-color:var(--color-purple);color:#fff}.account__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--color-border);padding-top:1.25rem}.account__saved{font-size:.85rem;color:var(--color-muted)}.account__reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--color-border);border-radius:8px;padding:.5rem .9rem;font-size:.85rem;color:var(--color-muted);cursor:pointer}.account__reset:hover{border-color:var(--color-purple);color:var(--color-purple)}:root{--color-purple: #4b2e83;--color-purple-dark: #3b2568;--color-text: #1b1b1b;--color-muted: #6b6b6b;--color-border: #e3e0e8;--color-surface: #f7f6fa;--color-badge-bg: #ece8f4;--content-max-width: 1080px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 14px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(27, 27, 27, .04), 0 2px 6px rgba(27, 27, 27, .05);--shadow-md: 0 10px 28px rgba(75, 46, 131, .14);--transition: .16s ease;font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--color-text);background:#fff;line-height:1.5}.app-shell{display:flex;flex-direction:column;min-height:100vh}main{flex:1}h1,h2,h3{font-weight:700;line-height:1.2}a{transition:color var(--transition),opacity var(--transition)}:focus-visible{outline:2px solid var(--color-purple);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion: reduce){*{transition-duration:.01ms!important;scroll-behavior:auto!important}}
