/* Option 02: nocturnal editorial architecture, shared data and property grid. */
.site-variant-2 {
  --ink: #071b23;
  --muted: #9aa8ad;
  --paper: #061820;
  --white: #ffffff;
  --line: rgba(255, 255, 255, .14);
  --gold: #d8b668;
  --gold-dark: #c49a3c;
  --brown: #183641;
  --green: #276452;
  --shadow: 0 28px 70px rgba(0, 0, 0, .28);
  color: #f3f4f1;
  background: #061820;
}

.site-variant-2 * { letter-spacing: 0; }
.site-variant-2 h1,
.site-variant-2 h2 { line-height: .98; }
.site-variant-2 .eyebrow { color: var(--gold); }
.site-variant-2 .brand-logo { filter: brightness(0) invert(1); }

.site-variant-2 .site-header,
.site-variant-2.home-page .site-header,
.site-variant-2 .site-header.scrolled,
.site-variant-2.admin-page .site-header,
.site-variant-2.inner-page .site-header {
  min-height: 90px;
  padding: 0 4vw;
  color: #ffffff;
  background: rgba(3, 16, 22, .94);
  border-bottom: 1px solid rgba(255, 255, 255, .13);
  backdrop-filter: blur(18px);
}
.site-variant-2 .brand-logo-frame { width: 212px; }
.site-variant-2 .main-nav { gap: 34px; font-size: .82rem; }
.site-variant-2 .main-nav > a:not(.nav-cta)::after { border-color: var(--gold); }
.site-variant-2 .nav-cta {
  color: #071b23;
  background: var(--gold);
  border-color: var(--gold);
}
.site-variant-2 .nav-cta .whatsapp-mark { color: #167d4f; }

.site-variant-2 .button { min-height: 52px; border-radius: 0; }
.site-variant-2 .button-dark { color: #071b23; background: var(--gold); }
.site-variant-2 .button-dark:hover { background: #e6c982; }
.site-variant-2 .button-gold { color: #071b23; background: var(--gold); }
.site-variant-2 .button-ghost { color: #f3f4f1; border-color: rgba(255,255,255,.26); }
.site-variant-2 .text-link { color: #f4f4ef; border-color: var(--gold); }
.site-variant-2 .back-link { color: rgba(255,255,255,.66); }
.site-variant-2 .icon-button { border-color: rgba(255,255,255,.24); border-radius: 0; }

.site-variant-2 .hero {
  align-items: end;
  min-height: min(760px, calc(100svh - 24px));
  height: calc(100svh - 24px);
  max-height: 980px;
  padding: 0 0 74px;
}
.site-variant-2 .hero-media { object-position: center 48%; filter: saturate(.7) contrast(1.08); }
.site-variant-2 .hero-overlay {
  background: linear-gradient(180deg, rgba(1, 12, 17, .3) 0%, rgba(1, 12, 17, .1) 34%, rgba(1, 12, 17, .95) 100%);
}
.site-variant-2 .hero-content {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(310px, .55fr);
  grid-template-rows: auto auto auto;
  column-gap: 7vw;
  align-items: end;
  width: auto;
  margin: 0 6vw;
  padding: 0;
}
.site-variant-2 .hero-content .eyebrow { grid-column: 1; grid-row: 1; color: var(--gold); }
.site-variant-2 .hero-content h1 {
  grid-column: 1;
  grid-row: 2 / 4;
  max-width: 900px;
  margin: 0;
  font-size: 6rem;
  line-height: .88;
}
.site-variant-2 .hero-content h1 em { color: #ffffff; font-style: italic; }
.site-variant-2 .hero-copy {
  grid-column: 2;
  grid-row: 2;
  max-width: 430px;
  margin-bottom: 18px;
  padding-left: 22px;
  color: rgba(255, 255, 255, .75);
  border-left: 1px solid var(--gold);
}
.site-variant-2 .hero-actions { grid-column: 2; grid-row: 3; margin-top: 0; }
.site-variant-2 .hero-signature {
  top: 132px;
  right: 5vw;
  bottom: auto;
  padding: 14px 18px;
  color: #ffffff;
  background: rgba(3, 16, 22, .76);
  border: 1px solid rgba(255, 255, 255, .2);
}

.site-variant-2 .property-section {
  padding: 120px 6vw 135px;
  background: #071b23;
}
.site-variant-2 .section-heading {
  display: grid;
  grid-template-columns: 1.5fr .5fr;
  align-items: end;
  margin-bottom: 54px;
}
.site-variant-2 .section-heading h2 { max-width: 820px; color: #f7f6f1; font-size: 4.4rem; }
.site-variant-2 .section-heading > p {
  padding-left: 24px;
  color: rgba(255,255,255,.6);
  border-left: 1px solid var(--gold);
}
.site-variant-2 .filters {
  grid-template-columns: repeat(4, minmax(120px, 1fr)) auto auto;
  margin-bottom: 54px;
  padding: 8px;
  background: #0d2832;
  border: 1px solid rgba(255,255,255,.14);
  border-top: 3px solid var(--gold);
  box-shadow: 0 18px 42px rgba(0,0,0,.16);
}
.site-variant-2 .filters label { border-color: rgba(255,255,255,.13); }
.site-variant-2 .filters label span { color: rgba(255,255,255,.5); }
.site-variant-2 .filters select {
  color: #ffffff;
  background-color: #0d2832;
}
.site-variant-2 .filters select option { color: #ffffff; background: #0d2832; }
.site-variant-2 .clear-filters { color: rgba(255,255,255,.7); }

/* The property structure is intentionally identical to Option 01. */
.site-variant-2 .property-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.site-variant-2 .property-card,
.site-variant-2 .property-card:nth-child(even) {
  display: block;
  min-height: 0;
  background: #0d2832;
  border: 1px solid rgba(255,255,255,.13);
  box-shadow: 0 20px 48px rgba(0,0,0,.14);
}
.site-variant-2 .property-card:nth-child(even) .property-image { order: initial; }
.site-variant-2 .property-image {
  height: auto;
  min-height: 0;
  aspect-ratio: 4 / 3;
}
.site-variant-2 .property-purpose { background: rgba(3,16,22,.9); }
.site-variant-2 .property-featured { color: #071b23; }
.site-variant-2 .property-info { display: block; padding: 25px; }
.site-variant-2 .property-info > p { color: var(--gold); }
.site-variant-2 .property-info h3 {
  min-height: 58px;
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 1.45rem;
}
.site-variant-2 .property-stats {
  gap: 15px;
  margin-bottom: 20px;
  color: rgba(255,255,255,.58);
  border-color: rgba(255,255,255,.13);
}
.site-variant-2 .empty-state { border-color: rgba(255,255,255,.24); }

.site-variant-2 .about-section {
  grid-template-columns: 1.05fr .95fr;
  min-height: 760px;
  color: #ffffff;
  background: #0b2731;
}
.site-variant-2 .about-image { order: 2; min-height: 760px; }
.site-variant-2 .about-image img { filter: saturate(.58) contrast(1.08); }
.site-variant-2 .about-content { order: 1; padding: 9vw 7vw; }
.site-variant-2 .about-content h2 { font-size: 4.25rem; }
.site-variant-2 .about-content > p { color: rgba(255,255,255,.62); }
.site-variant-2 .about-content blockquote { border-color: var(--gold); }
.site-variant-2 .broker-signature span { color: rgba(255,255,255,.52); }

.site-variant-2 .owner-cta {
  padding: 105px 7vw;
  color: #ffffff;
  background: #04141b;
  border-top: 1px solid rgba(255,255,255,.1);
}
.site-variant-2 .owner-cta > div:last-child p { color: rgba(255,255,255,.6); }

.site-variant-2 .detail-hero {
  padding: 150px 4vw 0;
  color: #ffffff;
  background: #04151c;
}
.site-variant-2 .detail-hero .back-link,
.site-variant-2 .detail-heading p:last-child,
.site-variant-2 .detail-price span { color: rgba(255,255,255,.6); }
.site-variant-2 .detail-heading { margin: 56px 0 42px; }
.site-variant-2 .detail-heading h1 { max-width: 1000px; font-size: 5rem; }
.site-variant-2 .detail-price strong { color: var(--gold); font-size: 2.3rem; }
.site-variant-2 .detail-gallery { margin: 0 -4vw; max-height: 720px; }
.site-variant-2 .gallery-all { border-radius: 0; }
.site-variant-2 .gallery-dialog { background: #020c10; }
.site-variant-2 .detail-body {
  padding: 82px 7vw 120px;
  color: #f1f3ef;
  background: #071b23;
}
.site-variant-2 .detail-stats {
  background: #0d2832;
  border: 1px solid rgba(255,255,255,.13);
}
.site-variant-2 .detail-stats > span { padding: 25px 18px; border-color: rgba(255,255,255,.13); }
.site-variant-2 .detail-stats small { color: rgba(255,255,255,.5); }
.site-variant-2 .detail-copy { padding-top: 82px; }
.site-variant-2 .detail-copy > p:last-child { color: rgba(255,255,255,.67); }
.site-variant-2 .schedule-panel {
  padding: 38px;
  color: #ffffff;
  background: #0d2832;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 28px 64px rgba(0,0,0,.2);
}
.site-variant-2 .schedule-panel > p,
.site-variant-2 .schedule-panel label { color: rgba(255,255,255,.66); }

.site-variant-2 .form-page {
  grid-template-columns: .9fr 1.1fr;
  gap: 32px;
  min-height: 100vh;
  padding: 150px 5vw 100px;
  background: #061820;
}
.site-variant-2 .form-intro {
  top: 130px;
  padding: 58px 48px;
  color: #ffffff;
  background: #0b2731;
  border-top: 3px solid var(--gold);
}
.site-variant-2 .form-intro h1 { font-size: 4.7rem; }
.site-variant-2 .form-intro > p { color: rgba(255,255,255,.62); }
.site-variant-2 .form-benefits svg { color: var(--gold); }
.site-variant-2 .owner-form,
.site-variant-2 .property-form {
  padding: 50px;
  color: #f4f5f1;
  background: #0c252e;
  border: 1px solid rgba(255,255,255,.13);
  border-top: 3px solid var(--gold);
  box-shadow: 0 28px 65px rgba(0,0,0,.18);
}
.site-variant-2 .owner-form label,
.site-variant-2 .property-form label { color: rgba(255,255,255,.68); }
.site-variant-2 .form-section,
.site-variant-2 .property-form fieldset { border-color: rgba(255,255,255,.13); }
.site-variant-2 .form-section p,
.site-variant-2 .property-form label small { color: rgba(255,255,255,.52); }
.site-variant-2 input,
.site-variant-2 select,
.site-variant-2 textarea {
  color: #13242a;
  background: #ffffff;
  border-color: #d5dcda;
}
.site-variant-2 input:focus,
.site-variant-2 select:focus,
.site-variant-2 textarea:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(216,182,104,.16);
}
.site-variant-2 .upload-zone {
  color: rgba(255,255,255,.7);
  background: #102f39;
  border-color: rgba(255,255,255,.25);
}
.site-variant-2 .upload-zone:hover { background: #143742; }
.site-variant-2 .owner-photo-item,
.site-variant-2 .image-manager-item { color: #ffffff; background: #102f39; border-color: rgba(255,255,255,.16); }
.site-variant-2 .cover-choice,
.site-variant-2 .image-controls label { color: #ffffff; }

.site-variant-2.admin-page { color: #f4f5f1; background: #061820; }
.site-variant-2 .admin-shell,
.site-variant-2 .admin-form-shell { padding-top: 150px; }
.site-variant-2 .admin-metrics,
.site-variant-2 .table-wrap,
.site-variant-2 .lead-card {
  color: #f4f5f1;
  background: #0c252e;
  border-color: rgba(255,255,255,.13);
}
.site-variant-2 .admin-metrics div,
.site-variant-2 th,
.site-variant-2 td { border-color: rgba(255,255,255,.12); }
.site-variant-2 .admin-metrics small,
.site-variant-2 th,
.site-variant-2 .admin-property small,
.site-variant-2 .lead-head small,
.site-variant-2 .lead-card > p,
.site-variant-2 .lead-attachments-title,
.site-variant-2 .admin-form-heading > p { color: rgba(255,255,255,.52); }
.site-variant-2 .admin-tabs { border-color: rgba(255,255,255,.15); }
.site-variant-2 .admin-tabs button { color: rgba(255,255,255,.55); }
.site-variant-2 .admin-tabs button.active { color: #ffffff; border-color: var(--gold); }
.site-variant-2 .admin-tabs span { color: #071b23; background: var(--gold); }
.site-variant-2 .lead-card blockquote { background: #071b23; }
.site-variant-2 .lead-attachments { border-color: rgba(255,255,255,.13); }
.site-variant-2 .table-actions .icon-button { color: #ffffff; }

.site-variant-2 .login-shell { background: #031117; }
.site-variant-2 .login-card {
  padding: 52px;
  color: #ffffff;
  background: #0c252e;
  border: 1px solid rgba(255,255,255,.13);
  border-top: 3px solid var(--gold);
  box-shadow: 0 32px 78px rgba(0,0,0,.32);
}
.site-variant-2 .login-card > p:not(.eyebrow),
.site-variant-2 .login-card label { color: rgba(255,255,255,.62); }
.site-variant-2 .login-brand-logo { width: 252px; }

.site-variant-2 .site-footer { color: rgba(255,255,255,.7); background: #020d12; }
.site-variant-2 .footer-main { padding-top: 82px; }
.site-variant-2 .brand-footer .brand-logo-frame { width: 272px; }
.site-variant-2 .footer-label { color: var(--gold); }

@media (max-width: 1100px) {
  .site-variant-2 .hero-content {
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    column-gap: 4vw;
  }
  .site-variant-2 .hero-content h1 { font-size: 5rem; }
}

@media (max-width: 1000px) {
  .site-variant-2 .site-header,
  .site-variant-2.home-page .site-header,
  .site-variant-2 .site-header.scrolled,
  .site-variant-2.admin-page .site-header,
  .site-variant-2.inner-page .site-header { min-height: 76px; }
  .site-variant-2 .main-nav { top: 76px; color: #ffffff; background: #061820; }
  .site-variant-2 .hero { min-height: min(760px, calc(100svh - 24px)); }
  .site-variant-2 .hero-content { grid-template-columns: 1fr; }
  .site-variant-2 .hero-content h1 { grid-row: 2; }
  .site-variant-2 .hero-copy {
    grid-column: 1;
    grid-row: 3;
    max-width: 560px;
    margin: 28px 0 0;
  }
  .site-variant-2 .hero-actions { grid-column: 1; grid-row: 4; margin-top: 22px; }
  .site-variant-2 .hero-signature { display: none; }
  .site-variant-2 .filters { grid-template-columns: repeat(2, 1fr); }
  .site-variant-2 .property-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-variant-2 .about-section { grid-template-columns: 1fr; }
  .site-variant-2 .about-image { order: 1; min-height: 560px; }
  .site-variant-2 .about-content { order: 2; }
  .site-variant-2 .form-page { grid-template-columns: 1fr; gap: 32px; }
  .site-variant-2 .form-intro { position: static; }
}

@media (max-width: 700px) {
  .site-variant-2 .site-header,
  .site-variant-2.home-page .site-header,
  .site-variant-2 .site-header.scrolled,
  .site-variant-2.admin-page .site-header,
  .site-variant-2.inner-page .site-header { min-height: 70px; padding: 0 16px; }
  .site-variant-2 .brand-logo-frame { width: 164px; }
  .site-variant-2 .main-nav { top: 70px; }
  .site-variant-2 .hero {
    min-height: min(680px, calc(100svh - 18px));
    height: calc(100svh - 18px);
    padding-bottom: 34px;
  }
  .site-variant-2 .hero-content { width: auto; margin: 0 20px; }
  .site-variant-2 .hero-content h1 { font-size: 3.35rem; line-height: .92; }
  .site-variant-2 .hero-copy { margin-top: 22px; padding-left: 16px; font-size: .9rem; }
  .site-variant-2 .hero-actions { width: 100%; }
  .site-variant-2 .hero-actions .button { width: 100%; }
  .site-variant-2 .property-section { padding: 82px 18px 90px; }
  .site-variant-2 .section-heading { grid-template-columns: 1fr; gap: 22px; }
  .site-variant-2 .section-heading h2 { font-size: 3rem; }
  .site-variant-2 .section-heading > p { padding-left: 16px; }
  .site-variant-2 .filters { grid-template-columns: 1fr; }
  .site-variant-2 .filters .button { min-height: 54px; }
  .site-variant-2 .property-grid { grid-template-columns: 1fr; }
  .site-variant-2 .property-info { padding: 25px; }
  .site-variant-2 .property-info h3 { font-size: 1.45rem; }
  .site-variant-2 .about-image { min-height: 460px; }
  .site-variant-2 .about-content { padding: 72px 24px; }
  .site-variant-2 .about-content h2 { font-size: 3rem; }
  .site-variant-2 .owner-cta { padding: 72px 24px; }
  .site-variant-2 .detail-hero { padding: 112px 18px 0; }
  .site-variant-2 .detail-heading h1 { font-size: 3rem; }
  .site-variant-2 .detail-gallery { margin: 0 -18px; }
  .site-variant-2 .detail-body { padding: 50px 18px 82px; }
  .site-variant-2 .form-page { padding: 106px 18px 72px; }
  .site-variant-2 .form-intro { padding: 42px 26px; }
  .site-variant-2 .form-intro h1 { font-size: 3.1rem; }
  .site-variant-2 .owner-form,
  .site-variant-2 .property-form { padding: 28px 20px; }
  .site-variant-2 .login-card { padding: 36px 24px; }
  .site-variant-2 .login-brand-logo { width: 220px; }
  .site-variant-2 .brand-footer .brand-logo-frame { width: 236px; }
}
.site-variant-2 .property-closed {
  color: #061820;
  background: var(--gold);
  border-top: 1px solid rgba(255, 255, 255, .45);
  border-bottom: 1px solid rgba(6, 24, 32, .28);
}
.site-variant-2 .property-card.is-closed {
  border-color: rgba(216, 182, 104, .34);
}
.site-variant-2 .property-card.is-closed .property-image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border: 1px solid rgba(216, 182, 104, .35);
}
.site-variant-2 .detail-closed {
  color: #061820;
  background: var(--gold);
}
.site-variant-2 .closed-panel {
  border-top: 3px solid var(--gold);
}
.site-variant-2 .status.deal-open {
  color: #b9e1d1;
  background: rgba(39, 100, 82, .34);
}
.site-variant-2 .status.deal-closed {
  color: #061820;
  background: var(--gold);
}
.site-variant-2 .admin-views svg { color: var(--gold); }