/* ERA's editorial typography, restrained red accents and warm surfaces. */
.property-detail { --era-ink:#0f1f43; --era-red:#b73538; --era-paper:#f5f3ef; }
.property-detail h2 { font-size:clamp(27px,2.5vw,36px); letter-spacing:-.9px; }
.property-detail .detail-eyebrow { color:#765052; font-size:10px; letter-spacing:1.8px; }
.detail-heading-top { padding-top:34px; border-top:4px solid var(--era-red); }
.detail-title-row h1 { font-size:clamp(30px,3.6vw,46px); letter-spacing:-1.3px; }
.detail-title-row .detail-price { font-size:clamp(29px,3.2vw,40px); letter-spacing:-1px; }
.detail-header-actions button { border-radius:4px; }
.detail-labels span { border-radius:3px; }
.detail-labels .detail-era { background:var(--era-red); }
.detail-media-tools { background:var(--era-paper); border-top:1px solid #e4e0d9; }
.detail-media-tools a,.detail-button { border-radius:2px; }
.detail-button:not(.detail-button-outline) { background:var(--era-red); border-color:var(--era-red); }
.detail-button:not(.detail-button-outline):hover { background:#97292c; }
.detail-thumbnails { background:var(--era-paper); }
.detail-section-nav { gap:12px 22px; padding:20px 0; }
.detail-section-nav a { text-decoration:none; border-bottom:2px solid transparent; padding-bottom:5px; }
.detail-section-nav a:hover { border-color:var(--era-red); }
.detail-content>section { padding-top:42px; padding-bottom:42px; }
.detail-content>.detail-highlights { padding-top:34px; }
.highlight-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.highlight-item { border-top:2px solid var(--era-red); padding:14px 0 0; }
.highlight-number { color:var(--era-red); font-size:12px; font-weight:700; }
.highlight-item h3 { font-size:18px; line-height:1.25; margin:13px 0 12px; }
.highlight-item p { font-size:13px; line-height:1.65; margin:0; }
.detail-highlights .detail-fineprint { font-size:11px; }
.detail-description { font-size:16px; line-height:1.85; }
.detail-agent-intro { background:var(--era-paper); padding:27px!important; margin:18px 0; border:0!important; }
.agent-intro-layout { display:flex; gap:25px; align-items:flex-start; }
.agent-intro-photo { flex:0 0 150px; width:150px; height:195px; object-fit:cover; object-position:center top; border-radius:2px; }
.agent-intro-layout>div { min-width:0; }
.property-detail .agent-intro-role { font-size:11px; color:#657080; margin:0 0 9px; }
.property-detail .agent-intro-layout h2 { font-size:27px; margin-bottom:16px; letter-spacing:-.5px; }
.agent-intro-layout blockquote { border:0; padding:0; margin:0 0 10px; font-size:14px; line-height:1.7; font-style:normal; color:var(--era-ink); }
.property-detail .agent-bio-credit { font-size:10px; color:#657080; margin:0 0 20px; }
.agent-intro-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; font-size:12px; }
.agent-intro-actions .detail-button { font-size:12px; padding:10px 13px; }
.detail-contact-card { border-radius:2px; background:var(--era-paper); border:1px solid #e4e0d9; padding:22px; }
.detail-contact-card .detail-era-agent { border-top-color:var(--era-red); }
.detail-contact-card .detail-agent-identity { flex-direction:column; align-items:flex-start; }
.detail-contact-card .detail-agent-identity img { width:96px; height:112px; flex-basis:auto; }
.detail-contact-card .detail-agent-identity h3 { font-size:23px; }
.detail-contact-card .detail-contact-divider { margin:17px 0; }
.detail-contact-card .detail-era-agent { margin-bottom:17px; }
.detail-contact-card { position:static; }
/* Keep assistance usable within short viewports without trapping the lower actions. */
@media(min-width:1000px) and (min-height:1000px){.detail-contact-card{position:sticky;top:85px;}}
.detail-facts { gap:0 25px; }
.detail-facts dt { font-size:11px; letter-spacing:.3px; }
.detail-facts dd { font-size:14px; }
.detail-content>section.detail-pm { border-radius:2px; padding:32px; background:var(--era-ink); border-top:4px solid var(--era-red); }
.detail-pm .detail-eyebrow { color:#d6b8b6; }
.detail-pm .pm-story h2 { color:white; font-size:clamp(30px,3vw,41px); letter-spacing:-1px; }
.pm-story h2 span { color:#d8dfeb; }
.detail-pm .pm-story-lead { font-size:15px; line-height:1.8; color:#e0e5ee; }
.pm-steps { margin:25px 0;padding:0;list-style:none; }
.pm-steps li { display:flex;gap:19px;border-top:1px solid #ffffff30;padding:20px 0; }
.pm-steps li>span { flex:0 0 25px;color:#d6b8b6;font-size:13px;font-weight:700; }
.detail-pm .pm-steps h3 { color:white;font-size:19px;margin:0 0 9px; }
.detail-pm .pm-steps p { color:#d8dfeb;font-size:13px;margin:0;line-height:1.7; }
.pm-story-actions { display:flex;flex-wrap:wrap;align-items:center;gap:18px;font-size:12px;margin:5px 0 30px; }
.pm-people { display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--era-paper);color:var(--era-ink);margin:0 -32px; }
.pm-people figure { margin:0; }
.pm-people img { display:block;width:100%;height:auto;object-fit:cover; }
.pm-people figcaption { font-size:10px;color:#657080;padding:8px 25px 0; }
.pm-people>div { padding:25px 30px 30px; }
.detail-pm .pm-people .detail-eyebrow { color:#765052; }
.detail-pm .pm-people h3 { color:var(--era-ink);font-size:27px; }
.detail-pm .pm-people p { font-size:14px; }
.detail-pm .pm-people a { color:var(--era-ink);font-size:13px; }
.detail-pm>.detail-fineprint { padding-top:10px;font-size:11px; }
.detail-related>a { border-radius:2px; }
@media(max-width:1100px){.highlight-grid{grid-template-columns:1fr;gap:18px}.highlight-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px 10px}.highlight-item h3{margin:0}.highlight-item p{grid-column:2}.agent-intro-layout{gap:18px}.agent-intro-photo{width:115px;height:150px;flex-basis:115px}}
@media(max-width:850px){.detail-contact-card .detail-agent-identity{flex-direction:row;align-items:center}.highlight-grid{grid-template-columns:1fr}.highlight-item{display:grid}.highlight-item h3{margin:0}.detail-contact-card .detail-agent-identity img{flex:0 0 96px}}
@media(max-width:600px){.detail-heading-top{padding:22px 20px}.detail-title-row .detail-price{font-size:32px}.detail-title-row h1{font-size:32px}.highlight-grid{grid-template-columns:1fr}.highlight-item{display:grid}.highlight-item h3{margin:0}.detail-content>section{padding-top:32px;padding-bottom:32px}.detail-agent-intro{padding:22px!important}.agent-intro-layout{flex-direction:column}.agent-intro-photo{width:130px;height:160px;flex:auto}.detail-content>section.detail-pm{padding:25px}.pm-people{display:block;margin:0 -25px}.pm-people>div{padding:22px 25px}.detail-pm .pm-story h2{font-size:32px}.agent-intro-layout h2{font-size:26px}.detail-contact-card .detail-agent-identity h3{font-size:21px}}
/* Tour invitation, consistent save icon, dismissible top notice and career pathways. */
.detail-media-tools a[data-tour]{transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;animation:era-tour-invite 1.8s ease-out .6s 2;}
.detail-media-tools a[data-tour]:nth-child(2){animation-delay:.9s}
.detail-media-tools a[data-tour]:hover,.detail-media-tools a[data-tour]:focus-visible{transform:translateY(-2px);background:var(--era-red);box-shadow:0 4px 12px #0f1f4326;}
.detail-media-tools a[data-tour]:active{transform:translateY(0)}
@keyframes era-tour-invite{0%,100%{box-shadow:0 0 0 0 #b7353800}45%{box-shadow:0 0 0 4px #b7353833}}
.detail-header-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2;}
.detail-save-heart{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transform:none;}
[data-detail-save][aria-pressed=true] .detail-save-heart{fill:currentColor;}
.property-detail .detail-message{position:fixed;top:18px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);width:min(600px,calc(100vw - 32px));margin:0;z-index:10000;display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:12px;padding:16px;background:#0f1f43;color:white;border:1px solid #ffffff55;border-radius:5px;box-shadow:0 8px 30px #0004;font-size:14px;}
.detail-message [data-notice-content]{grid-column:2;min-width:0;overflow-wrap:anywhere;text-align:center;line-height:1.5;}
.detail-message [data-dismiss-notice]{grid-column:3;grid-row:1;display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;background:transparent;color:white;border:1px solid #ffffff66;border-radius:3px;padding:5px;}
.detail-message [data-dismiss-notice]:hover{background:#ffffff20;}
.detail-message [data-dismiss-notice] svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;}
.property-dialog .detail-message{top:86px;width:min(600px,calc(100vw - 120px));}
.detail-content>section.detail-careers{border-top:3px solid var(--era-red);margin-top:28px;padding:28px;background:var(--era-paper);}
.detail-careers h2{font-size:29px;}
.detail-career-paths{display:grid;grid-template-columns:1fr 1fr;gap:25px;}
.detail-career-paths>div+div{border-left:1px solid #d7d6d2;padding-left:25px;}
.detail-career-paths h3{font-size:19px;margin:0 0 12px;}
.detail-career-paths p{font-size:13px;line-height:1.7;}
.detail-career-paths a{font-size:13px;text-decoration:underline;text-decoration-color:var(--era-red);text-decoration-thickness:2px;text-underline-offset:5px;}
@media(max-width:600px){.property-dialog .detail-message{top:70px;width:calc(100vw - 24px)}.detail-career-paths{grid-template-columns:1fr;gap:20px}.detail-career-paths>div+div{border-left:0;border-top:1px solid #d7d6d2;padding:20px 0 0}.detail-content>section.detail-careers{padding:24px}.detail-careers h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.detail-media-tools a[data-tour]{animation:none;transition:none;}.detail-media-tools a[data-tour]:hover,.detail-media-tools a[data-tour]:focus-visible{transform:none;}}

.detail-no-photo{position:relative;min-height:360px}.detail-no-photo>p{margin:0;padding:24px}.detail-no-photo.viewing-tour>p{visibility:hidden}

/* Give the property more space while keeping the overlay's search context visible. */
.property-standalone{max-width:1440px;padding:20px 16px;}
.detail-heading-top{padding-left:24px;padding-right:24px;}
.detail-body,.property-dialog .detail-body{padding-left:24px;padding-right:24px;}
.property-dialog{width:min(1360px,calc(100vw - 40px));}
.dialog-bar{gap:16px;padding-left:16px;padding-right:16px;}
.dialog-bar>button{flex-shrink:0;}
.dialog-bar>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;}
.dialog-bar .dialog-expand{border:1px solid #cbd2dd;border-radius:4px;padding:8px 12px;font-size:13px;min-height:40px;}
.dialog-expand:hover{background:#f0f3f7;}
.property-dialog.is-expanded{margin:0;inset:0;width:100%;height:100dvh;border-radius:0;}
.property-dialog.is-expanded .detail-message{top:76px;width:min(600px,calc(100vw - 32px));}
@media(max-width:850px){.property-standalone{padding-left:10px;padding-right:10px;}.detail-heading-top,.detail-body,.property-dialog .detail-body{padding-left:20px;padding-right:20px;}.dialog-bar>span{display:none;}}
@media(max-width:600px){.property-standalone{padding:15px 0 0;}.property-dialog{width:100%;}.detail-heading-top,.detail-body,.property-dialog .detail-body{padding-left:16px;padding-right:16px;}.dialog-bar{gap:8px;padding-left:8px;padding-right:8px;}.dialog-bar>button{font-size:12px;}}

/* Investor results first; assumptions and financing remain available on demand. */
.investment-metrics.outlook-summary{grid-template-columns:1.3fr 1fr 1fr;gap:22px;align-items:start;}
.outlook-summary>div:first-child{grid-column:auto;}
.outlook-summary>div:first-child strong{font-size:32px;}
.outlook-summary strong{font-size:26px;}
.outlook-summary span{margin-bottom:8px;line-height:1.4;}
.investment-results .outlook-annual{border-top:1px solid #d8d8d2;margin:20px 0 0;padding-top:15px;font-size:12px;}
.outlook-review{margin:20px 0 26px;}
.outlook-review p{font-size:12px;color:#657080;margin:10px 0 0;}
.outlook-panel{border-top:1px solid #dce0e5;padding:18px 0;}
.outlook-panel>summary{cursor:pointer;font-size:17px;font-weight:700;}
.outlook-panel[open]>summary{margin-bottom:18px;}
.outlook-panel .payment-disclosures{font-size:12px;}
@media(max-width:1000px){.investment-metrics.outlook-summary{grid-template-columns:1fr 1fr;gap:18px}.outlook-summary>div:first-child{grid-column:1/-1}}
@media(max-width:400px){.investment-metrics.outlook-summary{grid-template-columns:1fr}.outlook-summary>div:first-child{grid-column:auto}}

.listing-unavailable{padding:20px 24px;background:#fff3e2;border-left:4px solid #b73538}.listing-unavailable p{margin:6px 0}.listing-unavailable a{text-decoration:underline}

.property-detail .detail-message[hidden]{display:none}

/* Keep the address, facts and gallery together without compressing the photo. */
.detail-heading-top{padding-top:20px;padding-bottom:14px}
.detail-header-top{margin-bottom:12px}
.detail-title-row h1{margin-bottom:5px}
.detail-heading-top .detail-key-facts{margin:10px 0 6px;gap:6px 20px}
@media(max-width:600px){.detail-heading-top{padding-top:16px;padding-bottom:12px}.detail-header-top{gap:8px}.detail-title-row .detail-price{margin-top:8px!important}}
