/* VJ Reality accessibility and visual consistency update */
:root {
  --vj-navy: #071a36;
  --vj-gold: #a97700;
}

/* Remove the unnecessary, low-contrast scroll instruction. */
.scroll-cue {
  display: none !important;
}

/* Make small navigation and language controls easier to read. */
.site-nav,
.site-nav a {
  font-size: 15px !important;
}

.language-switcher a {
  font-size: 13px !important;
  min-width: 32px;
  min-height: 32px;
}

/* Small uppercase labels used throughout the site. */
.eyebrow,
.section-kicker,
.properties-kicker {
  font-size: 14px !important;
  line-height: 1.45 !important;
  letter-spacing: 0.18em !important;
}

/* The VJ Reality label above Veronika's portrait. */
.about-grid + *,
.section-kicker:not(.light) {
  text-rendering: optimizeLegibility;
}

/* Buttons and calls to action. */
.button,
.property-filter-buttons button,
.property-card-link span,
.property-detail-nav a {
  font-size: 14px !important;
  line-height: 1.35 !important;
}

/* Hero fact card and service/process copy. */
.hero-card-kicker,
.hero-card li {
  font-size: 13px !important;
}

.hero-card-area {
  font-size: 14px !important;
}

.service-card p,
.process-card p,
.cost-card p,
.area-copy p,
.intro-copy p,
.contact-copy p {
  font-size: 17px !important;
  line-height: 1.65 !important;
}

/* Property catalogue controls and cards. */
.properties-status span,
.property-filter-group legend,
.property-filter-select > span {
  font-size: 13px !important;
}

.property-filter-select select {
  font-size: 16px !important;
  min-height: 48px;
}

.property-card-location {
  font-size: 13px !important;
}

.property-card-facts,
.property-card-facts span {
  font-size: 14px !important;
}

/* Keep all three fee cards visually consistent. */
.cost-card,
.cost-card.vj-cost-navy {
  border-color: var(--vj-navy) !important;
}

.cost-card > span,
.cost-card.vj-cost-navy > span {
  background: var(--vj-navy) !important;
  color: #fff !important;
}

.cost-card > span {
  font-size: 13px !important;
  line-height: 1.3 !important;
}

/* Forms, contact information and footer. */
.contact-form label > span,
.contact-list small,
.privacy-details,
.privacy-details p,
.privacy-details summary {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.site-footer,
.site-footer a,
.site-footer span,
.site-footer p {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

@media (max-width: 760px) {
  .eyebrow,
  .section-kicker,
  .properties-kicker {
    font-size: 13px !important;
    letter-spacing: 0.14em !important;
  }

  .service-card p,
  .process-card p,
  .cost-card p,
  .area-copy p,
  .intro-copy p,
  .contact-copy p {
    font-size: 16px !important;
  }
}
