/* One broker message at a time, with the Atlas map still in view. */
#hospitalityMessageButton {
  position:absolute; left:246px; top:90px; z-index:27;
  min-height:44px; padding:10px 16px; border-radius:30px;
  border:1px solid #1439c626; background:#fff; color:#1439c6;
  box-shadow:0 6px 24px #17315e12; font:500 12px/1.4 "IBM Plex Sans",system-ui,sans-serif;
}
#hospitalityMessageButton[hidden],.hp-message-status[hidden] { display:none!important; }
#hospitalityMessageButton:hover { background:#f0f5ff; }
#hospitalityMessageButton:disabled { opacity:.65; cursor:wait; }
.hp-message-status { position:absolute; left:90px; top:138px; z-index:50; max-width:360px; padding:12px 16px; border-radius:12px; background:#fff; color:#17315e; box-shadow:0 6px 24px #17315e20; }
.is-opportunity-tour #hospitalityMessageButton { opacity:0; pointer-events:none; }
.br-review {
  position:fixed; inset:84px 24px 24px auto; margin:0; padding:0;
  width:min(520px,calc(100vw - 48px)); height:calc(100dvh - 108px);
  max-height:none; max-width:none; border:1px solid #1439c622;
  border-radius:20px; color:#17315e; background:#fff;
  box-shadow:0 24px 80px #17315e33;
  font:14px/1.5 "IBM Plex Sans",system-ui,sans-serif; overflow:hidden;
}
.br-review[open] { display:flex; flex-direction:column; }
.br-review::backdrop { background:#17315e1a; backdrop-filter:blur(2px); }
body:has(.br-review[open]) :is(#v2DealCard,#atlasInvestmentHUD,#hospitalityCollection) { visibility:hidden; }
.br-header { position:relative; flex:none; padding:22px 64px 16px 24px; }
.br-eyebrow { color:#1439c6; font-size:10px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.br-header h2 { margin:6px 0 4px; color:#17315e; font:500 27px/1.15 "IBM Plex Sans",system-ui,sans-serif; letter-spacing:-.035em; }
.br-deck-count { margin:0; color:#66758d; font-size:12px; }
.br-review button { font-family:inherit; cursor:pointer; }
.br-close { position:absolute; right:16px; top:16px; width:44px; height:44px; border:0; border-radius:50%; background:#f0f5ff; color:#66758d; font-size:25px; line-height:1; }
.br-navigation { display:flex; align-items:center; justify-content:center; gap:20px; flex:none; margin:0 24px; padding:10px 0; border-top:1px solid #1439c617; border-bottom:1px solid #1439c617; }
.br-prev,.br-next { width:44px; height:44px; border:1px solid #1439c622; border-radius:10px; background:#f0f5ff; color:#1439c6; font-size:23px; line-height:1; }
.br-counter { min-width:65px; color:#4267b2; font-size:13px; text-align:center; font-variant-numeric:tabular-nums; }
.br-review :is(button,a):focus-visible,#hospitalityMessageButton:focus-visible { outline:3px solid #77a4ff; outline-offset:3px; }
.br-review button:hover { background:#e4edff; }
.br-review button:disabled { opacity:.4; cursor:default; }
.br-current { flex:none; padding:15px 24px 5px; }
.br-property-names { margin:0; padding:0; border:0; color:inherit; font-family:inherit; font-size:17px; font-weight:500; line-height:1.35; letter-spacing:-.015em; text-wrap:balance; }
.br-content { overflow:auto; overscroll-behavior:contain; min-height:0; flex:1; padding:0 24px 22px; scrollbar-color:#b7c8e9 transparent; }
.br-review .hp-section { padding:0; margin:0; border:0; }
.br-review .hp-outreach-heading h3 { display:none; }
.br-review .hp-outreach-badge { color:#4267b2; font-size:11px; font-weight:400; }
.br-review .hp-outreach-recipient { margin:16px 0 12px; font-size:15px; }
.br-review .hp-outreach-recipient b,.br-review .hp-outreach-subject b { margin-right:7px; color:#66758d; font-size:11px; font-weight:500; }
.br-review .hp-outreach-recipient span { color:#66758d; font-size:12px; }
.br-review .hp-outreach-subject { margin:12px 0 18px; padding:12px 0; border-top:1px solid #1439c614; border-bottom:1px solid #1439c614; font-size:13px; }
.br-review .hp-outreach-body { color:#17315e; font-size:15px; line-height:1.65; margin:0 0 20px; white-space:pre-wrap; }
.br-review .hp-outreach-shared { color:#4267b2; padding:10px 12px; border-radius:10px; background:#f0f5ff; font-size:12px; font-weight:400; }
.br-review a { color:#1439c6; }
.br-review .hp-button { display:inline-flex; align-items:center; min-height:44px; padding:9px 14px; border:1px solid #1439c622; border-radius:10px; font-size:12px; font-weight:500; line-height:1.4; text-decoration:none; }
.br-review .hp-button-primary { background:#1439c6; color:#fff; border-color:#1439c6; }
.br-review .hp-button-primary:hover { background:#0d2b9b; }
.br-review .hp-muted,.br-review .hp-outreach-source { color:#66758d; font-size:11px; }
.br-review .hp-outreach-source { margin-top:18px; }
.br-review .br-footer { display:flex; flex-wrap:wrap; gap:8px; flex:none; padding:12px 24px; border-top:1px solid #1439c61a; background:#fafcff; }
.br-view-property { border:0; padding:7px 0; background:transparent; color:#1439c6; font-size:12px; text-align:left; }
.br-empty { color:#66758d; padding:18px 0; }
@media(max-width:768px) {
  #hospitalityMessageButton { position:fixed; left:auto; right:12px; top:76px; z-index:42; }
  .hp-message-status { position:fixed; left:12px; right:12px; top:121px; max-width:none; }
}
@media(max-width:600px) {
  .br-review { inset:70px 12px 14px; width:calc(100vw - 24px); height:calc(100dvh - 84px); border-radius:18px; }
  .br-header { padding:18px 62px 14px 20px; }
  .br-header h2 { font-size:25px; }
  .br-navigation { margin:0 20px; padding:8px 0; }
  .br-current { padding:14px 20px 5px; }
  .br-content { padding:0 20px 18px; }
  .br-review .br-footer { padding:10px 20px; }
}
@media(prefers-reduced-motion:no-preference) {
  .br-review[open] { animation:br-appear .18s ease-out; }
  @keyframes br-appear { from { opacity:0; transform:translateX(10px); } to { opacity:1; transform:translateX(0); } }
}

/* Comfortable controls without adding more panels. */
.br-review .br-view-property { min-height:44px; padding:8px 0; }
.br-review .br-footer { max-height:108px; overflow:auto; }
.br-review .hp-outreach-source summary { min-height:44px; padding:12px 0; cursor:pointer; }
.br-review .hp-outreach-recipient,.br-review .hp-outreach-subject { overflow-wrap:anywhere; }
@media(max-height:540px) {
  .br-review { inset:12px 12px 12px auto; width:min(680px,calc(100vw - 24px)); height:calc(100dvh - 24px); }
  .br-header { padding:10px 64px 8px 20px; }
  .br-header > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; }
  .br-eyebrow { display:none; }
  .br-header h2 { margin:0; font-size:20px; }
  .br-close { top:4px; right:10px; }
  .br-navigation { padding:5px 0; margin:0 20px; }
  .br-current { padding:10px 20px 4px; }
  .br-property-names { font-size:15px; }
  .br-review .br-footer { padding:4px 20px; }
  .br-review .hp-outreach-recipient { margin-top:8px; }
}
