.r93-intro { margin: 20px 0 0; padding: 30px; background: var(--r93-intro-bg, #1e3a5f); color: #fff; border-radius: 16px; }
.r93-kicker { margin: 0 0 12px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.r93-intro .r93-kicker { color: var(--r93-accent, #ecdaa7); }
.r93-intro h2 { color: #fff; font-size: clamp(25px, 3vw, 36px); line-height: 1.2; margin: 0 0 15px; }
.r93-lead { font-size: 17px; line-height: 1.65; margin: 0; color: var(--r93-intro-lead, #f1f4f8); }
.r93-facts { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 20px; margin: 25px 0; padding-top: 22px; border-top: 1px solid var(--r93-intro-border, #677e9b); }
.r93-facts strong, .r93-facts span { display: block; }
.r93-facts strong { font-size: 20px; line-height: 1.3; }
.r93-facts span { color: var(--r93-intro-muted, #e1e8f1); font-size: 12px; margin-top: 5px; }
.r93-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.r93-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 12px 18px; color: var(--r93-button-text, #132b49); background: var(--r93-button-bg, #e6cd8b); border: 1px solid var(--r93-button-bg, #e6cd8b); border-radius: 8px; font: inherit; font-size: 14px; font-weight: 600; text-align: center; text-decoration: none; cursor: pointer; line-height: 1.4; }
.r93-button[hidden] { display: none; }
.r93-button:hover { background: var(--r93-button-hover, #f2dfa9); color: var(--r93-button-text, #132b49); }
.r93-button--outline { background: transparent; color: #fff; border-color: var(--r93-intro-border, #bac8da); }
.r93-button--light { background: var(--r93-light-bg, #fff); border-color: var(--r93-border, #b7c3d2); color: var(--r93-light-text, #132b49); }
.r93-button:focus-visible, .r93-table a:focus-visible, .r93-nav a:focus-visible { outline: 3px solid var(--r93-focus, #94721d); outline-offset: 4px; }
.r93-nav { display: flex; flex-wrap: wrap; gap: 10px 20px; padding: 20px 0; border-bottom: 1px solid var(--r93-border, #dce1e8); margin-bottom: 10px; }
.r93-nav a { font-size: 13px; color: var(--r93-text, #1e3a5f); text-underline-offset: 4px; }
.r93-copy { color: var(--r93-copy, #46556a); font-size: 14px; line-height: 1.8; margin: 12px 0; }
.r93-table-wrap { overflow-x: auto; margin-top: 20px; border: 1px solid var(--r93-border, #dce1e8); border-radius: 10px; }
.r93-table { width: 100%; border-collapse: collapse; font-size: 14px; text-align: left; color: var(--r93-text, #1e3a5f); }
.r93-table th, .r93-table td { padding: 17px 14px; vertical-align: middle; }
.r93-table thead { background: var(--r93-table-head, #eef2f7); }
.r93-table thead span { display: block; font-size: 11px; font-weight: 400; margin-top: 5px; color: var(--r93-copy, #46556a); }
.r93-table tbody tr + tr { border-top: 1px solid var(--r93-border, #e1e6ed); }
.r93-table td a { color: var(--r93-text, #1e3a5f); font-weight: 600; white-space: nowrap; text-underline-offset: 4px; }
.r93-table tbody th { white-space: nowrap; }
.r93-note, .r93-muted { color: var(--r93-muted, #536176); font-size: 12px; line-height: 1.7; margin: 14px 0; }
.r93-whole { display: flex; justify-content: space-between; gap: 20px; background: var(--r93-whole-bg, #f3efe4); border-radius: 12px; padding: 24px; margin-top: 25px; color: var(--r93-text, #1e3a5f); }
.r93-whole h3 { margin: 0 0 10px; font-size: 22px; }
.r93-whole p { font-size: 14px; line-height: 1.6; }
.r93-whole strong { display: block; font-size: 23px; margin: 8px 0 15px; }
.r93-building-grid, .r93-spec-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.r93-building { border: 1px solid var(--r93-border, #dce1e8); border-radius: 12px; padding: 22px; }
.r93-building h3 { font-size: 27px; color: var(--r93-text, #1e3a5f); margin: 15px 0; }
.r93-building p, .r93-building a { font-size: 14px; line-height: 1.7; color: var(--r93-copy, #46556a); }
.r93-spec-grid { margin: 20px 0; }
.r93-spec-grid div { padding: 15px 0; border-bottom: 1px solid var(--r93-border, #dce1e8); }
.r93-spec-grid dt { color: var(--r93-muted, #536176); font-size: 13px; }
.r93-spec-grid dd { margin: 7px 0 0; font-size: 18px; font-weight: 600; color: var(--r93-text, #1e3a5f); }
.r93-map { height: 330px; margin-top: 22px; }
.r93-map .prop-map__load { width: 100%; height: 100%; min-height: 280px; }
.r93-faq details { border-bottom: 1px solid var(--r93-border, #dce1e8); padding: 17px 0; }
.r93-faq summary { font-size: 15px; font-weight: 600; color: var(--r93-text, #1e3a5f); cursor: pointer; line-height: 1.6; }
.r93-faq details p { font-size: 14px; color: var(--r93-copy, #46556a); line-height: 1.8; padding-top: 12px; }
.r93-contact { margin-top: 30px; padding: 28px; border: 1px solid var(--r93-border, #dce1e8); border-radius: 12px; }
.r93-contact h2 { font-size: 25px; margin: 0 0 15px; color: var(--r93-text, #1e3a5f); }
.r93-contact p { margin-bottom: 20px; line-height: 1.8; font-size: 14px; color: var(--r93-copy, #46556a); }
.r93-sidebar-cta { display: flex; margin-top: 20px; }
.r93-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
[id^="r93-"] { scroll-margin-top: 90px; }
@media (max-width: 600px) {
  .r93-intro { padding: 24px 18px; }
  .r93-facts { grid-template-columns: 1fr; gap: 14px; }
  .r93-facts div { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
  .r93-facts strong { font-size: 18px; }
  .r93-facts span { text-align: right; }
  .r93-table { font-size: 11px; }
  .r93-table th, .r93-table td { padding: 15px 7px; }
  .r93-table thead span { font-size: 10px; }
  .r93-whole { flex-direction: column; padding: 20px; }
  .r93-building-grid { grid-template-columns: 1fr; }
  .r93-spec-grid { gap: 8px 16px; }
  .r93-spec-grid dd { font-size: 16px; }
  .r93-contact { padding: 22px 18px; }
}

/* Vitrina inherits its native dark surfaces and blue accent. */
.r93-vitrina {
  --r93-intro-bg: var(--color-surface);
  --r93-accent: var(--color-blue);
  --r93-intro-lead: var(--color-text);
  --r93-intro-border: var(--color-separator);
  --r93-intro-muted: var(--color-text-secondary);
  --r93-button-bg: var(--color-blue);
  --r93-button-text: var(--color-bg);
  --r93-button-hover: #5aacff;
  --r93-light-bg: var(--color-surface-elevated);
  --r93-light-text: var(--color-text);
  --r93-border: var(--color-separator);
  --r93-focus: var(--color-blue);
  --r93-text: var(--color-text);
  --r93-copy: var(--color-text-secondary);
  --r93-muted: var(--color-text-secondary);
  --r93-table-head: var(--color-surface-elevated);
  --r93-whole-bg: var(--color-surface);
}
.r93-vitrina .r93-intro { border: 1px solid var(--color-separator); }
.r93-vitrina .r93-nav a,
.r93-vitrina .r93-table td a,
.r93-vitrina .r93-building a { color: var(--color-blue); }
.r93-vitrina .r93-button--light:hover { color: var(--color-bg); }
