/* Family agency theme over the shared, audited catalogue components. */
:root{--ui-primary:#ae563c;--ui-primary-hover:#93452f;--ui-deep:#75432f;--ui-accent:#b96749;--ui-selected:#f5e5d3;--ui-line:#e5d7c7;--ui-bg:#fbf4e9;--ui-field:#f4ebdf;--ui-ink:#48392e;--ui-muted:#89796a;--ink:var(--ui-ink);--muted:var(--ui-muted);--line:var(--ui-line)}
body.family-portal{background:#fbf4e9!important;color:#48392e!important}
.family-portal .site-header,.family-portal #shared-site-header,.family-portal .home-sticky-search{background:#fbf4e9f5!important;border-color:var(--ui-line)!important}
.family-portal .brand,.family-portal .brand .agency-brand-name{color:#48392e!important}.family-portal .brand .agency-brand-name small{color:#89796a!important;letter-spacing:1.2px!important}.family-portal .family-brand-mark{display:grid;place-content:center;flex:none;width:43px;height:43px;border-radius:50%;background:#ae563c;color:#fff;font-size:24px;font-weight:750}.family-portal .header-help,.family-portal .button-dark{background:#ae563c!important;border-color:#ae563c!important;border-radius:28px!important}.family-portal .header-phone{font-size:13px;font-weight:650;white-space:nowrap;color:#75432f}.family-portal .header-nav-icon{border-radius:50%!important}
.family-portal .hero.hero-editorial{background:transparent!important;min-height:0!important;padding:28px 0 36px!important;overflow:visible!important;isolation:auto}
.family-portal .hero.hero-editorial::before,.family-portal .hero.hero-editorial::after{display:none!important}
.family-portal .family-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin:0 auto 38px;min-height:510px}
.family-portal .family-hero-copy{padding:20px 0}.family-portal .family-hero-copy .eyebrow{font-size:11px;letter-spacing:1.8px;margin-bottom:24px;color:#89796a!important}
.family-portal .hero-editorial h1{font-size:clamp(42px,4.5vw,68px)!important;line-height:1.08!important;text-align:left!important;letter-spacing:-2.8px!important;color:#48392e!important;margin:0 0 24px!important;max-width:none!important;font-weight:550!important;text-shadow:none!important}
.family-portal .hero-editorial h1 em{font-family:Georgia,serif;font-weight:400;color:#ae563c;font-style:italic}.family-portal .family-hero-description{max-width:470px;color:#89796a;font-size:16px;line-height:1.8;margin:0 0 27px}
.family-portal .family-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.family-portal .family-hero-actions .button{border-radius:40px;padding:18px 25px}.family-portal .family-hero-actions>a:last-child{font-size:13px;color:#75432f}.family-portal .family-free{display:flex;gap:12px;align-items:center;margin-top:25px;font-size:12px;color:#89796a}.family-free>span{font-size:25px;color:#ae563c}.family-free p{margin:0;line-height:1.6}
.family-portal .family-collage{height:510px;position:relative}.family-portal .family-large{position:absolute;right:0;top:0;width:80%;height:420px;overflow:hidden;border-radius:150px 150px 24px 24px}.family-portal .family-large img,.family-portal .family-small img{display:block;width:100%;height:100%;object-fit:cover}.family-portal .family-small{position:absolute;left:0;bottom:20px;width:52%;height:220px;overflow:hidden;border:8px solid #fbf4e9;border-radius:28px;transform:rotate(-5deg)}.family-portal .family-small span{position:absolute;bottom:14px;left:10px;right:10px;background:#fffaf3dd;padding:10px;border-radius:18px;font-size:12px;color:#48392e}.family-portal .family-sticker{position:absolute;right:3%;bottom:35px;width:135px;height:135px;background:#e8bb7a;border-radius:50%;display:flex;flex-direction:column;justify-content:center;padding:25px;transform:rotate(8deg);font-size:14px;color:#48392e}.family-portal .family-sticker strong{font-size:29px;font-weight:500}.family-portal .family-image-note{position:absolute;left:15px;bottom:0;font-size:9px;color:#89796a}
.family-portal .family-search-area{position:relative;margin:auto}.family-portal .family-search-area>h2{font-size:23px;letter-spacing:-.6px;margin:0 0 18px}.family-portal .hero-editorial #home-search{background:#fffaf3!important;border:1px solid #eadccb!important;padding:18px!important;border-radius:26px!important;box-shadow:0 8px 26px #68492707!important}.family-portal .hero-editorial #home-search>.select-field,.family-portal .hero-editorial #home-search>.range-field{border-radius:15px!important;background:#f6eee2!important}.family-portal .hero-editorial .search-map-button{border-color:#d7bfa9!important;color:#75432f!important;border-radius:15px!important}.family-portal .hero-editorial .find-button{border-radius:15px!important}.family-portal .family-search-area>.search-reset{position:absolute;right:0;top:0;color:#89796a!important}.family-portal .resume-selection{margin-top:16px!important;background:#f3e6d5!important;color:#48392e!important;border-color:#e5d7c7!important;border-radius:16px!important}.family-portal .resume-selection b{color:#75432f!important}
.family-portal .section h2,.family-portal .section-heading h2{letter-spacing:-1.8px}.family-portal .project-card,.family-portal .catalog-project-card,.family-portal .catalogue-units article,.family-portal .recent-card{background:#fffaf3!important;border-color:#e9ddce!important;border-radius:24px!important;overflow:hidden}.family-portal .project-body,.family-portal .project-card-copy{background:#fffaf3!important}.family-portal .project-visual,.family-portal .project-card-media{overflow:hidden}.family-portal .project-card-bottom{background:#fffaf3!important}.family-portal .district-card,.family-portal .selection-card{background:#f5eadb!important;border-radius:22px!important;border-color:#eadfce!important}.family-portal .help-section{background:#eadcc9!important;color:#48392e!important;margin:60px auto;border-radius:35px;max-width:calc(100% - 64px)}.family-portal .help-section h2,.family-portal .help-section .eyebrow{color:#48392e!important}.family-portal .help-section p,.family-portal .help-steps p{color:#746658!important}.family-portal .help-steps span{color:#ae563c!important;border-color:#cbb49d!important}.family-portal .button-lime{border-radius:28px!important}.family-portal .faq-list details{background:#fffaf3!important;border-color:#e5d7c7!important;border-radius:18px!important}
.family-portal #portal-footer{background:#f0e4d4!important;border-color:#e0cfba!important;color:#48392e!important}.family-portal .portal-footer-bottom{border-color:#d9c5af!important;color:#89796a!important}.family-portal .family-footer-contacts{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:25px;padding:25px 0;border-top:1px solid #dfcdb8;border-bottom:1px solid #dfcdb8;margin-top:20px;font-size:13px;line-height:1.7}.family-footer-contacts strong{display:block;color:#75432f;font-size:16px}.family-footer-contacts small{display:block;color:#89796a;margin-bottom:5px}.family-footer-contacts a{text-decoration:underline;text-underline-offset:4px}.family-footer-legal{font-size:10px;line-height:1.7;color:#89796a;margin:18px 0 0}
.family-portal .catalog-picker-field,.family-portal .catalog-range{border-radius:16px!important}.family-portal .view-toggle,.family-portal .filter-picker-panel{border-radius:18px!important}.family-portal .filter-picker-panel,.family-portal .picker-footer,.family-portal .picker-option{background:#fffaf3!important}.family-portal .picker-option.is-selected{background:#f5e5d3!important;border-color:#c98a67!important}.family-portal .catalog-modern .catalog-project-card:hover{border-color:#b96749!important}.family-portal .project-page-nav{background:#fbf4e9!important;border-color:#e5d7c7!important}.family-portal .project-top-image{border-radius:75px 75px 22px 22px;overflow:hidden}.family-portal .project-top-copy{background:#fffaf3;border:1px solid #eadccb;border-radius:24px;padding:28px}.family-portal .project-top-actions .btn{border-radius:28px!important}.family-portal .project-feature-icon{background:#f0e1cd;color:#ae563c!important;border-radius:50%}.family-portal .project-feature-icon svg{stroke:#ae563c!important}.family-portal .project-about-facts{background:#f4e8d8!important;border-radius:24px}.family-portal .project-photo-grid button{border-radius:20px;overflow:hidden}.family-portal .project-contacts{background:#eadcc9!important;color:#48392e!important;border-radius:28px}.family-portal .project-contacts h2,.family-portal .project-contacts p{color:#48392e!important}.family-portal .project-location-frame,.family-portal .yar-map-stage{background:#eee4d7!important;border-radius:22px;overflow:hidden}
.family-portal #apartment-viewer,.family-portal .av-head,.family-portal .av-info,.family-portal .av-tools{background:#fffaf3!important;color:#48392e!important}.family-portal .av-primary,.family-portal .av-floors .selected,.family-portal .mk-helper-toggle{background:#ae563c!important;border-color:#ae563c!important;color:white!important}.family-portal .av-price{color:#75432f!important}.family-portal .av-secondary button,.family-portal .av-floors button{border-color:#d9c5af!important}.family-portal .mk-helper-header{background:#75432f!important}.family-portal .mk-helper-message,.family-portal .mk-helper-body{background:#fffaf3!important;color:#48392e!important}.family-portal .dialog,.family-portal dialog{border-radius:24px!important}.family-portal .compare-tray,.family-portal .compare-dialog{background:#fffaf3!important}.family-portal .family-call{display:inline-block;padding:12px 20px;border-radius:24px;background:#ae563c;color:white!important;margin-top:15px}.family-portal .family-inquiry-contact{font-size:13px;line-height:1.7;margin-bottom:15px}
@media(max-width:1150px){.family-portal .header-phone{display:none}.family-portal .family-hero-grid{gap:30px}.family-portal .hero-editorial h1{font-size:52px!important}.family-portal .family-collage{height:470px}.family-portal .family-large{height:390px}}
@media(max-width:760px){.family-portal .hero.hero-editorial{padding-top:12px!important}.family-portal .family-hero-grid{display:flex;flex-direction:column;gap:15px;min-height:0;margin-bottom:35px}.family-portal .family-hero-copy{width:100%;padding:15px 0 0}.family-portal .family-hero-copy .eyebrow{font-size:9px;margin-bottom:18px}.family-portal .hero-editorial h1{font-size:41px!important;letter-spacing:-1.7px!important;line-height:1.12!important}.family-portal .family-hero-description{font-size:14px;margin-bottom:20px}.family-portal .family-hero-actions{gap:14px}.family-portal .family-hero-actions .button{padding:15px 20px}.family-portal .family-free{margin-top:20px;font-size:11px}.family-portal .family-collage{height:365px;width:100%}.family-portal .family-large{height:305px;border-radius:100px 100px 20px 20px}.family-portal .family-small{height:175px;bottom:8px;border-width:6px}.family-portal .family-sticker{height:110px;width:110px;bottom:10px;padding:20px;font-size:12px}.family-portal .family-sticker strong{font-size:24px}.family-portal .family-image-note{bottom:-12px;font-size:8px}.family-portal .hero-editorial #home-search{padding:12px!important;border-radius:22px!important}.family-portal .family-search-area>h2{font-size:22px;padding-right:70px}.family-portal .help-section{max-width:calc(100% - 32px);border-radius:26px}.family-portal .family-footer-contacts{grid-template-columns:1fr;gap:20px}.family-portal .project-top-copy{padding:22px}.family-portal .brand .family-brand-mark{width:34px;height:34px;font-size:21px}.family-portal .header-row{gap:9px!important}}

.family-portal .mk-helper-launch,.family-portal #mk-helper header{background:#75432f!important;color:white!important}.family-portal #mk-helper{background:#fffaf3!important;color:#48392e}.family-portal .mk-helper-log>p{background:#f4e8d8!important;color:#48392e}.family-portal .mk-helper-log>p.is-user{background:#eadecc!important}.family-portal #mk-helper .mk-helper-input button{background:#ae563c!important}.family-portal .header-nav-copy small{display:none!important}
@media(max-width:1450px){.family-portal .header-phone{display:none!important}}
@media(min-width:1451px){.family-portal #shared-site-header .header-row{grid-template-columns:auto minmax(0,1fr) 44px auto auto!important}}

/* Agency blocks and FAQ card spacing. */
.family-portal .faq-list{display:grid;gap:14px;align-content:start}
.family-portal .faq-list details{border:1px solid var(--ui-line)!important;margin:0!important;overflow:hidden}
.family-portal .faq-list summary{padding:24px 26px!important;gap:24px!important;line-height:1.5}
.family-portal .faq-list summary span{flex:0 0 24px;width:24px;text-align:center;line-height:1}
.family-portal .faq-list details p{padding:0 26px 24px!important;margin:0!important}
.agency-service .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-grid article{padding:30px;background:#fffaf3;border:1px solid #e5d7c7;border-radius:24px}.service-grid article>span{display:grid;place-content:center;width:42px;height:42px;border-radius:50%;background:#f2e2cf;color:#ae563c;font-size:14px;margin-bottom:25px}.service-grid h3{font-size:23px;line-height:1.25;letter-spacing:-.6px;margin:0 0 14px}.service-grid p{font-size:14px;line-height:1.8;color:#89796a;margin:0}.service-bottom{display:flex;align-items:center;gap:26px;margin-top:26px;font-size:13px}.service-bottom .button{padding:17px 24px}.family-portal .agency-viewing{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;background:#eadcc9;border-radius:32px;padding:45px;margin-top:70px;margin-bottom:30px}.viewing-copy h2{font-size:40px;margin-bottom:24px}.viewing-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#746658}.viewing-copy>a{display:block;font-size:13px;line-height:1.9;margin-top:30px}.viewing-copy>a strong{font-size:23px;font-weight:550}.viewing-form{background:#fffaf3;padding:30px;border-radius:24px;display:grid;grid-template-columns:1fr 1fr;gap:19px}.viewing-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#48392e}.viewing-form label>span{color:#89796a;font-size:10px}.viewing-form input,.viewing-form select,.viewing-form textarea{width:100%;min-width:0;padding:13px 14px;background:#fbf4e9;border:1px solid #dfcdb8;border-radius:11px;font:14px Onest,Arial,sans-serif;color:#48392e;line-height:1.5}.viewing-form textarea{resize:vertical}.viewing-wide{grid-column:1/-1}.viewing-note{font-size:11px!important;line-height:1.7!important;color:#89796a;margin:0}.viewing-form button{padding:17px;justify-content:center}.office-grid{display:grid;grid-template-columns:.8fr 1.2fr;border:1px solid #e5d7c7;border-radius:28px;overflow:hidden;background:#fffaf3}.office-copy{padding:35px;display:flex;flex-direction:column;align-items:start;gap:15px}.office-copy h3{font-size:26px;letter-spacing:-.6px;margin:0}.office-copy p{font-size:14px;line-height:1.8;color:#89796a;margin:0}.office-copy .office-address{color:#48392e;font-size:17px}.office-copy a{font-size:13px;overflow-wrap:anywhere}.office-copy .office-phone{font-size:24px;font-weight:550;color:#75432f}.office-copy .button{margin-top:10px;padding:16px 22px}.office-map-wrap{position:relative;min-height:420px;background:#eee4d7}.office-map-wrap iframe{height:100%;width:100%;position:absolute;inset:0;border:0;pointer-events:none}.office-map-wrap.is-active iframe{pointer-events:auto}.office-map-activate{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;color:#48392e;display:flex;align-items:end;justify-content:center;padding:22px;text-shadow:0 1px 3px white;font:13px Onest,Arial,sans-serif}.office-map-activate[hidden]{display:none}.viewing-draft{width:min(620px,calc(100vw - 28px));padding:30px;background:#fffaf3;color:#48392e;border:1px solid #e5d7c7}.viewing-draft::backdrop{background:#33251999}.viewing-draft .dialog-head{display:flex;gap:24px;align-items:start;justify-content:space-between}.viewing-draft h2{font-size:26px}.viewing-draft>p{font-size:13px;line-height:1.8;color:#89796a}.viewing-draft-text{font:14px/1.8 Onest,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:#f4e8d8;border-radius:15px}.viewing-call{display:block;font-size:13px;margin-top:18px}.viewing-draft .close{flex:none}
@media(max-width:900px){.family-portal .agency-viewing{gap:28px;padding:30px}.viewing-copy h2{font-size:32px}.viewing-form{padding:23px}.service-grid article{padding:22px}.service-grid h3{font-size:21px}}
@media(max-width:760px){.family-portal .faq-list summary{padding:20px!important;gap:16px!important;font-size:14px}.family-portal .faq-list details p{padding:0 20px 20px!important}.agency-service .service-grid{grid-template-columns:1fr;gap:14px}.service-bottom{align-items:start;flex-direction:column;gap:16px}.family-portal .agency-viewing{grid-template-columns:1fr;gap:25px;padding:24px 18px;margin-top:50px}.viewing-form{padding:20px;grid-template-columns:minmax(0,1fr)}.viewing-wide{grid-column:auto}.viewing-copy h2{font-size:32px}.viewing-form input,.viewing-form select,.viewing-form textarea{font-size:16px}.office-grid{grid-template-columns:1fr}.office-copy{padding:25px}.office-map-wrap{min-height:340px}.agency-office .section-heading{align-items:start;flex-direction:column}.viewing-draft{padding:23px}.viewing-draft h2{font-size:23px}}

#office-map{position:absolute;inset:0;pointer-events:none}.office-map-wrap.is-active #office-map{pointer-events:auto}.office-pin{transform:translate(-50%,-100%);white-space:nowrap;padding:12px 16px;border:3px solid white;border-radius:22px;background:#ae563c;color:white;font:600 13px Onest,Arial,sans-serif;box-shadow:0 5px 20px #48392e22}.office-map-status{position:absolute;left:20px;right:20px;top:20px;font-size:13px;background:#fffaf3;padding:12px;border-radius:12px}

/* Wide catalogue header has comparison and phone in addition to search and CTA. */
@media(min-width:1451px){
 .family-portal #shared-site-header .header-row{width:min(1440px,calc(100% - 80px))}
 .family-portal #shared-site-header[data-catalog-header] .header-row{grid-template-columns:auto minmax(0,1fr) 44px 44px auto auto!important}
}
