:root {
  --roya-sand: #f5f2ed;
  --roya-card: #fffaf4;
  --roya-white: #ffffff;
  --roya-ink: #1a1a1a;
  --roya-muted: #5c5c5c;
  --roya-gold: #c9a96e;
  --roya-navy: #131b2b;
  --roya-line: rgba(19, 27, 43, 0.14);
  --roya-line-strong: rgba(201, 169, 110, 0.46);
  --roya-radius: 3px;
  --roya-radius-tight: 2px;
  --roya-serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --roya-sans: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html {
  background: var(--roya-sand);
}

body {
  font-family: var(--roya-sans);
  letter-spacing: 0;
}

h1,
h2,
h3,
h4,
.section-title,
.sectionTitle,
.project-title,
.hero-left h2,
.hero-wordmark,
.card-title,
.scen-card .scen-roi,
.metric-big,
.contact-title {
  font-family: var(--roya-serif);
}

a,
button,
input,
select,
textarea {
  font-family: var(--roya-sans);
}

:focus-visible {
  outline: 2px solid var(--roya-gold);
  outline-offset: 3px;
}

.site-header,
.nav {
  border-bottom: 1px solid var(--roya-line-strong);
}

.site-logo,
.nav-logo {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.site-header-right,
.nav {
  gap: 20px;
}

.roya-page-nav {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  border: 1px solid var(--roya-line);
  border-radius: var(--roya-radius-tight);
  padding: 3px;
  background: rgba(255, 255, 255, 0.5);
}

.roya-page-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  border-radius: var(--roya-radius-tight);
  padding: 6px 10px;
  color: var(--roya-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.1;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}

.roya-page-nav a:hover,
.roya-page-nav a[aria-current="page"] {
  background: var(--roya-navy);
  color: #fff;
}

.roya-page-nav-dark,
.cover .roya-page-nav {
  border-color: rgba(232, 226, 214, 0.22);
  background: rgba(19, 27, 43, 0.28);
}

.roya-page-nav-dark a,
.cover .roya-page-nav a {
  color: rgba(255, 255, 255, 0.68);
}

.roya-page-nav-dark a:hover,
.roya-page-nav-dark a[aria-current="page"],
.cover .roya-page-nav a:hover,
.cover .roya-page-nav a[aria-current="page"] {
  background: var(--roya-gold);
  color: var(--roya-navy);
}

.lang-switch,
.lang-toggle,
.languageSwitch {
  border-radius: var(--roya-radius-tight) !important;
}

.lang-switch a,
.lang-toggle button,
.languageSwitch button,
.theme-toggle,
.sync-pill,
.sync-refresh-btn,
.floor-tab,
.gallery-tab,
.cta-link,
.hero-cta-card,
.contact-cta,
.render-tab,
.btn {
  border-radius: var(--roya-radius-tight) !important;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.lang-switch a.active,
.lang-toggle button.active,
.languageSwitch .languageActive,
.floor-tab.active,
.gallery-tab.active,
.render-tab.active {
  color: var(--roya-navy);
}

.cta-link,
.sync-refresh-btn,
.theme-toggle,
.sync-pill,
.floor-tab,
.gallery-tab {
  box-shadow: none;
}

.cta-link:hover,
.sync-refresh-btn:hover,
.theme-toggle:hover,
.sync-pill:hover,
.floor-tab:hover,
.gallery-tab:hover {
  transform: translateY(-1px);
}

.count-pill,
.status-pill,
.sold-pill,
.available-pill {
  border-radius: var(--roya-radius-tight) !important;
}

.hero-left .subtitle,
.section-eyebrow,
.site-meta,
.eyebrow,
.param-label,
.timeline-label,
.contact-eyebrow,
.sync-pill-text {
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.card,
.panel-grid,
.table-wrap,
.scen-card,
.fin-card,
.gallery-tab,
.floor-tab,
.param-card {
  border-radius: var(--roya-radius) !important;
}

@media (max-width: 900px) {
  .site-header,
  .nav {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .site-header-right {
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .roya-page-nav {
    width: 100%;
    flex-wrap: wrap;
    overflow: visible;
  }

  .roya-page-nav a {
    flex: 1 1 calc(50% - 4px);
  }
}
