:root {
  --ink: #10110f;
  --ink-deep: #0b0c0b;
  --ink-soft: #191a17;
  --ivory: #eee8dc;
  --ivory-bright: #f8f3e9;
  --stone: #dcd4c6;
  --gold: #c5a35e;
  --gold-bright: #e3c576;
  --gold-glow: rgba(222, 184, 93, 0.22);
  --dark-line: rgba(242, 234, 220, 0.16);
  --light-line: rgba(21, 21, 18, 0.17);
  --page-pad: clamp(22px, 6.4vw, 112px);
  --hero-shift: 0px;
  --hero-opacity: 1;
  --hero-scale: 1.035;
  --font-display: "Iowan Old Style", "Baskerville", "Times New Roman", serif;
  --font-sans: "Helvetica Neue", "Avenir Next", Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--ink);
}

body {
  margin: 0;
  overflow-x: hidden;
  color: var(--ivory);
  background: var(--ink);
  font-family: var(--font-sans);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

::selection {
  color: var(--ink);
  background: var(--gold-bright);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button {
  font: inherit;
}

img,
video {
  display: block;
  max-width: 100%;
}

section,
footer {
  scroll-margin-top: 78px;
}

[data-reveal] {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.78s ease, transform 0.9s cubic-bezier(.22, 1, .36, 1);
}

[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Keeps all content readable if JavaScript is disabled while editing. */
.no-js [data-reveal] {
  opacity: 1;
  transform: none;
}

.arrow {
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 auto;
  font-size: 14px;
}

.arrow span {
  display: block;
  transition: transform 0.45s cubic-bezier(.22, 1, .36, 1);
}

a:hover .arrow span {
  transform: translate(3px, -1px);
}

.site-nav {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  padding: 14px 20px;
  pointer-events: none;
}

.nav-shell {
  position: relative;
  width: 100%;
  max-width: 1560px;
  height: 76px;
  margin: 0 auto;
  padding: 0 18px 0 20px;
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto minmax(146px, 1fr);
  align-items: center;
  border: 1px solid rgba(225, 188, 98, 0.42);
  color: var(--ivory-bright);
  background: rgba(12, 13, 12, 0.08);
  box-shadow: 0 0 22px rgba(226, 185, 88, 0.08), inset 0 0 18px rgba(226, 185, 88, 0.025);
  opacity: 0;
  transform: translateY(-12px);
  pointer-events: auto;
  transition:
    width 0.55s cubic-bezier(.22, 1, .36, 1),
    height 0.55s cubic-bezier(.22, 1, .36, 1),
    padding 0.55s cubic-bezier(.22, 1, .36, 1),
    background 0.4s ease,
    border-color 0.4s ease,
    box-shadow 0.4s ease,
    opacity 0.65s ease,
    transform 0.65s cubic-bezier(.22, 1, .36, 1);
}

.nav-shell::before,
.nav-shell::after {
  content: "";
  position: absolute;
  width: 54px;
  height: 1px;
  background: var(--gold-bright);
  box-shadow: 0 0 10px rgba(228, 194, 111, 0.7);
  pointer-events: none;
}

.nav-shell::before {
  top: -1px;
  left: -1px;
}

.nav-shell::after {
  right: -1px;
  bottom: -1px;
}

.is-ready .nav-shell {
  opacity: 1;
  transform: translateY(0);
}

.site-nav[data-scrolled="true"] .nav-shell {
  width: min(1260px, calc(100vw - 44px));
  height: 64px;
  padding: 0 13px 0 16px;
  border-color: rgba(220, 181, 90, 0.38);
  background: rgba(13, 14, 13, 0.84);
  box-shadow: 0 10px 34px rgba(0, 0, 0, 0.18), 0 0 20px rgba(212, 173, 79, 0.07);
  backdrop-filter: blur(18px) saturate(115%);
}

.brand {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 13px;
  line-height: 1;
}

.brand__monogram {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid rgba(225, 188, 98, 0.65);
  color: #efd898;
  box-shadow: 0 0 14px rgba(225, 184, 87, 0.13), inset 0 0 10px rgba(225, 184, 87, 0.05);
  font-family: var(--font-display);
  font-size: 13px;
  letter-spacing: 0.08em;
  transition: width 0.4s ease, height 0.4s ease;
}

.brand__copy {
  display: flex;
  flex-direction: column;
}

.brand__name {
  font-family: var(--font-display);
  font-size: 28px;
  letter-spacing: 0.012em;
  white-space: nowrap;
  transition: font-size 0.4s ease;
}

.brand__descriptor {
  margin-top: 7px;
  color: rgba(248, 243, 233, 0.74);
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  white-space: nowrap;
}

.site-nav[data-scrolled="true"] .brand__monogram {
  width: 34px;
  height: 34px;
}

.site-nav[data-scrolled="true"] .brand__name {
  font-size: 24px;
}

.site-nav[data-scrolled="true"] .brand__descriptor {
  margin-top: 4px;
  font-size: 7.25px;
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(17px, 1.7vw, 28px);
}

.nav-links a {
  position: relative;
  padding: 8px 0;
  color: rgba(248, 243, 233, 0.9);
  font-size: clamp(10.5px, 0.68vw, 12px);
  font-weight: 760;
  letter-spacing: 0.085em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color 0.28s ease;
}

.nav-links a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 1px;
  background: var(--gold-bright);
  box-shadow: 0 0 7px rgba(228, 194, 111, 0.55);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.38s cubic-bezier(.22, 1, .36, 1);
}

.nav-links a:hover {
  color: var(--ivory-bright);
}

.nav-links a:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

.nav-cta {
  justify-self: end;
  min-width: 138px;
  height: 44px;
  padding: 0 13px 0 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgba(225, 188, 98, 0.72);
  color: var(--ivory-bright);
  box-shadow: 0 0 16px rgba(223, 182, 84, 0.1), inset 0 0 11px rgba(223, 182, 84, 0.035);
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  transition: color 0.35s ease, background 0.35s ease, box-shadow 0.35s ease;
}

.nav-cta:hover {
  color: var(--ink);
  background: var(--gold-bright);
  box-shadow: 0 0 22px rgba(226, 186, 91, 0.23);
}

.menu-toggle {
  display: none;
}

.hero {
  position: relative;
  height: 82svh;
  min-height: 620px;
  max-height: 900px;
  overflow: hidden;
  isolation: isolate;
  background: var(--ink-deep);
}

.hero__media,
.hero__shade,
.grain {
  position: absolute;
  inset: 0;
}

.hero__media {
  transform: scale(var(--hero-scale));
  will-change: transform;
}

.hero__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 54%;
}

.hero__shade {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(6, 7, 6, 0.78) 0%, rgba(6, 7, 6, 0.45) 43%, rgba(6, 7, 6, 0.13) 76%),
    linear-gradient(180deg, rgba(6, 7, 6, 0.3) 0%, transparent 43%, rgba(6, 7, 6, 0.48) 100%);
}

.grain {
  z-index: 2;
  opacity: 0.13;
  mix-blend-mode: soft-light;
  pointer-events: none;
  background-image:
    repeating-radial-gradient(circle at 18% 32%, transparent 0, rgba(255, 255, 255, 0.17) 0.5px, transparent 0.9px, transparent 5px),
    repeating-radial-gradient(circle at 72% 65%, transparent 0, rgba(0, 0, 0, 0.22) 0.5px, transparent 1px, transparent 6px);
  background-size: 8px 8px, 10px 10px;
}

.hero__frame {
  position: absolute;
  z-index: 3;
  top: 104px;
  right: 22px;
  bottom: 22px;
  left: 22px;
  border: 1px solid rgba(222, 182, 87, 0.21);
  pointer-events: none;
}

.hero__frame i {
  position: absolute;
  width: 64px;
  height: 1px;
  background: var(--gold-bright);
  box-shadow: 0 0 10px rgba(228, 194, 111, 0.62);
}

.hero__frame i:first-child {
  top: -1px;
  left: -1px;
}

.hero__frame i:last-child {
  right: -1px;
  bottom: -1px;
}

.hero__content {
  position: absolute;
  z-index: 4;
  left: var(--page-pad);
  bottom: clamp(56px, 7vh, 72px);
  width: min(1120px, calc(100vw - 2 * var(--page-pad)));
  opacity: var(--hero-opacity);
  transform: translateY(var(--hero-shift));
  will-change: transform, opacity;
}

.hero__eyebrow {
  margin: 0 0 17px;
  display: flex;
  align-items: center;
  gap: 13px;
  color: rgba(248, 243, 233, 0.82);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.27em;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(10px);
}

.hero__eyebrow::before {
  content: "";
  width: 34px;
  height: 1px;
  background: var(--gold-bright);
  box-shadow: 0 0 7px rgba(228, 194, 111, 0.48);
}

.hero__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(54px, 5.65vw, 88px);
  font-weight: 400;
  line-height: 0.88;
  letter-spacing: -0.052em;
  text-transform: uppercase;
}

.hero-line {
  display: block;
  overflow: hidden;
  padding: 0 0.05em 0.14em 0;
}

.hero-line > span {
  display: block;
  transform: translateY(112%) rotate(1deg);
  transform-origin: left bottom;
}

.hero-line--accent {
  margin-top: 0.08em;
  color: var(--ivory-bright);
}

.hero-line--accent > span {
  font-style: italic;
  letter-spacing: -0.064em;
  text-transform: none;
}

.hero__lower {
  width: min(980px, 100%);
  margin-top: 18px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 48px;
  opacity: 0;
  transform: translateY(16px);
}

.hero__copy {
  width: min(450px, 100%);
  margin: 0;
  color: rgba(248, 243, 233, 0.9);
  font-size: clamp(13px, 0.88vw, 15px);
  line-height: 1.58;
}

.hero__actions {
  display: flex;
  align-items: center;
  gap: 24px;
}

.text-button {
  min-height: 42px;
  padding: 0 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid rgba(248, 243, 233, 0.48);
  font-size: 8px;
  font-weight: 650;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color 0.3s ease, border-color 0.3s ease, padding 0.35s cubic-bezier(.22, 1, .36, 1);
}

.text-button--light {
  border-color: var(--gold-bright);
}

.text-button--quiet {
  color: rgba(248, 243, 233, 0.68);
}

.text-button:hover {
  padding-left: 6px;
  color: #f0d594;
  border-color: var(--gold-bright);
}

.is-ready .hero__eyebrow {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease 0.25s, transform 0.75s cubic-bezier(.22, 1, .36, 1) 0.25s;
}

.is-ready .hero-line:nth-child(1) > span {
  transform: translateY(0) rotate(0);
  transition: transform 1s cubic-bezier(.16, 1, .3, 1) 0.4s;
}

.is-ready .hero-line:nth-child(2) > span {
  transform: translateY(0) rotate(0);
  transition: transform 1.05s cubic-bezier(.16, 1, .3, 1) 0.54s;
}

.is-ready .hero-line:nth-child(3) > span {
  transform: translateY(0) rotate(0);
  transition: transform 1.1s cubic-bezier(.16, 1, .3, 1) 0.68s;
}

.is-ready .hero__lower {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.85s ease 0.9s, transform 0.9s cubic-bezier(.22, 1, .36, 1) 0.9s;
}

.scroll-cue {
  position: absolute;
  z-index: 4;
  right: var(--page-pad);
  bottom: 42px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(248, 243, 233, 0.55);
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.scroll-cue i {
  position: relative;
  width: 42px;
  height: 1px;
  overflow: hidden;
  background: rgba(248, 243, 233, 0.24);
}

.scroll-cue i::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--gold-bright);
  animation: scroll-line 2.2s ease-in-out infinite;
}

.hero__coordinates {
  position: absolute;
  z-index: 4;
  top: 50%;
  right: 34px;
  color: rgba(248, 243, 233, 0.5);
  font-size: 8px;
  letter-spacing: 0.18em;
  transform: rotate(90deg) translateX(50%);
  transform-origin: right center;
}

@keyframes scroll-line {
  0% { transform: translateX(-102%); }
  45%, 55% { transform: translateX(0); }
  100% { transform: translateX(102%); }
}

.partners {
  position: relative;
  height: 78px;
  display: grid;
  grid-template-columns: 260px 1fr;
  overflow: hidden;
  border-top: 1px solid rgba(224, 185, 94, 0.62);
  border-bottom: 1px solid rgba(224, 185, 94, 0.5);
  color: var(--ivory);
  background: #141512;
  box-shadow: 0 0 22px rgba(220, 180, 85, 0.05);
}

.partners__label {
  position: relative;
  z-index: 2;
  padding: 0 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-right: 1px solid rgba(238, 232, 220, 0.13);
  background: #141512;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  white-space: nowrap;
}

.partners__label i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold-bright);
  box-shadow: 0 0 9px rgba(228, 194, 111, 0.78);
}

.partners__viewport {
  min-width: 0;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.partners__track,
.partners__group {
  width: max-content;
  height: 100%;
  display: flex;
  align-items: center;
}

.partners__track {
  animation: partner-ticker 34s linear infinite;
}

.partners__group {
  gap: 58px;
  padding-right: 58px;
}

.partner-logo {
  width: 132px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}

.partner-logo img {
  width: 100%;
  height: 27px;
  object-fit: contain;
  filter: brightness(0) invert(94%);
  opacity: 0.9;
  transition: opacity 0.3s ease, filter 0.3s ease;
}

.partner-logo:hover img {
  opacity: 1;
  filter: brightness(0) invert(100%);
}

.partner-wordmark {
  color: rgba(248, 243, 233, 0.8);
  font-family: var(--font-display);
  font-size: 24px;
  letter-spacing: 0.12em;
  line-height: 1;
  text-align: center;
}

.partner-wordmark small {
  margin-top: 3px;
  display: block;
  font-family: var(--font-sans);
  font-size: 6px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.partner-logo:hover .partner-wordmark {
  color: var(--ivory-bright);
}

.partners:hover .partners__track {
  animation-play-state: paused;
}

@keyframes partner-ticker {
  to { transform: translateX(-50%); }
}

.section-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: #686156;
}

.section-meta > p {
  margin: 0;
  font-family: var(--font-display);
  font-size: 13px;
  font-style: italic;
}

.section-kicker {
  font-family: var(--font-sans) !important;
  font-size: 9px !important;
  font-style: normal !important;
  font-weight: 720;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.section-kicker span {
  color: #96763d;
}

.gold-rule {
  position: relative;
  height: 1px;
  margin: 18px 0 clamp(28px, 3vw, 42px);
  overflow: hidden;
  background: rgba(20, 21, 18, 0.14);
  transform: none;
}

.gold-rule span {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #a98545, #dec27d 54%, rgba(169, 133, 69, 0.13));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1.35s cubic-bezier(.22, 1, .36, 1);
}

.gold-rule.is-visible span {
  transform: scaleX(1);
}

.about {
  padding: clamp(46px, 3.8vw, 60px) var(--page-pad) clamp(50px, 4.1vw, 66px);
  color: var(--ink);
  background: var(--ivory);
}

.about__statement {
  max-width: 1060px;
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(39px, 3.55vw, 56px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.052em;
}

.about__statement em {
  display: block;
  margin-top: 0.08em;
  margin-left: 15%;
  color: #6f5b36;
  font-weight: 400;
}

.about__editorial {
  width: min(1450px, 100%);
  margin-top: clamp(28px, 2.7vw, 40px);
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(320px, 0.62fr);
  gap: clamp(36px, 4.3vw, 66px);
  align-items: center;
}

.about__figure {
  margin: 0;
}

.image-mask {
  position: relative;
  height: clamp(290px, 23vw, 350px);
  overflow: hidden;
  background: #c9c1b5;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1.2s cubic-bezier(.16, 1, .3, 1);
}

.about__figure.is-visible .image-mask {
  clip-path: inset(0);
}

.image-mask::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(197, 163, 94, 0.48);
  box-shadow: inset 0 0 20px rgba(214, 176, 86, 0.055);
  pointer-events: none;
}

.image-mask img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.055);
  transition: transform 1.5s cubic-bezier(.16, 1, .3, 1);
}

.about__figure.is-visible .image-mask img {
  transform: scale(1);
}

.about__figure figcaption {
  padding-top: 12px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--light-line);
  color: #70685c;
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.about__copy {
  position: relative;
  padding: 22px 0 8px 30px;
  border-left: 1px solid rgba(155, 117, 49, 0.35);
}

.about__copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  width: 1px;
  height: 68px;
  background: var(--gold);
  box-shadow: 0 0 9px rgba(197, 163, 94, 0.43);
}

.about__copy p {
  margin: 0;
  color: #686156;
  font-size: clamp(12px, 0.88vw, 14px);
  line-height: 1.78;
}

.about__copy .about__lead {
  margin-bottom: 16px;
  color: #25231f;
  font-family: var(--font-display);
  font-size: clamp(17px, 1.3vw, 21px);
  line-height: 1.45;
  letter-spacing: -0.014em;
}

.editorial-link {
  width: max-content;
  margin-top: 22px;
  padding-bottom: 9px;
  display: flex;
  align-items: center;
  gap: 28px;
  border-bottom: 1px solid #8d8578;
  font-size: 8px;
  font-weight: 650;
  letter-spacing: 0.19em;
  text-transform: uppercase;
  transition: color 0.3s ease, padding 0.35s cubic-bezier(.22, 1, .36, 1);
}

.editorial-link:hover {
  padding-left: 6px;
  color: #80642f;
}

.credibility {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.credibility span {
  padding: 9px 12px;
  border: 1px solid rgba(32, 32, 28, 0.18);
  color: #504b43;
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.team {
  margin-top: clamp(34px, 3.1vw, 46px);
  padding: clamp(20px, 2vw, 28px) 0;
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(300px, 0.86fr) minmax(250px, 0.7fr);
  gap: clamp(32px, 5vw, 80px);
  align-items: end;
  border-top: 1px solid rgba(20, 21, 18, 0.22);
  border-bottom: 1px solid rgba(20, 21, 18, 0.22);
}

.mini-label {
  margin: 0 0 20px;
  color: #8a6d37;
  font-size: 8px;
  font-weight: 650;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.team h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(31px, 2.65vw, 43px);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.team h3 em {
  color: #715c36;
  font-weight: 400;
}

.team__copy p {
  margin: 0;
  color: #5f594f;
  font-family: var(--font-display);
  font-size: clamp(16px, 1.12vw, 19px);
  line-height: 1.55;
}

.team__disciplines {
  border-top: 1px solid var(--light-line);
}

.team__disciplines span {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 18px;
  border-bottom: 1px solid var(--light-line);
  color: #444139;
  font-size: 8px;
  font-weight: 650;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.team__disciplines i {
  color: #987b45;
  font-family: var(--font-display);
  font-size: 10px;
  font-style: italic;
}

.projects {
  color: var(--ivory);
  background: #1d1d19;
  border-top: 1px solid rgba(224, 185, 94, 0.42);
  border-bottom: 1px solid rgba(224, 185, 94, 0.42);
}

.projects-intro {
  padding: clamp(32px, 2.8vw, 44px) var(--page-pad) clamp(28px, 2.4vw, 36px);
  background: #24231f;
  border-bottom: 1px solid rgba(224, 185, 94, 0.3);
}

.projects-intro .gold-rule {
  margin: 14px 0 24px;
}

.section-meta--dark {
  color: rgba(238, 232, 220, 0.5);
}

.section-meta--dark .section-kicker {
  color: var(--ivory);
}

.section-meta--dark .section-kicker span {
  color: var(--gold-bright);
}

.gold-rule--dark {
  background: rgba(238, 232, 220, 0.12);
}

.projects-intro__body {
  width: min(1280px, 100%);
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(300px, 0.5fr);
  gap: clamp(52px, 6vw, 94px);
  align-items: end;
}

.projects-intro__body h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(40px, 3.45vw, 54px);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.projects-intro__body h2 em {
  display: inline;
  margin-left: 0.12em;
  color: #c8a968;
  font-weight: 400;
}

.projects-intro__body > p {
  max-width: 340px;
  margin: 0 0 3px;
  color: rgba(238, 232, 220, 0.82);
  font-size: 13.5px;
  line-height: 1.7;
}

.projects-scroll {
  position: relative;
  height: 146vh;
  background: #131410;
}

.projects-stage {
  --project-progress: 0;
  position: sticky;
  top: 0;
  height: 82svh;
  min-height: 520px;
  max-height: 820px;
  overflow: hidden;
  isolation: isolate;
  background: #131410;
  border-top: 1px solid rgba(224, 185, 94, 0.38);
  border-bottom: 1px solid rgba(224, 185, 94, 0.38);
}

.projects-stage::after {
  content: "";
  position: absolute;
  z-index: 30;
  inset: 22px;
  border: 1px solid rgba(224, 185, 94, 0.46);
  box-shadow: inset 0 0 28px rgba(224, 185, 94, 0.035), 0 0 18px rgba(224, 185, 94, 0.035);
  pointer-events: none;
}

.project-panel {
  --panel-opacity: 1;
  --panel-y: 0px;
  --image-scale: 1.03;
  position: absolute;
  inset: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 15% 50%, rgba(197, 163, 94, 0.075), transparent 34%),
    linear-gradient(110deg, #161712 0 42%, #0f100e 42% 100%);
  will-change: clip-path;
}

.project-panel--1 { z-index: 1; }
.project-panel--2 { z-index: 2; --panel-opacity: 0; clip-path: inset(100% 0 0); }
.project-panel--3 { z-index: 3; --panel-opacity: 0; clip-path: inset(100% 0 0); }

.project-panel::before {
  content: "";
  position: absolute;
  z-index: 3;
  top: 5.5vh;
  bottom: 5.5vh;
  left: 41.5%;
  width: 1px;
  background: rgba(221, 183, 94, 0.35);
  box-shadow: 0 0 9px rgba(221, 183, 94, 0.14);
}

.project-panel__media {
  position: absolute;
  z-index: 1;
  top: 5.5vh;
  right: 5.2vw;
  bottom: 5.5vh;
  left: 41.5%;
  overflow: hidden;
  background: #24251f;
}

.project-panel__media::after {
  content: "";
  position: absolute;
  z-index: 4;
  inset: 0;
  border: 1px solid rgba(224, 185, 94, 0.58);
  box-shadow: inset 0 0 20px rgba(224, 185, 94, 0.045);
  pointer-events: none;
}

.project-panel__media > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(var(--image-scale));
  will-change: transform;
  transition: filter 0.6s ease;
}

.project-panel--1 .project-panel__media > img { object-position: center; }
.project-panel--2 .project-panel__media > img { object-position: 50% 54%; }
.project-panel--3 .project-panel__media > img { object-position: center; }

.project-panel__media:hover > img {
  filter: brightness(1.04);
}

.project-panel__wash {
  position: absolute;
  z-index: 2;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(11, 12, 11, 0.32), transparent 38%),
    linear-gradient(180deg, rgba(11, 12, 11, 0.08), transparent 58%, rgba(11, 12, 11, 0.24));
}

.project-panel__logo,
.release-card__logo {
  position: absolute;
  z-index: 5;
  display: grid;
  place-items: center;
  border: 1px solid rgba(225, 188, 98, 0.56);
  background: rgba(247, 243, 234, 0.95);
  box-shadow: 0 8px 26px rgba(0, 0, 0, 0.13);
  backdrop-filter: blur(10px);
}

.project-panel__logo {
  top: 16px;
  right: 16px;
  width: 132px;
  height: 48px;
  padding: 10px 15px;
}

.project-panel__logo img,
.release-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.project-logo-wordmark {
  display: block;
  color: #171713;
  font-family: var(--font-display);
  font-size: 24px;
  letter-spacing: 0.11em;
  line-height: 0.9;
  text-align: center;
  white-space: nowrap;
}

.project-logo-wordmark small {
  margin-top: 5px;
  display: block;
  font-family: var(--font-sans);
  font-size: 6px;
  font-weight: 750;
  letter-spacing: 0.2em;
}

.project-panel__content {
  position: absolute;
  z-index: 4;
  top: 19%;
  left: var(--page-pad);
  width: min(520px, 35vw);
  padding: 8px 0 10px 28px;
  border-left: 1px solid rgba(224, 185, 94, 0.52);
  opacity: var(--panel-opacity);
  transform: translateY(var(--panel-y));
  will-change: transform, opacity;
}

.project-panel__number {
  margin: 0 0 22px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--gold-bright);
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.19em;
  text-transform: uppercase;
}

.project-panel__number::after {
  content: "";
  width: 34px;
  height: 1px;
  background: rgba(238, 232, 220, 0.32);
}

.project-panel h3 {
  max-width: 500px;
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(42px, 3.8vw, 60px);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.052em;
}

.project-panel__details {
  margin-top: 22px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(238, 232, 220, 0.8);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.project-panel__details i {
  width: 18px;
  height: 1px;
  background: var(--gold);
}

.project-panel__summary {
  max-width: 360px;
  margin: 20px 0 0;
  color: rgba(238, 232, 220, 0.76);
  font-size: 13.5px;
  line-height: 1.62;
}

.project-panel__link {
  width: max-content;
  margin-top: 26px;
  padding-bottom: 9px;
  display: flex;
  align-items: center;
  gap: 28px;
  border-bottom: 1px solid rgba(238, 232, 220, 0.4);
  font-size: 9.5px;
  font-weight: 720;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  transition: color 0.3s ease, border-color 0.3s ease, padding 0.35s cubic-bezier(.22, 1, .36, 1);
}

.project-panel__link:hover {
  padding-left: 6px;
  color: #efd18b;
  border-color: var(--gold-bright);
}

.project-progress {
  position: absolute;
  z-index: 10;
  right: 5.2vw;
  bottom: 5vh;
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(238, 232, 220, 0.55);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
}

.project-progress > span:first-child {
  color: var(--ivory-bright);
}

.project-progress > i {
  width: 16px;
  height: 1px;
  background: rgba(238, 232, 220, 0.28);
}

.project-progress b {
  position: relative;
  width: 116px;
  height: 1px;
  margin-left: 10px;
  overflow: hidden;
  background: rgba(238, 232, 220, 0.18);
}

.project-progress b span {
  position: absolute;
  inset: 0;
  background: var(--gold-bright);
  transform: scaleX(var(--project-progress));
  transform-origin: left;
}

.releases {
  position: relative;
  overflow: hidden;
  padding: clamp(36px, 3.1vw, 48px) 0 clamp(32px, 2.8vw, 42px) var(--page-pad);
  color: var(--ink);
  background: var(--stone);
  border-top: 1px solid rgba(145, 108, 44, 0.4);
  border-bottom: 1px solid rgba(145, 108, 44, 0.4);
}

.releases > .section-meta {
  margin-right: var(--page-pad);
  padding-bottom: 16px;
  border-bottom: 1px solid var(--light-line);
}

.releases__heading {
  margin: clamp(20px, 2vw, 28px) var(--page-pad) clamp(20px, 2vw, 27px) 0;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 40px;
}

.releases__heading > div:first-child {
  display: flex;
  align-items: end;
  gap: clamp(36px, 5.4vw, 84px);
}

.releases__heading h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(39px, 3.55vw, 56px);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.052em;
  white-space: nowrap;
}

.releases__heading h2 em {
  color: #755f37;
  font-weight: 400;
}

.releases__heading > div:first-child > p {
  max-width: 430px;
  margin: 0 0 2px;
  color: #403c36;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.55;
}

.rail-controls {
  display: flex;
}

.rail-controls button {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(18, 19, 16, 0.25);
  color: var(--ink);
  background: transparent;
  cursor: pointer;
  transition: color 0.3s ease, background 0.3s ease, border-color 0.3s ease;
}

.rail-controls button + button {
  border-left: 0;
}

.rail-controls button:hover {
  color: var(--ivory);
  border-color: var(--ink);
  background: var(--ink);
}

.release-rail {
  width: 100%;
  padding: 0 var(--page-pad) 10px 0;
  display: flex;
  gap: clamp(18px, 1.8vw, 26px);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: #947a48 rgba(18, 19, 16, 0.1);
  outline: none;
}

.release-rail:focus-visible {
  box-shadow: inset 0 -2px #9f7d3c;
}

.release-card {
  flex: 0 0 clamp(290px, 24.5vw, 390px);
  min-width: 0;
  scroll-snap-align: start;
}

.release-card__image {
  position: relative;
  aspect-ratio: 16 / 10.5;
  display: block;
  overflow: hidden;
  background: #beb6a9;
}

.release-card__image::after {
  content: "";
  position: absolute;
  z-index: 4;
  inset: 0;
  border: 1px solid rgba(171, 132, 58, 0.38);
  box-shadow: inset 0 0 16px rgba(201, 164, 76, 0.05);
  pointer-events: none;
}

.release-card__image > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.9s cubic-bezier(.22, 1, .36, 1), filter 0.45s ease;
}

.release-card__image:hover > img {
  transform: scale(1.035);
  filter: brightness(1.035);
}

.release-card__logo {
  top: 12px;
  left: 12px;
  width: 118px;
  height: 40px;
  padding: 8px 12px;
}

.release-card__logo .project-logo-wordmark {
  font-size: 20px;
}

.release-card__view {
  position: absolute;
  z-index: 5;
  right: 12px;
  bottom: 12px;
  min-width: 76px;
  height: 36px;
  padding: 0 10px 0 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  border: 1px solid rgba(229, 196, 119, 0.52);
  color: var(--ivory-bright);
  background: rgba(13, 14, 13, 0.76);
  backdrop-filter: blur(10px);
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.release-card__image:hover .release-card__view {
  opacity: 1;
  transform: translateY(0);
}

.release-card__meta {
  min-height: 74px;
  padding: 13px 0 0;
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 16px;
  border-top: 1px solid rgba(18, 19, 16, 0.2);
}

.release-card__meta > span {
  padding-right: 14px;
  border-right: 1px solid rgba(18, 19, 16, 0.18);
  color: #796b54;
  font-size: 8px;
  letter-spacing: 0.16em;
}

.release-card__meta h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(24px, 1.85vw, 31px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.032em;
}

.release-card__meta p {
  margin: 7px 0 0;
  color: #4f4940;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.release-rail__end {
  flex: 0 0 150px;
  min-height: 100%;
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  border-left: 1px solid rgba(18, 19, 16, 0.2);
  color: #6d6457;
  scroll-snap-align: end;
}

.release-rail__end span {
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.release-rail__end i {
  color: #856b3b;
  font-size: 24px;
  font-style: normal;
}

.invest {
  padding: clamp(38px, 3.2vw, 50px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(320px, 0.82fr) minmax(500px, 1fr);
  gap: clamp(48px, 6vw, 92px);
  align-items: start;
  color: #191812;
  background: #cbbfae;
  border-top: 1px solid rgba(125, 95, 45, 0.48);
  border-bottom: 1px solid rgba(125, 95, 45, 0.48);
}

.invest__intro .section-kicker {
  color: #4f493f;
}

.invest__intro .section-kicker span {
  color: #7d5f2d;
}

.invest__intro h2 {
  margin: 22px 0 17px;
  font-family: var(--font-display);
  font-size: clamp(40px, 3.75vw, 59px);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.05em;
}

.invest__intro h2 em {
  color: #725729;
  font-weight: 400;
}

.invest__intro > p:last-of-type {
  max-width: 480px;
  margin: 0;
  color: #34312b;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.62;
}

.editorial-link--light {
  color: #1a1915;
  border-color: rgba(25, 24, 18, 0.42);
}

.editorial-link--light:hover {
  color: #6e5122;
  border-color: #7d5f2d;
}

.benefit-list {
  border-top: 1px solid rgba(25, 24, 18, 0.22);
}

.benefit {
  min-height: 68px;
  padding: 11px 0;
  display: grid;
  grid-template-columns: 46px minmax(170px, 0.72fr) minmax(250px, 1fr);
  gap: 17px;
  align-items: center;
  border-bottom: 1px solid rgba(25, 24, 18, 0.2);
}

.benefit__icon,
.service-row__icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(119, 89, 40, 0.38);
  color: #725629;
  background: rgba(248, 243, 233, 0.22);
}

.benefit__icon svg,
.service-row__icon svg {
  width: 18px;
  height: 18px;
}

.benefit__title,
.service-row__title {
  display: flex;
  align-items: center;
  gap: 14px;
}

.benefit__title small,
.service-row__title small {
  color: #775b2d;
  font-family: var(--font-display);
  font-size: 10px;
  font-style: italic;
}

.benefit h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(22px, 1.55vw, 27px);
  font-weight: 400;
  letter-spacing: -0.025em;
}

.benefit p {
  margin: 0;
  color: #39352f;
  font-size: clamp(13.5px, 0.86vw, 15px);
  font-weight: 600;
  line-height: 1.55;
}

.services {
  padding: clamp(38px, 3.2vw, 48px) var(--page-pad) clamp(40px, 3.5vw, 52px);
  color: var(--ink);
  background: var(--ivory-bright);
}

.services > .section-meta {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--light-line);
}

.services__header {
  margin: clamp(20px, 2vw, 27px) 0 clamp(20px, 2vw, 27px);
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 50px;
}

.services__header h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(40px, 3.55vw, 56px);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.052em;
}

.services__header h2 em {
  color: #735e38;
  font-weight: 400;
}

.services__header p {
  max-width: 440px;
  margin: 0;
  color: #3e3a34;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.55;
}

.service-list {
  border-top: 1px solid rgba(18, 19, 16, 0.22);
}

.service-row {
  min-height: 66px;
  display: grid;
  grid-template-columns: 46px minmax(280px, 0.9fr) minmax(340px, 1fr) 34px;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid rgba(18, 19, 16, 0.2);
  transition: padding 0.45s cubic-bezier(.22, 1, .36, 1), color 0.3s ease;
}

.service-row:hover {
  padding: 0 12px;
  color: #745b2c;
}

.service-row__icon {
  border-color: rgba(119, 89, 40, 0.3);
  background: rgba(197, 163, 94, 0.06);
}

.service-row h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(26px, 2.2vw, 36px);
  font-weight: 400;
  letter-spacing: -0.032em;
}

.service-row p {
  margin: 0;
  color: #403c35;
  font-size: clamp(13.5px, 0.86vw, 15px);
  font-weight: 600;
  line-height: 1.5;
}

.service-row > i {
  justify-self: end;
  font-size: 18px;
  font-style: normal;
}

.faq {
  position: relative;
  padding: clamp(36px, 3vw, 46px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(300px, 0.66fr) minmax(520px, 1fr);
  gap: clamp(48px, 6vw, 96px);
  overflow: hidden;
  color: #1b1b18;
  background: #d1c7b6;
  border-top: 1px solid rgba(157, 117, 48, 0.66);
  border-bottom: 1px solid rgba(157, 117, 48, 0.66);
  box-shadow: inset 0 0 0 14px rgba(150, 111, 46, 0.025);
}

.faq::after {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(132, 96, 38, 0.22);
  pointer-events: none;
}

.faq__intro {
  position: relative;
  z-index: 1;
  align-self: start;
}

.faq__intro .section-kicker {
  color: #39352f;
}

.faq__intro .section-kicker span {
  color: #7d5b27;
}

.faq__mark {
  position: absolute;
  top: 10px;
  right: 0;
  color: rgba(103, 76, 33, 0.09);
  font-family: var(--font-display);
  font-size: clamp(92px, 9vw, 146px);
  font-style: italic;
  line-height: 0.8;
  pointer-events: none;
}

.faq__intro h2 {
  position: relative;
  margin: clamp(38px, 3.4vw, 52px) 0 16px;
  font-family: var(--font-display);
  font-size: clamp(38px, 3.35vw, 52px);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.047em;
}

.faq__intro > p:last-child {
  max-width: 390px;
  margin: 0;
  color: #3c3831;
  font-size: clamp(14px, 0.9vw, 16px);
  font-weight: 600;
  line-height: 1.6;
}

.faq__list {
  position: relative;
  z-index: 1;
  border-top: 1px solid rgba(72, 61, 44, 0.3);
}

.faq__list details {
  border-bottom: 1px solid rgba(72, 61, 44, 0.25);
}

.faq__list summary {
  min-height: 58px;
  display: grid;
  grid-template-columns: 38px 1fr 20px;
  gap: 18px;
  align-items: center;
  list-style: none;
  cursor: pointer;
}

.faq__list summary::-webkit-details-marker {
  display: none;
}

.faq__list summary > span {
  color: #7a5929;
  font-family: var(--font-display);
  font-size: 10px;
  font-style: italic;
}

.faq__list summary strong {
  font-family: var(--font-display);
  font-size: clamp(18px, 1.35vw, 22px);
  font-weight: 600;
  letter-spacing: -0.015em;
}

.faq__list summary i {
  position: relative;
  width: 16px;
  height: 16px;
  justify-self: end;
}

.faq__list summary i::before,
.faq__list summary i::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 1px;
  width: 14px;
  height: 1px;
  background: #72552a;
  transition: transform 0.35s ease;
}

.faq__list summary i::after {
  transform: rotate(90deg);
}

.faq__list details[open] summary i::after {
  transform: rotate(0);
}

.faq__list details > p {
  max-width: 640px;
  margin: -1px 38px 18px 56px;
  color: #3d3932;
  font-size: clamp(14px, 0.88vw, 15.5px);
  font-weight: 600;
  line-height: 1.6;
}

.faq__note {
  margin: 14px 0 0;
  color: #625b50;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.6;
}

.insights {
  padding: clamp(36px, 3.1vw, 48px) var(--page-pad) clamp(40px, 3.4vw, 52px);
  color: var(--ink);
  background: #ece6da;
}

.insights__header {
  margin-bottom: clamp(22px, 2.2vw, 30px);
  padding-bottom: 18px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.54fr);
  gap: 60px;
  align-items: end;
  border-bottom: 1px solid rgba(18, 19, 16, 0.22);
}

.insights__header h2 {
  margin: 16px 0 0;
  font-family: var(--font-display);
  font-size: clamp(36px, 3.1vw, 49px);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.05em;
}

.insights__header h2 em {
  color: #745c30;
  font-weight: 400;
}

.insights__intro {
  justify-self: end;
}

.insights__intro > p {
  max-width: 360px;
  margin: 0;
  color: #403c35;
  font-size: clamp(14px, 0.9vw, 16px);
  font-weight: 600;
  line-height: 1.55;
}

.insights__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
  grid-template-rows: repeat(2, minmax(164px, 1fr));
  gap: 16px;
}

.insight-card {
  position: relative;
  min-width: 0;
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(130, 96, 40, 0.3);
  background: rgba(248, 243, 233, 0.55);
  transition: border-color 0.35s ease, background 0.35s ease;
}

.insight-card:hover {
  border-color: rgba(141, 103, 41, 0.72);
  background: rgba(248, 243, 233, 0.82);
}

.insight-card--1 {
  grid-row: 1 / 3;
  grid-template-rows: minmax(228px, 1fr) auto;
}

.insight-card--2,
.insight-card--3 {
  grid-template-columns: minmax(155px, 0.43fr) minmax(220px, 0.57fr);
}

.insight-card__image {
  position: relative;
  min-height: 0;
  overflow: hidden;
  background: #c7c0b4;
}

.insight-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 0 1px rgba(250, 241, 220, 0.13);
  pointer-events: none;
}

.insight-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.9s cubic-bezier(.22, 1, .36, 1), filter 0.45s ease;
}

.insight-card:hover .insight-card__image img {
  transform: scale(1.035);
  filter: brightness(1.025);
}

.insight-card__image > i {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(232, 201, 128, 0.72);
  color: var(--ivory-bright);
  background: rgba(16, 17, 15, 0.72);
  font-family: var(--font-display);
  font-size: 9px;
  font-style: italic;
  backdrop-filter: blur(8px);
}

.insight-card__body {
  padding: 15px 18px 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.insight-card__body small {
  color: #876c3b;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.insight-card__body strong {
  max-width: 650px;
  margin-top: 9px;
  font-family: var(--font-display);
  font-size: clamp(22px, 1.8vw, 29px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -0.03em;
}

.insight-card--2 .insight-card__body strong,
.insight-card--3 .insight-card__body strong {
  font-size: clamp(19px, 1.35vw, 23px);
}

.insight-card__body > span {
  max-width: 540px;
  margin-top: 9px;
  color: #443f38;
  font-size: clamp(12.5px, 0.8vw, 14px);
  font-weight: 600;
  line-height: 1.48;
}

.insight-card__body b {
  margin-top: auto;
  padding-top: 11px;
  display: flex;
  align-items: center;
  gap: 17px;
  color: #4f4638;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.newsletter {
  position: relative;
  padding: clamp(34px, 2.9vw, 44px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(340px, 0.8fr) minmax(480px, 1fr);
  gap: clamp(48px, 6.5vw, 100px);
  align-items: center;
  overflow: hidden;
  color: #181815;
  background: #c4b8a5;
  border-top: 1px solid rgba(144, 105, 42, 0.66);
  border-bottom: 1px solid rgba(144, 105, 42, 0.66);
}

.newsletter::before {
  content: "";
  position: absolute;
  top: -110px;
  left: 42%;
  width: 1px;
  height: 380px;
  background: rgba(119, 84, 31, 0.22);
  transform: rotate(20deg);
}

.newsletter__copy,
.newsletter__form {
  position: relative;
  z-index: 1;
}

.newsletter .section-kicker {
  color: #3c3831;
}

.newsletter .section-kicker span {
  color: #795929;
}

.newsletter__icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(113, 82, 35, 0.42);
  color: #6f5227;
  background: rgba(248, 243, 233, 0.2);
}

.newsletter__icon svg {
  width: 19px;
  height: 19px;
}

.newsletter h2 {
  max-width: 620px;
  margin: 16px 0 13px;
  font-family: var(--font-display);
  font-size: clamp(34px, 2.7vw, 43px);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.047em;
}

.newsletter h2 em {
  color: #765a2b;
  font-weight: 400;
}

.newsletter__copy > p:last-child {
  max-width: 420px;
  margin: 0;
  color: #38342e;
  font-size: clamp(14px, 0.9vw, 16px);
  font-weight: 600;
  line-height: 1.55;
}

.newsletter__form > label {
  display: block;
  margin-bottom: 12px;
  color: #3b3730;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.newsletter__form > div {
  display: grid;
  grid-template-columns: 1fr 170px;
}

.newsletter__form input {
  width: 100%;
  min-width: 0;
  height: 56px;
  padding: 0 18px;
  border: 1px solid rgba(88, 68, 38, 0.44);
  border-right: 0;
  border-radius: 0;
  outline: none;
  color: #171713;
  background: rgba(248, 243, 233, 0.42);
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 600;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.newsletter__form input::placeholder {
  color: rgba(37, 34, 29, 0.56);
}

.newsletter__form input:focus {
  border-color: rgba(99, 72, 31, 0.86);
  background: rgba(248, 243, 233, 0.62);
}

.newsletter__form button {
  height: 56px;
  padding: 0 16px 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid #20211d;
  color: var(--ivory-bright);
  background: #20211d;
  cursor: pointer;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
}

.newsletter__form button:hover {
  color: #171713;
  border-color: #765a2b;
  background: transparent;
  box-shadow: 0 0 20px rgba(95, 70, 30, 0.12);
}

.newsletter__privacy,
.newsletter__status {
  margin: 10px 0 0;
  color: #5a5349;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.5;
}

.newsletter__privacy a {
  color: #5f451f;
  border-bottom: 1px solid rgba(95, 69, 31, 0.34);
}

.newsletter__status {
  min-height: 12px;
  color: #5f451f;
}

.site-footer {
  position: relative;
  padding: clamp(36px, 3.2vw, 48px) var(--page-pad) 20px;
  overflow: hidden;
  color: var(--ivory);
  background: #35362f;
}

.site-footer__glow {
  position: absolute;
  top: -180px;
  left: 36%;
  width: 380px;
  height: 260px;
  border-radius: 50%;
  background: rgba(205, 167, 80, 0.07);
  filter: blur(70px);
  pointer-events: none;
}

.site-footer__top {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(340px, 0.92fr) minmax(300px, 0.7fr);
  gap: clamp(38px, 5vw, 78px);
  align-items: start;
}

.footer-brand .brand {
  color: var(--ivory-bright);
}

.footer-brand .brand__name {
  font-size: 27px;
}

.footer-brand > p {
  max-width: 260px;
  margin: 20px 0 0;
  color: rgba(248, 243, 233, 0.82);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.55;
}

.footer-statement {
  padding-left: 26px;
  border-left: 1px solid rgba(224, 185, 94, 0.34);
}

.footer-statement .mini-label {
  margin-bottom: 17px;
  color: var(--gold-bright);
}

.footer-statement h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(32px, 2.65vw, 42px);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.045em;
}

.footer-statement h2 em {
  color: #c9aa67;
  font-weight: 400;
}

.footer-statement > p:last-child {
  margin: 17px 0 0;
  color: rgba(248, 243, 233, 0.62);
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.footer-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(110px, 1fr));
  gap: 36px;
}

.footer-links > div > p {
  margin: 0 0 16px;
  color: #c8a963;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.footer-links > div > a:not(.footer-back) {
  width: max-content;
  margin: 0 0 11px;
  display: block;
  color: rgba(248, 243, 233, 0.82);
  font-size: 13px;
  font-weight: 600;
  transition: color 0.25s ease;
}

.footer-links > div > a:hover {
  color: var(--ivory-bright);
}

.footer-socials {
  display: flex;
  gap: 8px;
}

.footer-socials a {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(225, 188, 98, 0.42);
  color: rgba(248, 243, 233, 0.78);
  transition: color 0.3s ease, background 0.3s ease, border-color 0.3s ease;
}

.footer-socials a:hover {
  color: #171713;
  border-color: var(--gold-bright);
  background: var(--gold-bright);
}

.footer-socials svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 1.6;
}

.footer-socials svg rect,
.footer-socials svg circle {
  fill: none;
}

.footer-socials .social-icon__dot {
  fill: currentColor;
  stroke: none;
}

.footer-back {
  width: max-content;
  margin-top: 24px;
  padding-bottom: 7px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid rgba(238, 232, 220, 0.25);
  color: rgba(248, 243, 233, 0.72);
  font-size: 9px;
  font-weight: 680;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.site-footer__bottom {
  margin-top: clamp(30px, 3vw, 42px);
  padding-top: 16px;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  border-top: 1px solid rgba(238, 232, 220, 0.13);
  color: rgba(248, 243, 233, 0.58);
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.site-footer__legal {
  display: flex;
  gap: 22px;
}

.site-footer__legal a {
  transition: color 0.25s ease;
}

.site-footer__legal a:hover {
  color: var(--ivory-bright);
}

.inner-page {
  min-height: 100vh;
  color: var(--ivory);
  background: var(--ink-deep);
}

.inner-nav {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 92px;
  padding: 18px var(--page-pad);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  border-bottom: 1px solid rgba(225, 188, 98, 0.28);
}

.inner-nav .brand {
  color: var(--ivory-bright);
}

.inner-nav .brand__name {
  font-size: 25px;
}

.inner-nav__back {
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(238, 232, 220, 0.32);
  color: rgba(238, 232, 220, 0.68);
  font-size: 8px;
  font-weight: 720;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: color 0.25s ease, border-color 0.25s ease;
}

.inner-nav__back:hover {
  color: var(--gold-bright);
  border-color: var(--gold-bright);
}

.inner-hero {
  position: relative;
  min-height: 360px;
  padding: 150px var(--page-pad) 58px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 30%, rgba(203, 164, 76, 0.11), transparent 29%),
    linear-gradient(115deg, #1e1f1b, #10110f 72%);
  border-bottom: 1px solid rgba(225, 188, 98, 0.58);
}

.inner-hero::after {
  content: "";
  position: absolute;
  right: 24px;
  bottom: 24px;
  left: 24px;
  height: 1px;
  background: linear-gradient(90deg, rgba(225, 188, 98, 0.62), transparent 62%);
}

.inner-hero > p {
  margin: 0 0 20px;
  color: var(--gold-bright);
  font-size: 8px;
  font-weight: 720;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.inner-hero h1 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(48px, 5vw, 76px);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.052em;
}

.inner-hero h1 em {
  color: #d1b371;
  font-weight: 400;
}

.inner-hero > span {
  position: absolute;
  right: var(--page-pad);
  bottom: 58px;
  color: rgba(238, 232, 220, 0.44);
  font-size: 7px;
  font-weight: 680;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.legal-document {
  padding: clamp(50px, 5vw, 78px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(240px, 0.48fr) minmax(520px, 1fr);
  gap: clamp(70px, 9vw, 150px);
  align-items: start;
  color: var(--ink);
  background: var(--ivory-bright);
}

.legal-document > aside {
  position: sticky;
  top: 40px;
  padding: 20px 0 20px 24px;
  border-left: 1px solid rgba(149, 112, 47, 0.5);
}

.legal-document > aside p {
  margin: 0 0 12px;
  font-family: var(--font-display);
  font-size: clamp(25px, 2.1vw, 34px);
  line-height: 1.03;
  letter-spacing: -0.03em;
}

.legal-document > aside span {
  display: block;
  max-width: 280px;
  color: #696156;
  font-size: 10.5px;
  line-height: 1.65;
}

.legal-document__body {
  max-width: 760px;
}

.legal-document__body section {
  padding: 0 0 25px;
  margin: 0 0 25px;
  border-bottom: 1px solid rgba(18, 19, 16, 0.16);
}

.legal-document__body h2 {
  margin: 0 0 12px;
  font-family: var(--font-display);
  font-size: clamp(23px, 1.8vw, 29px);
  font-weight: 400;
  letter-spacing: -0.025em;
}

.legal-document__body p {
  margin: 0;
  color: #5f594f;
  font-size: 12px;
  line-height: 1.78;
}

.inner-page--journal {
  background: #ece6da;
}

.inner-hero--journal {
  min-height: 420px;
}

.journal-list {
  padding: clamp(50px, 5vw, 76px) var(--page-pad);
  color: var(--ink);
  background: #ece6da;
}

.journal-entry {
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 0 clamp(42px, 4vw, 58px);
  display: grid;
  grid-template-columns: minmax(360px, 0.82fr) minmax(440px, 1fr);
  gap: clamp(52px, 7vw, 108px);
  align-items: center;
  border-bottom: 1px solid rgba(18, 19, 16, 0.18);
  scroll-margin-top: 30px;
}

.journal-entry + .journal-entry {
  padding-top: clamp(42px, 4vw, 58px);
}

.journal-entry:nth-child(even) figure {
  order: 2;
}

.journal-entry figure {
  margin: 0;
}

.journal-entry figure img {
  width: 100%;
  height: clamp(260px, 24vw, 350px);
  object-fit: cover;
  border: 1px solid rgba(145, 108, 44, 0.4);
}

.journal-entry figcaption {
  padding-top: 11px;
  color: #80663a;
  font-size: 7px;
  font-weight: 720;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.journal-entry > div > p:first-child {
  margin: 0 0 18px;
  color: #876c3b;
  font-size: 8px;
  font-weight: 720;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.journal-entry h2 {
  margin: 0 0 22px;
  font-family: var(--font-display);
  font-size: clamp(35px, 3.2vw, 50px);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.045em;
}

.journal-entry > div > p:not(:first-child) {
  max-width: 650px;
  margin: 0 0 13px;
  color: #5f594f;
  font-size: 12px;
  line-height: 1.72;
}

.journal-disclaimer {
  max-width: 720px;
  margin: 32px auto 0;
  color: #746c61;
  font-size: 9px;
  line-height: 1.65;
  text-align: center;
}

.inner-footer {
  min-height: 72px;
  padding: 20px var(--page-pad);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid rgba(225, 188, 98, 0.38);
  color: rgba(238, 232, 220, 0.42);
  background: var(--ink-deep);
  font-size: 7px;
  font-weight: 650;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.inner-footer > span:last-child {
  display: flex;
  gap: 22px;
}

.inner-footer a:hover {
  color: var(--ivory-bright);
}

/* Readability pass: supporting copy stays visible at presentation distance. */
.hero__copy {
  color: rgba(248, 243, 233, 0.95);
  font-size: clamp(15px, 0.98vw, 17px);
  font-weight: 600;
  line-height: 1.55;
}

.about__copy p {
  color: #4a453d;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.65;
}

.about__copy .about__lead {
  color: #22211d;
  font-size: clamp(18px, 1.4vw, 23px);
  font-weight: 500;
  line-height: 1.42;
}

.team__copy p {
  color: #3f3b34;
  font-weight: 500;
}

.projects-intro__body > p {
  color: rgba(248, 243, 233, 0.9);
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.58;
}

.project-panel__details {
  color: rgba(248, 243, 233, 0.88);
  font-size: 10.5px;
}

.project-panel__summary {
  color: rgba(248, 243, 233, 0.88);
  font-size: clamp(14px, 0.9vw, 16px);
  font-weight: 600;
  line-height: 1.58;
}

.legal-document__body p,
.journal-entry > div > p:not(:first-child) {
  color: #413d36;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.68;
}

.legal-document > aside span {
  color: #4e4941;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
}

@media (max-width: 1180px) {
  .nav-shell,
  .site-nav[data-scrolled="true"] .nav-shell {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }

  .nav-links {
    position: fixed;
    z-index: 110;
    top: 96px;
    right: 22px;
    width: min(360px, calc(100vw - 44px));
    padding: 18px 24px 22px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    border: 1px solid rgba(225, 188, 98, 0.44);
    background: rgba(12, 13, 12, 0.95);
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.26);
    backdrop-filter: blur(20px);
    opacity: 0;
    transform: translateY(-10px);
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.4s cubic-bezier(.22, 1, .36, 1), visibility 0.3s ease;
  }

  .site-nav[data-scrolled="true"] .nav-links {
    top: 88px;
  }

  .nav-links.is-open {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
    pointer-events: auto;
  }

  .nav-links a {
    padding: 15px 0;
    border-bottom: 1px solid rgba(238, 232, 220, 0.12);
    font-size: 11px;
  }

  .menu-toggle {
    position: relative;
    width: 44px;
    height: 44px;
    margin-left: 10px;
    padding: 0;
    display: grid;
    place-items: center;
    border: 1px solid rgba(225, 188, 98, 0.46);
    color: var(--ivory);
    background: transparent;
    cursor: pointer;
  }

  .menu-toggle span {
    position: absolute;
    width: 17px;
    height: 1px;
    background: currentColor;
    transition: transform 0.35s ease;
  }

  .menu-toggle span:first-child { transform: translateY(-3px); }
  .menu-toggle span:last-child { transform: translateY(3px); }
  .menu-toggle.is-open span:first-child { transform: rotate(45deg); }
  .menu-toggle.is-open span:last-child { transform: rotate(-45deg); }

  .about__editorial {
    gap: 56px;
  }

  .team {
    grid-template-columns: minmax(240px, 0.7fr) 1fr;
  }

  .team__disciplines {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }

  .team__disciplines span {
    padding: 0 18px;
    border-right: 1px solid var(--light-line);
  }

  .projects-intro__body {
    grid-template-columns: minmax(0, 1fr) minmax(230px, 0.42fr);
  }

  .project-panel::before,
  .project-panel__media {
    left: 39%;
  }

  .project-panel__content {
    width: 35vw;
  }

  .invest {
    gap: 64px;
  }

  .faq {
    gap: 56px;
  }

  .insights__grid {
    grid-template-columns: minmax(0, 1fr) minmax(310px, 0.84fr);
  }

  .insight-card--2,
  .insight-card--3 {
    grid-template-columns: minmax(130px, 0.4fr) minmax(180px, 0.6fr);
  }

  .newsletter {
    gap: 54px;
  }

  .site-footer__top {
    grid-template-columns: minmax(260px, 0.7fr) minmax(360px, 1fr);
  }

  .footer-links {
    grid-column: 1 / -1;
    padding-top: 24px;
    border-top: 1px solid rgba(238, 232, 220, 0.12);
  }
}

@media (max-width: 820px) {
  :root {
    --page-pad: clamp(20px, 5.6vw, 42px);
  }

  .site-nav {
    padding: 10px;
  }

  .nav-shell,
  .site-nav[data-scrolled="true"] .nav-shell {
    width: 100%;
    height: 70px;
    padding: 0 10px 0 13px;
  }

  .nav-links,
  .site-nav[data-scrolled="true"] .nav-links {
    top: 88px;
    right: 10px;
    width: calc(100vw - 20px);
  }

  .brand__monogram,
  .site-nav[data-scrolled="true"] .brand__monogram {
    width: 38px;
    height: 38px;
  }

  .brand__name,
  .site-nav[data-scrolled="true"] .brand__name {
    font-size: 23px;
  }

  .brand__descriptor,
  .site-nav[data-scrolled="true"] .brand__descriptor {
    margin-top: 5px;
    font-size: 6.5px;
  }

  .nav-cta {
    min-width: 116px;
    height: 42px;
  }

  .hero {
    height: 84svh;
    min-height: 590px;
    max-height: 760px;
  }

  .hero__frame {
    top: 92px;
    right: 10px;
    bottom: 10px;
    left: 10px;
  }

  .hero__content {
    bottom: 70px;
  }

  .hero__title {
    font-size: clamp(47px, 10.8vw, 70px);
  }

  .hero__lower {
    width: min(560px, 100%);
    display: block;
  }

  .hero__actions {
    margin-top: 20px;
  }

  .scroll-cue {
    right: var(--page-pad);
    bottom: 30px;
  }

  .hero__coordinates {
    display: none;
  }

  .partners {
    height: 76px;
    grid-template-columns: 1fr;
  }

  .partners__label {
    display: none;
  }

  .partners__group {
    gap: 44px;
    padding-right: 44px;
  }

  .partner-logo {
    width: 112px;
  }

  .section-meta > p:last-child {
    display: none;
  }

  .gold-rule {
    margin-bottom: 28px;
  }

  .about__statement em {
    margin-left: 0;
  }

  .about__editorial {
    margin-top: 34px;
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .image-mask {
    height: clamp(270px, 51vw, 350px);
  }

  .about__copy {
    width: min(580px, 100%);
    margin-left: auto;
    padding: 24px 0 4px 26px;
  }

  .team {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .team__disciplines {
    grid-column: auto;
    display: block;
  }

  .team__disciplines span {
    padding: 0;
    border-right: 0;
  }

  .projects-intro__body {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .projects-intro__body h2 em {
    margin-left: 0;
  }

  .projects-intro__body > p {
    max-width: 380px;
  }

  .projects-scroll {
    height: auto;
    padding: 0 var(--page-pad) 52px;
  }

  .projects-stage {
    position: relative;
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .projects-stage::after {
    display: none;
  }

  .project-panel {
    position: relative;
    inset: auto;
    margin-bottom: 28px;
    display: flex;
    flex-direction: column;
    overflow: visible;
    clip-path: none;
    border: 1px solid rgba(224, 185, 94, 0.46);
  }

  .project-panel::before {
    display: none;
  }

  .project-panel__media {
    position: relative;
    inset: auto;
    aspect-ratio: 16 / 9.8;
  }

  .project-panel__content {
    position: relative;
    inset: auto;
    width: 100%;
    padding: 25px 20px 35px;
    opacity: 1;
    transform: none;
    border-left: 0;
    border-bottom: 1px solid var(--dark-line);
  }

  .project-panel__number {
    margin-bottom: 16px;
  }

  .project-panel h3 {
    font-size: clamp(39px, 8.8vw, 58px);
  }

  .project-panel__summary {
    max-width: 430px;
  }

  .project-panel__logo {
    width: 112px;
    height: 43px;
  }

  .project-progress {
    display: none;
  }

  .releases__heading {
    display: block;
  }

  .releases__heading > div:first-child {
    display: block;
  }

  .releases__heading > div:first-child > p {
    margin-top: 18px;
  }

  .rail-controls {
    margin-top: 24px;
  }

  .release-card {
    flex-basis: clamp(286px, 76vw, 390px);
  }

  .invest {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .invest__intro {
    max-width: 620px;
  }

  .services__header {
    display: block;
  }

  .services__header p {
    margin-top: 20px;
  }

  .service-row {
    grid-template-columns: 40px 1fr 24px;
    gap: 16px;
  }

  .service-row p {
    grid-column: 2 / 3;
    margin-top: -12px;
    padding-bottom: 18px;
  }

  .service-row > i {
    grid-column: 3;
    grid-row: 1 / 3;
  }

  .faq {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .faq__mark {
    right: 5%;
  }

  .faq__intro h2 {
    margin-top: 32px;
  }

  .faq__intro > p:last-child {
    max-width: 520px;
  }

  .insights__header {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .insights__intro {
    justify-self: start;
  }

  .insights__grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }

  .insight-card--1,
  .insight-card--2,
  .insight-card--3 {
    grid-row: auto;
    grid-template-columns: minmax(210px, 0.44fr) minmax(300px, 0.56fr);
    grid-template-rows: none;
    min-height: 230px;
  }

  .newsletter {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .newsletter::before {
    top: 42%;
    left: -5%;
    width: 110%;
    height: 1px;
    transform: rotate(-4deg);
  }

  .newsletter__copy > p:last-child {
    max-width: 560px;
  }

  .site-footer__top {
    grid-template-columns: 1fr 1fr;
  }

  .footer-links {
    grid-column: 1 / -1;
  }

  .inner-hero > span {
    position: static;
    margin-top: 24px;
  }

  .legal-document {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .legal-document > aside {
    position: static;
    max-width: 560px;
  }

  .journal-entry {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .journal-entry:nth-child(even) figure {
    order: 0;
  }

  .journal-entry figure img {
    height: clamp(270px, 51vw, 360px);
  }
}

@media (max-width: 560px) {
  .nav-shell,
  .site-nav[data-scrolled="true"] .nav-shell {
    grid-template-columns: 1fr auto;
  }

  .brand {
    gap: 9px;
  }

  .brand__monogram,
  .site-nav[data-scrolled="true"] .brand__monogram {
    width: 34px;
    height: 34px;
    font-size: 10px;
  }

  .brand__name,
  .site-nav[data-scrolled="true"] .brand__name {
    font-size: 21px;
  }

  .brand__descriptor,
  .site-nav[data-scrolled="true"] .brand__descriptor {
    font-size: 5.8px;
    letter-spacing: 0.18em;
  }

  .nav-cta {
    display: none;
  }

  .menu-toggle {
    margin-left: 0;
  }

  .hero__content {
    bottom: 68px;
  }

  .hero__title {
    font-size: clamp(43px, 12vw, 58px);
    line-height: 0.9;
  }

  .hero__copy {
    width: min(340px, 100%);
  }

  .hero__actions {
    display: grid;
    grid-template-columns: max-content;
    gap: 5px;
  }

  .text-button {
    min-height: 36px;
  }

  .scroll-cue span {
    display: none;
  }

  .section-kicker {
    line-height: 1.55;
  }

  .about__statement {
    font-size: clamp(36px, 10.3vw, 49px);
  }

  .image-mask {
    height: 280px;
  }

  .about__copy {
    padding-left: 20px;
  }

  .credibility {
    display: grid;
  }

  .credibility span {
    width: max-content;
  }

  .projects-intro__body h2,
  .releases__heading h2,
  .services__header h2 {
    font-size: clamp(38px, 10.8vw, 51px);
  }

  .release-card {
    flex-basis: 84vw;
  }

  .benefit {
    min-height: 0;
    grid-template-columns: 42px 1fr;
    gap: 9px 14px;
  }

  .benefit p {
    grid-column: 2;
  }

  .service-row {
    min-height: 84px;
  }

  .service-row h3 {
    font-size: 27px;
  }

  .faq {
    box-shadow: inset 0 0 0 10px rgba(220, 181, 90, 0.025);
  }

  .faq::after {
    inset: 10px;
  }

  .faq__list summary {
    min-height: 62px;
    grid-template-columns: 28px 1fr 18px;
    gap: 11px;
  }

  .faq__list details > p {
    margin: 0 24px 20px 39px;
  }

  .insight-card--1,
  .insight-card--2,
  .insight-card--3 {
    grid-template-columns: 1fr;
    grid-template-rows: 205px auto;
  }

  .insight-card__body strong,
  .insight-card--2 .insight-card__body strong,
  .insight-card--3 .insight-card__body strong {
    font-size: 24px;
  }

  .newsletter__form > div {
    grid-template-columns: 1fr;
  }

  .newsletter__form input {
    border-right: 1px solid rgba(88, 68, 38, 0.44);
  }

  .newsletter__form button {
    margin-top: 8px;
  }

  .site-footer__top {
    grid-template-columns: 1fr;
  }

  .footer-statement {
    padding-left: 20px;
  }

  .footer-links {
    grid-column: auto;
  }

  .site-footer__bottom {
    flex-direction: column;
  }

  .inner-nav {
    min-height: 78px;
    padding-top: 13px;
    padding-bottom: 13px;
  }

  .inner-nav .brand__monogram {
    width: 34px;
    height: 34px;
  }

  .inner-nav .brand__name {
    font-size: 20px;
  }

  .inner-nav .brand__descriptor {
    font-size: 5.7px;
  }

  .inner-nav__back {
    font-size: 6.5px;
  }

  .inner-hero,
  .inner-hero--journal {
    min-height: 330px;
    padding-top: 120px;
  }

  .inner-hero h1 {
    font-size: clamp(45px, 13vw, 62px);
  }

  .legal-document > aside {
    padding-left: 18px;
  }

  .journal-entry h2 {
    font-size: clamp(34px, 10vw, 45px);
  }

  .inner-footer {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .nav-shell,
  .hero__eyebrow,
  .hero__lower,
  .hero-line > span,
  [data-reveal] {
    opacity: 1;
    transform: none;
  }

  .partners__track {
    animation: none;
  }
}


/* ---------------------------------------------------------
   VANTAGE POINT — conversion, FAQ, newsletter and footer refresh
   --------------------------------------------------------- */

.button {
  min-height: 46px;
  padding: 0 18px 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid transparent;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: color 0.3s ease, background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.button:hover {
  transform: translateY(-1px);
}

.button--dark {
  color: var(--ivory-bright);
  background: #1f201b;
  border-color: #1f201b;
}

.button--dark:hover {
  color: #1b1b18;
  background: #e0b95e;
  border-color: #e0b95e;
}

.button--gold {
  color: #171713;
  background: #dfbc75;
  border-color: #dfbc75;
}

.button--gold:hover {
  color: var(--ivory-bright);
  background: transparent;
  border-color: rgba(225, 188, 98, 0.6);
}

.project-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 22px;
  margin-top: 24px;
}

.project-panel__link {
  margin-top: 0;
}

.project-panel__link--primary {
  min-height: 44px;
  padding: 0 16px 0 18px;
  border: 1px solid rgba(225, 188, 98, 0.5);
  border-bottom-width: 1px;
  color: var(--ivory-bright);
  background: rgba(16, 17, 15, 0.28);
}

.project-panel__link--secondary {
  color: rgba(248, 243, 233, 0.82);
}

.release-card__source {
  width: max-content;
  margin-top: 10px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #564d3e;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(86, 77, 62, 0.25);
  padding-bottom: 5px;
}

.release-card__source:hover {
  color: #1d1d1a;
  border-color: rgba(29, 29, 26, 0.4);
}

.faq {
  align-items: start;
  gap: clamp(34px, 4vw, 54px);
  background: linear-gradient(180deg, #d8cfc0 0%, #d0c4b3 100%);
}

.faq__aside {
  display: grid;
  gap: 22px;
}

.faq__shell {
  position: relative;
  z-index: 1;
  padding: 20px 22px 22px;
  border: 1px solid rgba(94, 70, 31, 0.2);
  background: rgba(248, 243, 233, 0.32);
  box-shadow: 0 18px 45px rgba(67, 53, 28, 0.07);
}

.faq__support {
  max-width: 420px;
  padding: 22px 22px 24px;
  border: 1px solid rgba(112, 83, 35, 0.22);
  background: rgba(248, 243, 233, 0.4);
}

.faq__support h3 {
  margin: 0 0 10px;
  font-family: var(--font-display);
  font-size: clamp(25px, 2vw, 31px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.03em;
}

.faq__support p:not(.mini-label) {
  margin: 0;
  color: #3e3931;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
}

.faq__support-actions {
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px 18px;
  align-items: center;
}

.faq__list {
  border-top: 0;
}

.faq__list details {
  padding: 0 4px;
}

.faq__list summary {
  min-height: 66px;
}

.faq__note {
  margin: 18px 4px 0;
}

.newsletter {
  align-items: stretch;
  gap: clamp(34px, 5vw, 72px);
  background: linear-gradient(180deg, #c7baa7 0%, #bfae98 100%);
}

.newsletter__benefits {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.newsletter__benefits span {
  padding: 10px 14px;
  border: 1px solid rgba(97, 71, 31, 0.3);
  color: #322f29;
  background: rgba(248, 243, 233, 0.28);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.newsletter__card {
  position: relative;
  z-index: 1;
  padding: 24px;
  border: 1px solid rgba(96, 70, 31, 0.24);
  background: rgba(248, 243, 233, 0.4);
  box-shadow: 0 20px 50px rgba(69, 50, 21, 0.08);
}

.newsletter__card-top {
  margin-bottom: 22px;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: start;
}

.newsletter__card-top strong {
  display: block;
  margin-top: 7px;
  color: #191913;
  font-family: var(--font-display);
  font-size: clamp(22px, 1.8vw, 28px);
  font-weight: 400;
  line-height: 1.05;
}

.newsletter__frequency {
  min-width: 92px;
  padding: 10px 12px;
  border: 1px solid rgba(93, 69, 30, 0.22);
  color: #6f5327;
  background: rgba(248, 243, 233, 0.32);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-align: center;
  text-transform: uppercase;
}

.newsletter__form {
  max-width: none;
}

.newsletter__status[data-state="success"],
.contact-form__status[data-state="success"] {
  color: #264b2f;
}

.newsletter__status[data-state="error"],
.contact-form__status[data-state="error"] {
  color: #7b2d24;
}

.site-footer {
  padding-top: clamp(38px, 3.5vw, 54px);
}

.site-footer__shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(280px, 0.74fr) minmax(420px, 1fr);
  gap: clamp(28px, 4vw, 42px);
  align-items: start;
}

.site-footer__intro {
  max-width: 360px;
}

.site-footer__strap {
  margin: 20px 0 0;
  color: rgba(248, 243, 233, 0.8);
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.site-footer__intro h2 {
  margin: 18px 0 14px;
  font-family: var(--font-display);
  font-size: clamp(36px, 3vw, 47px);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.site-footer__intro h2 em {
  color: #d5b26a;
  font-weight: 400;
}

.site-footer__intro-copy {
  margin: 0;
  color: rgba(248, 243, 233, 0.72);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.62;
}

.footer-direct {
  padding: 12px 0 0;
}

.footer-methods {
  display: grid;
  gap: 12px;
}

.footer-method {
  padding: 16px 16px 18px;
  display: block;
  border: 1px solid rgba(225, 188, 98, 0.18);
  background: rgba(248, 243, 233, 0.03);
  transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}

.footer-method:hover {
  transform: translateY(-2px);
  border-color: rgba(225, 188, 98, 0.42);
  background: rgba(248, 243, 233, 0.06);
}

.footer-method small {
  display: block;
  margin-bottom: 9px;
  color: #c7a55e;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.footer-method strong {
  display: block;
  color: var(--ivory-bright);
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.03em;
}

.footer-method span {
  display: block;
  margin-top: 8px;
  color: rgba(248, 243, 233, 0.66);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.55;
}

.footer-form {
  padding: 24px;
  border: 1px solid rgba(225, 188, 98, 0.2);
  background:
    radial-gradient(circle at top right, rgba(205, 167, 80, 0.08), transparent 34%),
    rgba(248, 243, 233, 0.04);
}

.footer-form__intro h3 {
  margin: 10px 0 12px;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.3vw, 37px);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.04em;
}

.footer-form__intro p:last-child {
  max-width: 520px;
  margin: 0 0 22px;
  color: rgba(248, 243, 233, 0.72);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.58;
}

.contact-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

.contact-form label {
  display: block;
}

.contact-form label > span {
  display: block;
  margin-bottom: 8px;
  color: rgba(248, 243, 233, 0.74);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(225, 188, 98, 0.2);
  outline: none;
  color: var(--ivory-bright);
  background: rgba(12, 13, 12, 0.34);
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 600;
  transition: border-color 0.25s ease, background 0.25s ease;
}

.contact-form input,
.contact-form select {
  height: 52px;
  padding: 0 14px;
}

.contact-form textarea {
  min-height: 132px;
  padding: 14px;
  resize: vertical;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: rgba(248, 243, 233, 0.34);
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: rgba(225, 188, 98, 0.5);
  background: rgba(12, 13, 12, 0.52);
}

.contact-form__full {
  grid-column: 1 / -1;
}

.contact-form .button {
  margin-top: 18px;
}

.contact-form__note,
.contact-form__status {
  margin: 12px 0 0;
  color: rgba(248, 243, 233, 0.58);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}

.footer-links {
  grid-column: 1 / -1;
  padding-top: 26px;
  border-top: 1px solid rgba(238, 232, 220, 0.12);
  grid-template-columns: repeat(3, minmax(140px, 1fr));
}

.footer-socials--labels {
  display: grid;
  gap: 8px;
}

.footer-socials--labels a {
  width: auto;
  height: auto;
  padding: 10px 12px;
  place-items: start;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.whatsapp-float {
  position: fixed;
  z-index: 120;
  right: 22px;
  bottom: 20px;
  min-height: 56px;
  padding: 10px 16px 10px 12px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(225, 188, 98, 0.32);
  border-radius: 999px;
  color: var(--ivory-bright);
  background: rgba(16, 17, 15, 0.88);
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(18px);
}

.whatsapp-float:hover {
  border-color: rgba(225, 188, 98, 0.52);
  background: rgba(16, 17, 15, 0.96);
}

.whatsapp-float__icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #171713;
  background: #dfbc75;
}

.whatsapp-float__icon svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.whatsapp-float__label {
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

@media (max-width: 1180px) {
  .site-footer__shell {
    grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1fr);
  }

  .footer-form {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .project-panel__actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .project-panel__link--primary {
    width: max-content;
  }

  .faq {
    gap: 28px;
  }

  .faq__shell {
    padding: 18px;
  }

  .newsletter__card-top {
    display: block;
  }

  .newsletter__frequency {
    display: inline-block;
    margin-top: 14px;
  }

  .site-footer__shell,
  .site-footer__top {
    grid-template-columns: 1fr;
  }

  .contact-form__grid {
    grid-template-columns: 1fr;
  }

  .footer-links {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .faq__support {
    padding: 18px;
  }

  .newsletter__card,
  .footer-form {
    padding: 18px;
  }

  .footer-method strong {
    font-size: 21px;
  }

  .footer-links {
    grid-template-columns: 1fr;
  }

  .whatsapp-float {
    right: 12px;
    bottom: 12px;
    padding-right: 14px;
  }

  .whatsapp-float__label {
    display: none;
  }
}


/* =========================================================
   VANTAGE REFINEMENT PASS — cleaner services, newsletter, footer
   ========================================================= */

.services--refined {
  padding-top: clamp(42px, 3.4vw, 54px);
  padding-bottom: clamp(44px, 3.6vw, 56px);
}

.services--refined .services__header {
  margin-bottom: 10px;
}

.service-list--refined {
  border-top: 1px solid rgba(18, 19, 16, 0.16);
}

.service-row--refined {
  min-height: 0;
  padding: 18px 0;
  display: grid;
  grid-template-columns: 56px minmax(220px, 0.75fr) minmax(280px, 1fr) minmax(160px, 0.45fr) 24px;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid rgba(18, 19, 16, 0.16);
  color: var(--ink);
  text-decoration: none;
  transition: padding 0.3s ease, color 0.25s ease, background 0.25s ease;
}

.service-row--refined:hover {
  padding-left: 10px;
  color: #6f562c;
  background: rgba(214, 203, 185, 0.24);
}

.service-row--refined .service-row__number {
  align-self: start;
  padding-top: 9px;
  color: #8a7859;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
}

.service-row--refined .service-row__title {
  gap: 0;
}

.service-row--refined h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(26px, 2.15vw, 40px);
  font-weight: 400;
  letter-spacing: -0.03em;
}

.service-row--refined p {
  margin: 0;
  color: #403c35;
  font-size: clamp(14px, 0.92vw, 16px);
  font-weight: 600;
  line-height: 1.58;
}

.service-row--refined strong {
  color: #7d6a4d;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.service-row--refined > i {
  justify-self: end;
  font-size: 18px;
  font-style: normal;
}

.newsletter--refined {
  padding-top: clamp(44px, 3.4vw, 54px);
  padding-bottom: clamp(44px, 3.4vw, 54px);
  grid-template-columns: minmax(280px, 0.8fr) minmax(480px, 1fr);
  gap: clamp(42px, 5vw, 74px);
  align-items: end;
  color: var(--ink);
  background: #e4dacd;
  border-top: 1px solid rgba(117, 89, 40, 0.25);
  border-bottom: 1px solid rgba(117, 89, 40, 0.25);
}

.newsletter--refined::before {
  display: none;
}

.newsletter--refined .newsletter__copy {
  max-width: 520px;
}

.newsletter--refined .newsletter__copy > p:last-of-type {
  max-width: 470px;
  margin: 0;
  color: #3d3830;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
}

.newsletter--refined .newsletter__points {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
}

.newsletter--refined .newsletter__points li {
  position: relative;
  padding-left: 18px;
  color: #4b443a;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.newsletter--refined .newsletter__points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 8px;
  height: 1px;
  background: #866536;
}

.newsletter__form--refined {
  padding: 8px 0 8px 44px;
  border-left: 1px solid rgba(117, 89, 40, 0.22);
  background: transparent;
}

.newsletter__form--refined > label {
  margin-bottom: 14px;
}

.newsletter__eyebrow {
  display: block;
  margin: 10px 0 22px;
  color: #171713;
  font-family: var(--font-display);
  font-size: clamp(26px, 2vw, 34px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.newsletter__row {
  display: grid;
  grid-template-columns: 1fr 210px;
}

.newsletter__form--refined input {
  height: 60px;
  padding: 0 0 0 16px;
  border: 1px solid rgba(88, 68, 38, 0.28);
  border-right: 0;
  background: rgba(255, 255, 255, 0.32);
}

.newsletter__form--refined button {
  height: 60px;
}

.newsletter__form--refined .newsletter__privacy,
.newsletter__form--refined .newsletter__status {
  margin-top: 12px;
}

.site-footer--refined {
  padding-top: clamp(50px, 3.8vw, 62px);
  padding-bottom: 22px;
  background:
    radial-gradient(circle at 18% 0%, rgba(205, 167, 80, 0.08), transparent 30%),
    linear-gradient(180deg, #1c1d1a 0%, #121310 100%);
}

.site-footer--refined .site-footer__glow {
  left: 18%;
  width: 280px;
  height: 200px;
  background: rgba(205, 167, 80, 0.05);
}

.site-footer--refined .site-footer__shell {
  grid-template-columns: minmax(260px, 0.82fr) minmax(230px, 0.62fr) minmax(380px, 1fr);
  gap: clamp(28px, 4vw, 52px);
}

.site-footer--refined .site-footer__intro {
  max-width: 380px;
}

.site-footer--refined .site-footer__strap {
  margin-top: 24px;
}

.site-footer--refined .site-footer__intro h2 {
  margin: 16px 0 16px;
  font-size: clamp(38px, 3.2vw, 50px);
}

.site-footer--refined .site-footer__intro-copy {
  max-width: 340px;
}

.footer-direct--refined {
  padding-top: 14px;
}

.footer-lines {
  display: grid;
  gap: 0;
}

.footer-line {
  display: block;
  padding: 12px 0 16px;
  border-bottom: 1px solid rgba(225, 188, 98, 0.14);
  text-decoration: none;
}

.footer-line small {
  display: block;
  margin-bottom: 7px;
  color: #c6a45d;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.footer-line strong {
  display: block;
  color: var(--ivory-bright);
  font-family: var(--font-display);
  font-size: clamp(25px, 2vw, 32px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -0.03em;
  transition: color 0.25s ease;
}

.footer-line:hover strong {
  color: #dfbc75;
}

.footer-quick-links {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.footer-quick-links a,
.footer-socials--text a {
  color: rgba(248, 243, 233, 0.76);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.footer-quick-links a:hover,
.footer-socials--text a:hover {
  color: var(--gold-bright);
}

.footer-socials--text {
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
}

.footer-form--refined {
  padding: 0 0 0 38px;
  border-left: 1px solid rgba(225, 188, 98, 0.18);
  background: transparent;
}

.footer-form--refined .footer-form__intro p:last-child {
  max-width: 440px;
}

.contact-form--refined .contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 22px;
}

.contact-form--refined label > span {
  color: rgba(248, 243, 233, 0.65);
}

.contact-form--refined input,
.contact-form--refined textarea {
  padding: 0 0 12px;
  border: 0;
  border-bottom: 1px solid rgba(225, 188, 98, 0.22);
  color: var(--ivory-bright);
  background: transparent;
  border-radius: 0;
}

.contact-form--refined input {
  height: auto;
}

.contact-form--refined textarea {
  min-height: 116px;
  padding-top: 0;
}

.contact-form--refined input:focus,
.contact-form--refined textarea:focus {
  border-color: rgba(225, 188, 98, 0.54);
  background: transparent;
}

.contact-form--refined input::placeholder,
.contact-form--refined textarea::placeholder {
  color: rgba(248, 243, 233, 0.3);
}

.contact-form--refined .contact-form__note,
.contact-form--refined .contact-form__status {
  max-width: 500px;
}

.site-footer--refined .site-footer__bottom {
  margin-top: 30px;
  padding-top: 18px;
  border-top: 1px solid rgba(238, 232, 220, 0.1);
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}

.footer-back--inline {
  margin: 0;
  padding-bottom: 5px;
  font-size: 8px;
}

.whatsapp-float {
  right: 20px;
  bottom: 18px;
  width: 56px;
  height: 56px;
  min-height: 0;
  padding: 0;
  justify-content: center;
  border-radius: 50%;
}

.whatsapp-float__icon {
  width: 22px;
  height: 22px;
  background: transparent;
  color: #dfbc75;
}

.whatsapp-float__icon svg {
  width: 22px;
  height: 22px;
}

.whatsapp-float__label {
  display: none;
}

@media (max-width: 1180px) {
  .service-row--refined {
    grid-template-columns: 40px minmax(200px, 0.8fr) minmax(220px, 1fr) 24px;
  }

  .service-row--refined strong {
    display: none;
  }

  .site-footer--refined .site-footer__shell {
    grid-template-columns: 1fr 1fr;
  }

  .footer-form--refined {
    grid-column: 1 / -1;
    padding-left: 0;
    border-left: 0;
    padding-top: 14px;
    border-top: 1px solid rgba(238, 232, 220, 0.1);
  }
}

@media (max-width: 820px) {
  .service-row--refined {
    grid-template-columns: 34px 1fr 18px;
    gap: 12px;
    padding: 16px 0;
  }

  .service-row--refined .service-row__title,
  .service-row--refined p {
    grid-column: 2 / 3;
  }

  .service-row--refined p {
    margin-top: -6px;
  }

  .service-row--refined > i {
    grid-column: 3;
    grid-row: 1 / 3;
  }

  .newsletter--refined {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .newsletter__form--refined {
    padding: 24px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(117, 89, 40, 0.18);
  }

  .site-footer--refined .site-footer__shell {
    grid-template-columns: 1fr;
  }

  .footer-direct--refined,
  .footer-form--refined {
    padding-top: 0;
    border-top: 0;
  }

  .footer-form--refined {
    padding-left: 0;
  }
}

@media (max-width: 560px) {
  .newsletter__row {
    grid-template-columns: 1fr;
  }

  .newsletter__form--refined input {
    border-right: 1px solid rgba(88, 68, 38, 0.28);
  }

  .newsletter__form--refined button {
    margin-top: 10px;
  }

  .contact-form--refined .contact-form__grid {
    grid-template-columns: 1fr;
  }

  .site-footer--refined .site-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* =========================================================
   VANTAGE POLISHED PASS — FAQ, newsletter, footer, better icons
   ========================================================= */

.button--gold-solid {
  color: #171713;
  background: #d8b46a;
  border: 1px solid #d8b46a;
}
.button--gold-solid:hover {
  color: var(--ivory-bright);
  background: transparent;
  border-color: rgba(216,180,106,0.7);
}

/* Better icon styling in Why Dubai */
.benefit__icon {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(133, 100, 49, 0.18);
  background: rgba(255,255,255,0.38);
  color: #7f6234;
  box-shadow: 0 8px 24px rgba(77, 59, 28, 0.06);
}
.benefit__icon svg {
  width: 19px;
  height: 19px;
  stroke-width: 1.6;
}

.faq--polished {
  background: #e7ddd0;
  gap: clamp(44px, 5vw, 72px);
}
.faq--polished .faq__intro {
  max-width: 470px;
}
.faq--polished .faq__lead {
  margin-top: 18px;
  color: #5e5548;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.75;
}
.faq__support--polished {
  margin-top: 18px;
  padding: 24px 24px 22px;
  border: 1px solid rgba(115, 87, 42, 0.18);
  background: rgba(255,255,255,0.46);
  box-shadow: 0 15px 34px rgba(69,50,21,0.05);
}
.faq__support--polished h3 {
  margin-bottom: 8px;
  font-size: clamp(28px, 2.1vw, 34px);
}
.faq__support--polished p:not(.mini-label) {
  color: #5d5448;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.68;
}
.faq__mini-contact {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #221f1a;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.faq__mini-contact-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(115,87,42,0.22);
  background: rgba(255,255,255,0.52);
  color: #7d6136;
}
.faq__mini-contact-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.faq__shell--polished {
  padding: 20px 26px 20px;
  background: rgba(255,255,255,0.42);
  border: 1px solid rgba(115,87,42,0.16);
}
.faq--polished .faq__list summary {
  gap: 18px;
  align-items: center;
}
.faq--polished .faq__list summary > span {
  color: #a18c6f;
  font-size: 10px;
  font-weight: 700;
}
.faq--polished .faq__list summary strong {
  color: #1e1c18;
  font-size: clamp(20px, 1.8vw, 26px);
  font-weight: 400;
  letter-spacing: -0.02em;
}
.faq--polished .faq__list summary i {
  width: 34px;
  height: 34px;
  margin-left: auto;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(115,87,42,0.2);
}
.faq--polished .faq__list summary i::before,
.faq--polished .faq__list summary i::after {
  background: #8a6e44;
}
.faq--polished .faq__list details p {
  padding-right: 44px;
  color: #5d5549;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.72;
}
.faq--polished .faq__note {
  margin-top: 16px;
  color: #7f725d;
}

.newsletter--polished {
  padding-top: clamp(48px, 4vw, 62px);
  padding-bottom: clamp(48px, 4vw, 62px);
  background: linear-gradient(180deg, #e6ddd0 0%, #e2d7c9 100%);
  border-top: 1px solid rgba(111, 84, 42, 0.18);
  border-bottom: 1px solid rgba(111, 84, 42, 0.18);
}
.newsletter--polished::before { display:none; }
.newsletter__inner {
  width: min(1280px, calc(100vw - 56px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(420px, 1fr);
  gap: clamp(42px, 5vw, 74px);
  align-items: center;
}
.newsletter--polished .newsletter__copy { max-width: 520px; }
.newsletter--polished .newsletter__lead {
  margin: 18px 0 0;
  color: #4a4339;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
}
.newsletter__tags {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.newsletter__tags span {
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(111,84,42,0.16);
  background: rgba(255,255,255,0.46);
  color: #5a4d3b;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.newsletter__panel {
  padding: 30px 34px;
  border: 1px solid rgba(111,84,42,0.16);
  background: rgba(255,255,255,0.66);
  box-shadow: 0 20px 45px rgba(82,62,29,0.06);
}
.newsletter__panel-top {
  margin-bottom: 18px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: start;
}
.newsletter__stamp {
  min-width: 88px;
  padding: 10px 12px;
  border: 1px solid rgba(111,84,42,0.18);
  color: #7c6339;
  background: rgba(230,221,208,0.6);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-align: center;
}
.newsletter__form--polished {
  max-width: none;
}
.newsletter__form--polished > label {
  margin-bottom: 10px;
  color: #6b5d49;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.newsletter__row--polished {
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: 0;
}
.newsletter__row--polished input {
  height: 58px;
  padding: 0 18px;
  border: 1px solid rgba(111,84,42,0.2);
  border-right: 0;
  background: #fffdfa;
  color: #1a1815;
  font-size: 16px;
  font-weight: 550;
}
.newsletter__row--polished input::placeholder { color:#8f8679; }
.newsletter__row--polished button {
  height: 58px;
  color: #171713;
  background: #d8b46a;
  border: 1px solid #d8b46a;
}
.newsletter__row--polished button:hover {
  color: #171713;
  background: #d0aa5b;
}
.newsletter--polished .newsletter__privacy,
.newsletter--polished .newsletter__status {
  margin-top: 12px;
  color: #706451;
}
.newsletter--polished .newsletter__privacy a { color:#2a241d; }

.site-footer--polished {
  padding-top: clamp(54px, 4vw, 68px);
  padding-bottom: 24px;
  background:
    radial-gradient(circle at 16% 12%, rgba(218,180,106,0.08), transparent 28%),
    linear-gradient(180deg, #171816 0%, #11120f 100%);
}
.site-footer__shell--polished {
  grid-template-columns: minmax(250px, 0.78fr) minmax(280px, 0.72fr) minmax(420px, 1fr);
  gap: clamp(28px, 4vw, 46px);
  align-items: start;
}
.site-footer--polished .site-footer__intro {
  max-width: 370px;
}
.site-footer--polished .site-footer__intro h2 {
  margin: 18px 0 16px;
  font-size: clamp(39px, 3vw, 52px);
}
.site-footer--polished .site-footer__intro-copy {
  color: rgba(248,243,233,0.74);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.72;
}
.footer-socials--icons {
  margin-top: 28px;
  display: flex;
  gap: 12px;
}
.footer-socials--icons a {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(218,180,106,0.24);
  background: rgba(255,255,255,0.03);
  color: rgba(248,243,233,0.85);
  transition: transform .25s ease, border-color .25s ease, color .25s ease, background .25s ease;
}
.footer-socials--icons a:hover {
  transform: translateY(-2px);
  border-color: rgba(218,180,106,0.46);
  color: #dfbc75;
  background: rgba(255,255,255,0.06);
}
.footer-socials--icons svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.footer-socials--icons a:nth-child(2) svg,
.footer-socials--icons a:nth-child(3) svg { fill: currentColor; stroke:none; }

.footer-contact-card {
  padding: 24px 24px 20px;
  border: 1px solid rgba(218,180,106,0.16);
  background: rgba(255,255,255,0.035);
}
.footer-contact-card__rows { margin-top: 8px; }
.footer-contact-row {
  padding: 14px 0;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 14px;
  align-items: center;
  border-bottom: 1px solid rgba(218,180,106,0.11);
  text-decoration:none;
}
.footer-contact-row:last-child { border-bottom:0; }
.footer-contact-row__icon {
  width: 44px;
  height: 44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(218,180,106,0.18);
  color:#d8b46a;
}
.footer-contact-row__icon svg {
  width: 18px;
  height: 18px;
  fill:none;
  stroke: currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-contact-row:first-child .footer-contact-row__icon svg { fill: currentColor; stroke:none; }
.footer-contact-row__text small {
  display:block;
  margin-bottom:5px;
  color:#c9ab6f;
  font-size:8px;
  font-weight:760;
  letter-spacing:0.18em;
  text-transform:uppercase;
}
.footer-contact-row__text strong {
  color: var(--ivory-bright);
  font-family: var(--font-display);
  font-size: clamp(24px, 1.85vw, 30px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.footer-quick-links--polished {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(238,232,220,0.08);
}
.footer-form-card {
  padding: 28px 30px;
  border: 1px solid rgba(218,180,106,0.12);
  background: #f6f0e7;
  color: #201c17;
  box-shadow: 0 24px 55px rgba(0,0,0,0.12);
}
.footer-form-card__intro h3 {
  margin: 10px 0 10px;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.2vw, 40px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.03em;
}
.footer-form-card__intro p:last-child {
  margin: 0 0 22px;
  color: #5c5245;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.65;
}
.contact-form--polished label > span {
  color: #8d7754;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}
.contact-form__grid--polished {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 18px;
}
.contact-form--polished input,
.contact-form--polished textarea {
  width: 100%;
  border: 1px solid rgba(120, 95, 56, 0.22);
  background: #fffdfa;
  color: #1c1813;
  font-size: 15px;
  font-weight: 550;
  transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.contact-form--polished input {
  height: 52px;
  padding: 0 14px;
}
.contact-form--polished textarea {
  min-height: 118px;
  padding: 14px;
  resize: vertical;
}
.contact-form--polished input::placeholder,
.contact-form--polished textarea::placeholder { color:#9b907f; }
.contact-form--polished input:focus,
.contact-form--polished textarea:focus {
  border-color: rgba(120,95,56,0.5);
  box-shadow: 0 0 0 3px rgba(216,180,106,0.12);
  background: #ffffff;
}
.contact-form__actions {
  margin-top: 18px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
  align-items: center;
}
.contact-form--polished .contact-form__note,
.contact-form--polished .contact-form__status {
  margin: 0;
  color: #6e6250;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}
.contact-form--polished .contact-form__status { margin-top:12px; }
.site-footer__bottom--polished {
  margin-top: 30px;
  padding-top: 18px;
  border-top: 1px solid rgba(238,232,220,0.1);
  display:flex;
  justify-content: space-between;
  align-items:center;
}
.whatsapp-float {
  width: 58px;
  height: 58px;
  right: 18px;
  bottom: 18px;
  border: 1px solid rgba(218,180,106,0.26);
  background: rgba(17,18,15,0.94);
}
.whatsapp-float__icon {
  width: auto;
  height: auto;
  color: #d8b46a;
}
.whatsapp-float__icon svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
}

@media (max-width: 1180px) {
  .newsletter__inner {
    grid-template-columns: 1fr;
  }
  .site-footer__shell--polished {
    grid-template-columns: 1fr 1fr;
  }
  .footer-form-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .faq--polished { gap: 28px; }
  .newsletter__panel { padding: 22px; }
  .site-footer__shell--polished { grid-template-columns: 1fr; }
  .contact-form__actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .newsletter__row--polished {
    grid-template-columns: 1fr;
  }
  .newsletter__row--polished input {
    border-right: 1px solid rgba(111,84,42,0.2);
  }
  .newsletter__row--polished button {
    margin-top: 10px;
  }
  .contact-form__grid--polished {
    grid-template-columns: 1fr;
  }
  .footer-contact-card,
  .footer-form-card {
    padding: 20px;
  }
  .site-footer__bottom--polished {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}

/* =========================================================
   FINAL CONTACT + FOOTER REDESIGN
   ========================================================= */
.contact-suite{position:relative;padding:clamp(58px,5vw,82px) var(--page-pad);color:#1c1915;background:#f3eee6;border-top:1px solid rgba(120,93,53,.18)}
.contact-suite__inner{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(560px,1fr);gap:clamp(54px,7vw,108px);align-items:start}
.contact-suite__intro{max-width:500px}.contact-suite__intro h2{margin:24px 0 20px;font-family:var(--font-display);font-size:clamp(46px,4.5vw,70px);font-weight:400;line-height:.94;letter-spacing:-.05em}.contact-suite__intro h2 em{color:#9a7640;font-weight:400}.contact-suite__intro>p:last-of-type{max-width:450px;margin:0;color:#5c5449;font-size:clamp(15px,1vw,17px);font-weight:500;line-height:1.72}
.contact-suite__direct{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-suite__direct>a{min-height:78px;padding:14px 16px;display:flex;align-items:center;gap:13px;border:1px solid rgba(120,93,53,.15);background:rgba(255,255,255,.56);transition:transform .25s ease,border-color .25s ease,background .25s ease}.contact-suite__direct>a:hover{transform:translateY(-2px);border-color:rgba(120,93,53,.3);background:rgba(255,255,255,.78)}
.contact-suite__direct-icon{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#92703b;background:#efe5d5}.contact-suite__direct-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-suite__direct>a:first-child .contact-suite__direct-icon svg{fill:currentColor;stroke:none}.contact-suite__direct small{display:block;margin-bottom:5px;color:#9a7a4b;font-size:8px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.contact-suite__direct strong{color:#26211b;font-family:var(--font-display);font-size:20px;font-weight:400;line-height:1.05}
.contact-suite__form{padding:30px 32px 28px;border:1px solid rgba(120,93,53,.16);background:rgba(255,255,255,.68);box-shadow:0 22px 55px rgba(72,55,31,.055)}.contact-suite__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-suite__form label{display:block}.contact-suite__form label>span{display:block;margin-bottom:8px;color:#8b734f;font-size:9px;font-weight:760;letter-spacing:.17em;text-transform:uppercase}.contact-suite__form input,.contact-suite__form textarea{width:100%;border:1px solid rgba(120,93,53,.17);outline:none;color:#1c1915;background:#fffdfa;font-family:var(--font-sans);font-size:15px;font-weight:550;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.contact-suite__form input{height:52px;padding:0 14px}.contact-suite__form textarea{min-height:108px;padding:14px;resize:vertical}.contact-suite__form input::placeholder,.contact-suite__form textarea::placeholder{color:#9b9184}.contact-suite__form input:focus,.contact-suite__form textarea:focus{border-color:rgba(154,118,64,.48);box-shadow:0 0 0 3px rgba(154,118,64,.08);background:#fff}.contact-suite__message{grid-column:1/-1}.contact-suite__form-bottom{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:24px}.contact-suite__submit{min-width:176px;height:50px;padding:0 17px 0 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #1c1d1a;color:#f7f1e7;background:#1c1d1a;cursor:pointer;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase;transition:color .25s ease,background .25s ease,border-color .25s ease}.contact-suite__submit:hover{color:#1c1d1a;border-color:#c49b58;background:#d9b874}.contact-suite__form-bottom p,.contact-suite .contact-form__status{margin:0;color:#72695e;font-size:11px;font-weight:500;line-height:1.55}.contact-suite__form-bottom a{text-decoration:underline;text-underline-offset:3px}.contact-suite .contact-form__status{margin-top:10px}
.lux-footer{position:relative;padding:54px var(--page-pad) 22px;overflow:hidden;color:#f3eee5;background:radial-gradient(circle at 9% 0%,rgba(201,163,92,.07),transparent 24%),linear-gradient(180deg,#191a17 0%,#11120f 100%)}.lux-footer__top{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(280px,1.1fr) minmax(250px,.78fr) minmax(150px,.48fr) minmax(170px,.5fr);gap:clamp(32px,4vw,64px);align-items:start}.lux-footer__brand>p{max-width:260px;margin:22px 0 0;color:rgba(243,238,229,.58);font-size:13px;font-weight:550;line-height:1.55}.lux-footer__label{margin:0 0 16px;color:#c4a269;font-size:8px;font-weight:760;letter-spacing:.2em;text-transform:uppercase}.lux-footer__contact,.lux-footer__nav,.lux-footer__social{padding-top:6px}.lux-footer__contact a{width:max-content;max-width:100%;margin-bottom:8px;display:block;color:#f3eee5;font-family:var(--font-display);font-size:22px;font-weight:400;line-height:1.2}.lux-footer__contact span{display:block;margin-top:16px;color:rgba(243,238,229,.48);font-size:10px;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.lux-footer__nav>div{display:grid;gap:9px}.lux-footer__nav a{width:max-content;color:rgba(243,238,229,.72);font-size:12px;font-weight:600}.lux-footer__nav a:hover,.lux-footer__contact a:hover{color:#d8b46a}.lux-footer__social-icons{display:flex;gap:10px}.lux-footer__social-icons a{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(216,180,106,.2);color:rgba(243,238,229,.82);transition:transform .25s ease,border-color .25s ease,color .25s ease,background .25s ease}.lux-footer__social-icons a:hover{transform:translateY(-2px);color:#d8b46a;border-color:rgba(216,180,106,.46);background:rgba(255,255,255,.035)}.lux-footer__social-icons svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}.lux-footer__social-icons a:nth-child(2) svg,.lux-footer__social-icons a:nth-child(3) svg{fill:currentColor;stroke:none}
.lux-footer__statement{width:min(1320px,100%);margin:46px auto 0;padding:24px 0 22px;display:flex;justify-content:space-between;gap:28px;align-items:baseline;border-top:1px solid rgba(243,238,229,.09);border-bottom:1px solid rgba(243,238,229,.09)}.lux-footer__statement>span{color:rgba(243,238,229,.42);font-size:9px;font-weight:750;letter-spacing:.18em;text-transform:uppercase}.lux-footer__statement strong{color:#e0c489;font-family:var(--font-display);font-size:clamp(24px,2vw,31px);font-weight:400}.lux-footer__bottom{width:min(1320px,100%);margin:0 auto;padding-top:18px;display:flex;justify-content:space-between;gap:24px;align-items:center;color:rgba(243,238,229,.44);font-size:8px;font-weight:680;letter-spacing:.15em;text-transform:uppercase}.lux-footer__bottom>div{display:flex;gap:20px}.lux-footer__bottom a:hover{color:#d8b46a}
@media(max-width:1180px){.contact-suite__inner{grid-template-columns:1fr;gap:38px}.contact-suite__intro{max-width:720px}.contact-suite__direct{max-width:620px}.lux-footer__top{grid-template-columns:1fr 1fr 1fr}.lux-footer__brand{grid-column:1/-1;padding-bottom:22px;border-bottom:1px solid rgba(243,238,229,.08)}}
@media(max-width:820px){.contact-suite{padding-top:48px;padding-bottom:48px}.contact-suite__direct{grid-template-columns:1fr}.contact-suite__form{padding:24px}.contact-suite__form-grid{grid-template-columns:1fr}.contact-suite__message{grid-column:auto}.contact-suite__form-bottom{align-items:flex-start;flex-direction:column}.lux-footer__top{grid-template-columns:1fr 1fr}.lux-footer__social{grid-column:2}}
@media(max-width:560px){.contact-suite__intro h2{font-size:clamp(42px,12vw,54px)}.contact-suite__form{padding:18px}.lux-footer{padding-top:44px}.lux-footer__top{grid-template-columns:1fr;gap:30px}.lux-footer__social{grid-column:auto}.lux-footer__statement,.lux-footer__bottom{align-items:flex-start;flex-direction:column}.lux-footer__bottom>div{flex-wrap:wrap;gap:12px 18px}}

/* =========================================================
   WHY DUBAI / INVESTMENT GUIDE PAGE
   ========================================================= */

.investment-page {
  color: var(--ink);
  background: var(--ivory-bright);
}

.invest-hero {
  position: relative;
  min-height: 94svh;
  height: min(960px, 94svh);
  overflow: hidden;
  color: var(--ivory-bright);
  background: #12130f;
}

.invest-hero__media,
.invest-hero__shade,
.invest-hero__frame {
  position: absolute;
  inset: 0;
}

.invest-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 52% 52%;
  filter: saturate(.78) contrast(1.02) brightness(.82);
  transform: scale(1.015);
}

.invest-hero__shade {
  background:
    linear-gradient(90deg, rgba(8,9,8,.78) 0%, rgba(8,9,8,.52) 38%, rgba(8,9,8,.14) 67%, rgba(8,9,8,.24) 100%),
    linear-gradient(180deg, rgba(7,8,7,.38), transparent 32%, rgba(7,8,7,.46));
}

.invest-hero__frame {
  top: 104px;
  right: 22px;
  bottom: 22px;
  left: 22px;
  border: 1px solid rgba(225,188,98,.28);
  pointer-events: none;
}

.invest-hero__content {
  position: absolute;
  z-index: 4;
  left: var(--page-pad);
  right: var(--page-pad);
  bottom: clamp(72px, 9vh, 110px);
}

.invest-hero__eyebrow {
  margin: 0 0 22px;
  color: rgba(248,243,233,.72);
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.invest-hero h1 {
  max-width: 980px;
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(58px, 7.1vw, 112px);
  font-weight: 400;
  line-height: .86;
  letter-spacing: -.055em;
}

.invest-hero h1 span,
.invest-hero h1 em {
  display: block;
}

.invest-hero h1 em {
  margin-top: 8px;
  color: #d9bc7a;
  font-weight: 400;
}

.invest-hero__lower {
  max-width: 930px;
  margin-top: 32px;
  padding-top: 24px;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  gap: 44px;
  align-items: end;
  border-top: 1px solid rgba(248,243,233,.22);
}

.invest-hero__lower > p {
  max-width: 590px;
  margin: 0;
  color: rgba(248,243,233,.84);
  font-size: clamp(15px, 1vw, 17px);
  font-weight: 550;
  line-height: 1.65;
}

.invest-hero__actions {
  display: grid;
  gap: 4px;
}

.invest-hero__index {
  position: absolute;
  z-index: 5;
  right: var(--page-pad);
  bottom: 40px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(248,243,233,.58);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.invest-hero__index i {
  width: 38px;
  height: 1px;
  background: rgba(225,188,98,.44);
}

.invest-case {
  padding: clamp(58px, 5vw, 82px) var(--page-pad) clamp(62px, 5.4vw, 88px);
  background: #f1eadf;
}

.invest-case > .section-meta {
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(30,29,25,.15);
}

.invest-case__intro {
  margin-top: clamp(32px, 3.4vw, 52px);
  display: grid;
  grid-template-columns: minmax(320px, .85fr) minmax(420px, 1fr);
  gap: clamp(50px, 7vw, 118px);
  align-items: end;
}

.invest-case__intro h2,
.invest-growth h2,
.invest-location h2,
.invest-compare h2,
.invest-checklist h2,
.invest-journey h2,
.invest-faq h2 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: -.05em;
}

.invest-case__intro h2 {
  font-size: clamp(48px, 5vw, 78px);
  line-height: .91;
}

.invest-case__intro h2 em,
.invest-growth h2 em,
.invest-location h2 em,
.invest-compare h2 em,
.invest-checklist h2 em,
.invest-journey h2 em,
.invest-faq h2 em {
  color: #80683b;
  font-weight: 400;
}

.invest-case__copy .lead {
  margin: 0 0 13px;
  color: #22211d;
  font-family: var(--font-display);
  font-size: clamp(25px, 2vw, 33px);
  font-weight: 400;
  line-height: 1.08;
}

.invest-case__copy p:last-child {
  margin: 0;
  color: #4c463d;
  font-size: 15px;
  font-weight: 560;
  line-height: 1.72;
}

.invest-case__grid {
  margin-top: clamp(44px, 4vw, 64px);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(30,29,25,.16);
  border-bottom: 1px solid rgba(30,29,25,.16);
}

.invest-case__grid article {
  min-height: 238px;
  padding: 24px 24px 28px;
  border-right: 1px solid rgba(30,29,25,.14);
}

.invest-case__grid article:last-child { border-right: 0; }
.invest-case__grid span {
  color: #a18a63;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .18em;
}
.invest-case__grid h3 {
  margin: 34px 0 13px;
  font-family: var(--font-display);
  font-size: clamp(25px, 2vw, 32px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.03em;
}
.invest-case__grid p {
  margin: 0;
  color: #544d43;
  font-size: 14px;
  font-weight: 560;
  line-height: 1.62;
}

.invest-growth {
  padding: clamp(62px, 5vw, 82px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(360px, .82fr) minmax(440px, 1fr);
  gap: clamp(50px, 6vw, 96px);
  background: #d5c9b6;
}

.invest-growth__image { margin: 0; }
.invest-growth__image img {
  width: 100%;
  height: clamp(540px, 60vw, 760px);
  object-fit: cover;
  object-position: center 55%;
  filter: saturate(.8) contrast(.98);
}
.invest-growth__image figcaption {
  margin-top: 11px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: #655a49;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.invest-growth__content {
  padding-top: 6px;
  align-self: center;
}

.invest-growth h2 {
  margin-top: 30px;
  font-size: clamp(46px, 4.2vw, 68px);
  line-height: .94;
}

.invest-growth__lead {
  max-width: 600px;
  margin: 28px 0 0;
  color: #3f3a32;
  font-size: 17px;
  font-weight: 560;
  line-height: 1.67;
}

.invest-growth__points {
  margin-top: 34px;
  border-top: 1px solid rgba(36,33,28,.16);
}
.invest-growth__points > div {
  padding: 18px 0 20px;
  display: grid;
  grid-template-columns: 38px minmax(170px,.65fr) 1fr;
  gap: 16px;
  align-items: start;
  border-bottom: 1px solid rgba(36,33,28,.15);
}
.invest-growth__points span {
  color: #8b7754;
  font-size: 9px;
  font-weight: 760;
}
.invest-growth__points strong {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 400;
  line-height: 1.05;
}
.invest-growth__points p {
  margin: 0;
  color: #554e43;
  font-size: 13.5px;
  font-weight: 560;
  line-height: 1.6;
}

.invest-location {
  padding: clamp(62px, 5vw, 82px) var(--page-pad) clamp(68px, 5.6vw, 94px);
  background: #f3eee5;
}

.invest-location__header {
  display: grid;
  grid-template-columns: minmax(360px,.9fr) minmax(350px,.62fr);
  gap: clamp(60px, 8vw, 130px);
  align-items: end;
}
.invest-location h2 {
  margin-top: 28px;
  font-size: clamp(48px, 4.7vw, 74px);
  line-height: .91;
}
.invest-location__header > p {
  max-width: 520px;
  margin: 0 0 4px;
  color: #4a443c;
  font-size: 16px;
  font-weight: 560;
  line-height: 1.7;
}
.invest-location__visuals {
  margin-top: clamp(40px, 4vw, 62px);
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr);
  gap: 18px;
}
.invest-location__visuals figure { margin:0; }
.invest-location__visuals img {
  width:100%;
  object-fit:cover;
  filter:saturate(.82) contrast(.98);
}
.invest-location__main img { height: clamp(430px, 44vw, 640px); }
.invest-location__side img { height: clamp(430px, 44vw, 640px); object-position:center; }
.invest-location__visuals figcaption {
  margin-top:10px;
  color:#786b58;
  font-size:8px;
  font-weight:760;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.invest-location__matrix {
  margin-top: 34px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  border-top:1px solid rgba(30,29,25,.16);
}
.invest-location__matrix article {
  padding:22px 26px 0 0;
  min-height:190px;
  border-right:1px solid rgba(30,29,25,.14);
}
.invest-location__matrix article + article { padding-left:26px; }
.invest-location__matrix article:last-child { border-right:0; }
.invest-location__matrix small {
  color:#937b52;
  font-size:8px;
  font-weight:760;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.invest-location__matrix h3 {
  margin:18px 0 10px;
  font-family:var(--font-display);
  font-size:26px;
  font-weight:400;
  line-height:1.05;
}
.invest-location__matrix p {
  margin:0;
  color:#5b5348;
  font-size:13.5px;
  font-weight:560;
  line-height:1.62;
}

.invest-break {
  position:relative;
  height:min(72vh, 720px);
  min-height:520px;
  overflow:hidden;
  color:var(--ivory-bright);
}
.invest-break > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(.75) contrast(1.02) brightness(.74);
}
.invest-break__overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(10,11,9,.74), rgba(10,11,9,.2) 62%, rgba(10,11,9,.12));
}
.invest-break__quote {
  position:absolute;
  left:var(--page-pad);
  bottom:clamp(52px,7vw,92px);
  max-width:800px;
}
.invest-break__quote > p {
  margin:0 0 18px;
  color:#d6b774;
  font-size:9px;
  font-weight:760;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.invest-break blockquote {
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(38px,4.2vw,66px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.04em;
}

.invest-compare {
  padding:clamp(62px,5vw,82px) var(--page-pad) clamp(68px,5.6vw,94px);
  background:#1a1b18;
  color:var(--ivory-bright);
}
.invest-compare > .section-meta {
  padding-bottom:16px;
  border-bottom:1px solid rgba(238,232,220,.14);
}
.invest-compare .section-meta,
.invest-compare .section-kicker { color:rgba(248,243,233,.66); }
.invest-compare__heading {
  margin-top:32px;
  display:grid;
  grid-template-columns:1fr minmax(320px,.56fr);
  gap:60px;
  align-items:end;
}
.invest-compare h2 {
  font-size:clamp(47px,4.5vw,72px);
  line-height:.94;
}
.invest-compare h2 em { color:#d7b56d; }
.invest-compare__heading > p {
  margin:0;
  color:rgba(248,243,233,.72);
  font-size:15px;
  font-weight:550;
  line-height:1.68;
}
.invest-compare__cards {
  margin-top:42px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.invest-compare__card {
  display:grid;
  grid-template-columns:minmax(210px,.72fr) 1fr;
  min-height:520px;
  border:1px solid rgba(225,188,98,.22);
  background:#20211d;
}
.invest-compare__card figure { margin:0; overflow:hidden; }
.invest-compare__card figure img {
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.72) brightness(.78);
}
.invest-compare__card > div {
  padding:30px 28px;
  display:flex;
  flex-direction:column;
}
.invest-compare__card > div > span {
  color:#c9a960;
  font-size:8px;
  font-weight:760;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.invest-compare__card h3 {
  margin:30px 0 20px;
  font-family:var(--font-display);
  font-size:clamp(28px,2.4vw,38px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.03em;
}
.invest-compare__card ul {
  margin:0;
  padding:0;
  list-style:none;
}
.invest-compare__card li {
  position:relative;
  padding:11px 0 11px 18px;
  border-top:1px solid rgba(238,232,220,.12);
  color:rgba(248,243,233,.72);
  font-size:13px;
  font-weight:550;
  line-height:1.55;
}
.invest-compare__card li::before {
  content:"";
  position:absolute;
  left:0;
  top:19px;
  width:7px;
  height:1px;
  background:#d7b56d;
}
.invest-compare__card a {
  width:max-content;
  margin-top:auto;
  padding-top:20px;
  border-bottom:1px solid rgba(225,188,98,.34);
  color:#e0c17b;
  font-size:9px;
  font-weight:760;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.invest-checklist {
  padding:clamp(62px,5vw,82px) var(--page-pad);
  display:grid;
  grid-template-columns:minmax(300px,.67fr) minmax(480px,1fr);
  gap:clamp(50px,6vw,94px);
  background:#ddd1bf;
}
.invest-checklist__intro {
  position:sticky;
  top:130px;
  align-self:start;
}
.invest-checklist h2 {
  margin-top:30px;
  font-size:clamp(46px,4.1vw,66px);
  line-height:.93;
}
.invest-checklist__intro > p:last-child {
  max-width:420px;
  margin:28px 0 0;
  color:#514a40;
  font-size:15px;
  font-weight:560;
  line-height:1.7;
}
.invest-checklist__list {
  border-top:1px solid rgba(37,33,27,.18);
}
.invest-checklist__list article {
  padding:22px 0;
  display:grid;
  grid-template-columns:46px minmax(200px,.62fr) 1fr;
  gap:18px;
  align-items:start;
  border-bottom:1px solid rgba(37,33,27,.16);
}
.invest-checklist__list span {
  color:#8d7755;
  font-size:9px;
  font-weight:760;
}
.invest-checklist__list h3 {
  margin:0;
  font-family:var(--font-display);
  font-size:26px;
  font-weight:400;
  line-height:1.04;
}
.invest-checklist__list p {
  margin:0;
  color:#554e43;
  font-size:13.5px;
  font-weight:560;
  line-height:1.62;
}

.invest-journey {
  padding:clamp(62px,5vw,82px) var(--page-pad) clamp(68px,5.5vw,94px);
  background:#f4efe6;
}
.invest-journey__header {
  display:grid;
  grid-template-columns:minmax(300px,.7fr) minmax(300px,.5fr) minmax(300px,.5fr);
  gap:48px;
  align-items:end;
}
.invest-journey h2 {
  margin-top:28px;
  font-size:clamp(46px,4.1vw,66px);
  line-height:.92;
}
.invest-journey__header > p:last-child {
  margin:0 0 3px;
  color:#514a40;
  font-size:15px;
  font-weight:560;
  line-height:1.68;
}
.invest-journey__steps {
  margin-top:44px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(30,29,25,.16);
}
.invest-journey__steps article {
  min-height:230px;
  padding:24px 24px 24px 0;
  border-right:1px solid rgba(30,29,25,.14);
}
.invest-journey__steps article + article { padding-left:24px; }
.invest-journey__steps article:last-child { border-right:0; }
.invest-journey__steps span { color:#9a835c; font-size:9px; font-weight:760; }
.invest-journey__steps h3 {
  margin:32px 0 12px;
  font-family:var(--font-display);
  font-size:27px;
  font-weight:400;
  line-height:1.02;
}
.invest-journey__steps p { margin:0; color:#5d5549; font-size:13.5px; font-weight:560; line-height:1.62; }

.invest-closing {
  position:relative;
  min-height:600px;
  height:68vh;
  overflow:hidden;
  color:var(--ivory-bright);
}
.invest-closing > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 57%;
  filter:saturate(.76) brightness(.68);
}
.invest-closing__shade {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(10,11,9,.72),rgba(10,11,9,.18) 62%,rgba(10,11,9,.2));
}
.invest-closing__content {
  position:absolute;
  left:var(--page-pad);
  bottom:clamp(58px,7vw,96px);
  max-width:780px;
}
.invest-closing__content > p {
  margin:0 0 20px;
  color:#d5b36c;
  font-size:9px;
  font-weight:760;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.invest-closing h2 {
  margin:0 0 28px;
  font-family:var(--font-display);
  font-size:clamp(46px,5vw,78px);
  font-weight:400;
  line-height:.94;
  letter-spacing:-.05em;
}
.invest-closing h2 em { color:#dec27f; font-weight:400; }

.invest-faq {
  padding:clamp(62px,5vw,82px) var(--page-pad);
  display:grid;
  grid-template-columns:minmax(300px,.66fr) minmax(500px,1fr);
  gap:clamp(50px,6vw,92px);
  background:#e9e0d3;
}
.invest-faq__intro { align-self:start; }
.invest-faq h2 { margin-top:30px; font-size:clamp(44px,4vw,64px); line-height:.94; }
.invest-faq__intro > p:last-child {
  max-width:390px;
  margin:24px 0 0;
  color:#5a5145;
  font-size:15px;
  font-weight:550;
  line-height:1.68;
}
.invest-faq__list { border-top:1px solid rgba(40,36,30,.18); }
.invest-faq__list details { border-bottom:1px solid rgba(40,36,30,.16); }
.invest-faq__list summary {
  min-height:70px;
  display:grid;
  grid-template-columns:38px 1fr 28px;
  gap:16px;
  align-items:center;
  list-style:none;
  cursor:pointer;
}
.invest-faq__list summary::-webkit-details-marker { display:none; }
.invest-faq__list summary > span { color:#9a835d; font-size:9px; font-weight:760; }
.invest-faq__list summary strong {
  font-family:var(--font-display);
  font-size:clamp(20px,1.6vw,25px);
  font-weight:400;
  line-height:1.05;
}
.invest-faq__list summary i { position:relative; width:28px; height:28px; border:1px solid rgba(113,84,40,.2); border-radius:50%; }
.invest-faq__list summary i::before,
.invest-faq__list summary i::after { content:""; position:absolute; top:13px; left:7px; width:12px; height:1px; background:#84673a; transition:transform .3s ease; }
.invest-faq__list summary i::after { transform:rotate(90deg); }
.invest-faq__list details[open] summary i::after { transform:rotate(0); }
.invest-faq__list details > p {
  margin:0 46px 22px 54px;
  color:#5c5449;
  font-size:14px;
  font-weight:550;
  line-height:1.7;
}
.invest-faq__note { margin:16px 0 0; color:#7c705f; font-size:10px; font-weight:600; line-height:1.6; }

@media (max-width: 1180px) {
  .invest-case__grid { grid-template-columns:repeat(2,1fr); }
  .invest-case__grid article:nth-child(2) { border-right:0; }
  .invest-case__grid article:nth-child(-n+2) { border-bottom:1px solid rgba(30,29,25,.14); }
  .invest-growth { grid-template-columns:minmax(320px,.8fr) 1fr; }
  .invest-compare__card { grid-template-columns:1fr; }
  .invest-compare__card figure { height:300px; }
  .invest-checklist { grid-template-columns:minmax(280px,.58fr) 1fr; }
  .invest-journey__header { grid-template-columns:1fr 1fr; }
  .invest-journey__header > p:last-child { grid-column:2; }
}

@media (max-width: 820px) {
  .invest-hero { min-height:760px; height:90svh; }
  .invest-hero__frame { top:92px; right:10px; bottom:10px; left:10px; }
  .invest-hero__content { bottom:70px; }
  .invest-hero h1 { font-size:clamp(52px,11vw,76px); }
  .invest-hero__lower { grid-template-columns:1fr; gap:18px; }
  .invest-hero__index { display:none; }
  .invest-case__intro,
  .invest-growth,
  .invest-location__header,
  .invest-compare__heading,
  .invest-checklist,
  .invest-faq { grid-template-columns:1fr; gap:30px; }
  .invest-growth__image img { height:520px; }
  .invest-location__visuals { grid-template-columns:1fr; }
  .invest-location__main img,
  .invest-location__side img { height:360px; }
  .invest-location__matrix { grid-template-columns:1fr; }
  .invest-location__matrix article { min-height:0; padding:22px 0; border-right:0; border-bottom:1px solid rgba(30,29,25,.14); }
  .invest-location__matrix article + article { padding-left:0; }
  .invest-break { min-height:520px; height:64vh; }
  .invest-compare__cards { grid-template-columns:1fr; }
  .invest-compare__card { min-height:0; }
  .invest-checklist__intro { position:static; }
  .invest-checklist__list article { grid-template-columns:38px minmax(180px,.65fr) 1fr; }
  .invest-journey__header { grid-template-columns:1fr; }
  .invest-journey__header > p:last-child { grid-column:auto; }
  .invest-journey__steps { grid-template-columns:1fr 1fr; }
  .invest-journey__steps article:nth-child(2) { border-right:0; }
  .invest-journey__steps article:nth-child(-n+2) { border-bottom:1px solid rgba(30,29,25,.14); }
}

@media (max-width: 560px) {
  .invest-hero { min-height:690px; }
  .invest-hero__media img { object-position:62% center; }
  .invest-hero__content { left:var(--page-pad); right:var(--page-pad); }
  .invest-hero h1 { font-size:clamp(46px,13vw,62px); }
  .invest-hero__lower { margin-top:24px; padding-top:18px; }
  .invest-case__grid { grid-template-columns:1fr; }
  .invest-case__grid article { min-height:0; border-right:0; border-bottom:1px solid rgba(30,29,25,.14); }
  .invest-case__grid article:nth-child(2) { border-right:0; }
  .invest-growth__image img { height:440px; }
  .invest-growth__points > div { grid-template-columns:32px 1fr; }
  .invest-growth__points p { grid-column:2; }
  .invest-location__main img,
  .invest-location__side img { height:290px; }
  .invest-break { min-height:500px; }
  .invest-break blockquote { font-size:clamp(35px,10vw,50px); }
  .invest-compare__card figure { height:260px; }
  .invest-checklist__list article { grid-template-columns:34px 1fr; }
  .invest-checklist__list p { grid-column:2; }
  .invest-journey__steps { grid-template-columns:1fr; }
  .invest-journey__steps article,
  .invest-journey__steps article + article { padding:22px 0; border-right:0; border-bottom:1px solid rgba(30,29,25,.14); }
  .invest-closing { min-height:520px; height:62vh; }
  .invest-faq__list summary { grid-template-columns:28px 1fr 28px; gap:10px; }
  .invest-faq__list details > p { margin:0 28px 20px 38px; }
}

.invest__links {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  align-items: center;
}

/* =========================================================
   WHY INVEST IN DUBAI — editorial economic story page
   ========================================================= */
.why-invest-page{background:#f0ebe3;color:#1f1d19}
.why-invest-hero .invest-hero__shade{background:linear-gradient(90deg,rgba(8,9,8,.86) 0%,rgba(8,9,8,.54) 44%,rgba(8,9,8,.15) 72%,rgba(8,9,8,.32) 100%)}
.why-story{padding:clamp(70px,6vw,100px) var(--page-pad);background:#eee8df}
.why-story__intro{width:min(1220px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(340px,.95fr) minmax(320px,.7fr);gap:clamp(50px,7vw,110px);align-items:end}
.why-story__intro h2{margin:26px 0 0;font-family:var(--font-display);font-size:clamp(48px,5vw,78px);font-weight:400;line-height:.92;letter-spacing:-.055em}
.why-story__intro h2 em{color:#9b7844;font-weight:400}
.why-story__intro>p:last-child{margin:0;color:#5d5549;font-size:clamp(15px,1vw,17px);font-weight:500;line-height:1.76}
.why-timeline{width:min(1320px,100%);margin:clamp(48px,5vw,72px) auto 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(40,36,30,.18);border-bottom:1px solid rgba(40,36,30,.18)}
.why-timeline article{position:relative;min-height:235px;padding:28px 28px 30px;border-right:1px solid rgba(40,36,30,.14)}
.why-timeline article:last-child{border-right:0}
.why-timeline span{color:#9b7844;font-family:var(--font-display);font-size:15px;font-style:italic}
.why-timeline h3{margin:34px 0 12px;font-family:var(--font-display);font-size:clamp(25px,2vw,33px);font-weight:400;line-height:1.02;letter-spacing:-.03em}
.why-timeline p{margin:0;color:#5e574d;font-size:13.5px;font-weight:520;line-height:1.66}

.why-resilience{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);min-height:700px;background:#171816;color:#f4eee5}
.why-resilience figure{margin:0;overflow:hidden}.why-resilience figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.02)}
.why-resilience__copy{padding:clamp(62px,6vw,96px) clamp(44px,6vw,92px);align-self:center}
.why-resilience__copy .section-kicker{color:rgba(244,238,229,.62)}
.why-resilience__copy h2{margin:26px 0 22px;font-family:var(--font-display);font-size:clamp(48px,4.8vw,75px);font-weight:400;line-height:.92;letter-spacing:-.05em}
.why-resilience__copy h2 em{color:#d8b56c;font-weight:400}.why-resilience__copy .lead{margin:0 0 14px;color:#f4eee5;font-size:20px;font-weight:500;line-height:1.5}
.why-resilience__copy>p:not(.section-kicker):not(.lead){max-width:620px;margin:0;color:rgba(244,238,229,.68);font-size:15px;font-weight:500;line-height:1.76}.why-resilience__copy .editorial-link{margin-top:28px}

.why-benefits{padding:clamp(68px,5.8vw,96px) var(--page-pad);background:#f6f1e9}
.why-benefits>.section-meta{padding-bottom:18px;border-bottom:1px solid rgba(32,29,25,.14)}
.why-benefits__head{margin:34px 0 38px;display:grid;grid-template-columns:minmax(360px,1fr) minmax(300px,.55fr);gap:60px;align-items:end}
.why-benefits__head h2{margin:0;font-family:var(--font-display);font-size:clamp(48px,4.6vw,72px);font-weight:400;line-height:.92;letter-spacing:-.05em}.why-benefits__head h2 em{color:#997445;font-weight:400}.why-benefits__head p{margin:0;color:#5d5549;font-size:15px;font-weight:500;line-height:1.72}
.why-benefits__grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(32,29,25,.15);border-left:1px solid rgba(32,29,25,.15)}
.why-benefits__grid article{min-height:255px;padding:24px;border-right:1px solid rgba(32,29,25,.15);border-bottom:1px solid rgba(32,29,25,.15);transition:background .3s ease,transform .3s ease}.why-benefits__grid article:hover{background:#ece3d6;transform:translateY(-2px)}
.why-benefits__grid span{color:#a18252;font-size:9px;font-weight:760;letter-spacing:.18em}.why-benefits__grid h3{margin:46px 0 12px;font-family:var(--font-display);font-size:clamp(24px,1.9vw,31px);font-weight:400;line-height:1.04;letter-spacing:-.03em}.why-benefits__grid p{margin:0;color:#5c554b;font-size:13.5px;font-weight:520;line-height:1.68}

.why-proof{padding:clamp(62px,5vw,86px) var(--page-pad);background:#d9cdbc;color:#211e19}
.why-proof__copy{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(350px,.9fr) minmax(320px,.62fr);gap:70px;align-items:end}
.why-proof__copy h2{margin:25px 0 0;font-family:var(--font-display);font-size:clamp(46px,4.5vw,70px);font-weight:400;line-height:.94;letter-spacing:-.05em}.why-proof__copy h2 em{color:#8a6738;font-weight:400}.why-proof__copy>p:last-child{margin:0;color:#514b42;font-size:15px;font-weight:520;line-height:1.72}
.why-proof__stats{width:min(1320px,100%);margin:42px auto 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(45,38,29,.18);border-bottom:1px solid rgba(45,38,29,.18)}
.why-proof__stats article{padding:30px 24px;border-right:1px solid rgba(45,38,29,.15)}.why-proof__stats article:last-child{border-right:0}.why-proof__stats strong{display:block;color:#211e19;font-family:var(--font-display);font-size:clamp(38px,3.5vw,54px);font-weight:400;letter-spacing:-.04em}.why-proof__stats span{display:block;margin-top:10px;color:#635b4f;font-size:10px;font-weight:720;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.why-proof__note{width:min(1320px,100%);margin:14px auto 0;color:#776b5a;font-size:10px;font-weight:580;line-height:1.6}

.why-visual{position:relative;min-height:720px;overflow:hidden}.why-visual>img,.why-visual__shade{position:absolute;inset:0;width:100%;height:100%}.why-visual>img{object-fit:cover}.why-visual__shade{background:linear-gradient(90deg,rgba(9,10,9,.76),rgba(9,10,9,.32) 54%,rgba(9,10,9,.08))}.why-visual__copy{position:absolute;z-index:2;left:var(--page-pad);bottom:clamp(56px,6vw,92px);max-width:670px;color:#f5efe5}.why-visual__copy>p{margin:0 0 18px;color:#d8b56c;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.why-visual__copy h2{margin:0;font-family:var(--font-display);font-size:clamp(52px,5.3vw,82px);font-weight:400;line-height:.9;letter-spacing:-.055em}.why-visual__copy h2 em{color:#e0bf7a;font-weight:400}.why-visual__copy>span{display:block;max-width:540px;margin-top:22px;color:rgba(245,239,229,.76);font-size:16px;font-weight:500;line-height:1.7}

.why-principles{padding:clamp(68px,5.8vw,96px) var(--page-pad);background:#f2ede5}.why-principles>div:first-child{width:min(1240px,100%);margin:0 auto;display:grid;grid-template-columns:1fr .8fr;gap:70px}.why-principles h2{margin:24px 0 0;font-family:var(--font-display);font-size:clamp(46px,4.4vw,70px);font-weight:400;line-height:.94;letter-spacing:-.05em}.why-principles h2 em{color:#987345;font-weight:400}.why-principles__list{width:min(1240px,100%);margin:44px auto 0;border-top:1px solid rgba(34,31,27,.16)}.why-principles__list article{padding:24px 0;display:grid;grid-template-columns:54px minmax(320px,.85fr) minmax(320px,1fr);gap:24px;border-bottom:1px solid rgba(34,31,27,.14);align-items:start}.why-principles__list span{color:#a18864;font-size:9px;font-weight:760}.why-principles__list h3{margin:0;font-family:var(--font-display);font-size:clamp(25px,2vw,32px);font-weight:400;line-height:1.1;letter-spacing:-.025em}.why-principles__list p{margin:2px 0 0;color:#5b5449;font-size:14px;font-weight:520;line-height:1.7}
.why-guide-cta{width:min(1240px,100%);margin:42px auto 0;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;gap:30px;border:1px solid rgba(34,31,27,.16);background:#1b1c19;color:#f3ede4;transition:transform .3s ease,background .3s ease}.why-guide-cta:hover{transform:translateY(-2px);background:#20211d}.why-guide-cta small{display:block;margin-bottom:7px;color:#d8b56c;font-size:8px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.why-guide-cta strong{display:block;font-family:var(--font-display);font-size:clamp(28px,2.2vw,36px);font-weight:400}.why-guide-cta p{margin:6px 0 0;color:rgba(243,237,228,.6);font-size:13px;font-weight:500}.why-guide-cta b{white-space:nowrap;color:#ddb96f;font-size:10px;font-weight:760;letter-spacing:.16em;text-transform:uppercase}

/* =========================================================
   BUYER & INVESTOR GUIDE — practical reference page
   ========================================================= */
.buyer-guide-page{background:#f7f2ea;color:#201d18}.guide-hero{position:relative;min-height:720px;height:86svh;overflow:hidden;color:#f7f1e8}.guide-hero__media,.guide-hero__shade{position:absolute;inset:0}.guide-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.82)}.guide-hero__shade{background:linear-gradient(90deg,rgba(8,9,8,.84) 0%,rgba(8,9,8,.56) 48%,rgba(8,9,8,.18) 76%,rgba(8,9,8,.28))}.guide-hero__content{position:absolute;z-index:2;left:var(--page-pad);right:var(--page-pad);bottom:clamp(58px,7vw,104px);max-width:980px}.guide-hero__content>p{margin:0 0 18px;color:#d8b56c;font-size:9px;font-weight:760;letter-spacing:.19em;text-transform:uppercase}.guide-hero h1{margin:0;font-family:var(--font-display);font-size:clamp(60px,6.5vw,104px);font-weight:400;line-height:.84;letter-spacing:-.06em}.guide-hero h1 em{color:#dfbd76;font-weight:400}.guide-hero__content>div{max-width:700px;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;gap:36px;border-top:1px solid rgba(247,241,232,.25)}.guide-hero__content>div span{max-width:460px;color:rgba(247,241,232,.76);font-size:15px;font-weight:500;line-height:1.65}.guide-hero__content>div a{color:#f7f1e8;font-size:9px;font-weight:760;letter-spacing:.16em;text-transform:uppercase}
.guide-layout{width:min(1400px,100%);margin:0 auto;padding:clamp(70px,6vw,100px) var(--page-pad);display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(48px,6vw,90px);align-items:start}.guide-toc{position:sticky;top:110px;padding:0 18px 18px 0;border-right:1px solid rgba(39,34,27,.14)}.guide-toc>p{margin:0 0 18px;color:#9b7b4e;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.guide-toc a{padding:9px 0;display:block;color:#6a6258;font-size:11px;font-weight:600;line-height:1.35;border-bottom:1px solid rgba(39,34,27,.08)}.guide-toc a:hover{color:#1f1d19}.guide-content{min-width:0}.guide-module{padding:0 0 clamp(60px,5vw,84px);margin-bottom:clamp(60px,5vw,84px);border-bottom:1px solid rgba(39,34,27,.14)}.guide-module__number{margin:0;color:#9b7b4e;font-size:9px;font-weight:760;letter-spacing:.2em;text-transform:uppercase}.guide-module h2{margin:18px 0 18px;font-family:var(--font-display);font-size:clamp(46px,4.6vw,72px);font-weight:400;line-height:.92;letter-spacing:-.05em}.guide-module h2 em{color:#997445;font-weight:400}.guide-module__lead{max-width:850px;margin:0 0 34px;color:#5c554b;font-size:clamp(16px,1.1vw,18px);font-weight:500;line-height:1.72}
.guide-goals{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(39,34,27,.14);border-left:1px solid rgba(39,34,27,.14)}.guide-goals article{min-height:190px;padding:22px;border-right:1px solid rgba(39,34,27,.14);border-bottom:1px solid rgba(39,34,27,.14)}.guide-goals h3{margin:0 0 20px;font-family:var(--font-display);font-size:28px;font-weight:400}.guide-goals p{margin:0;color:#625b51;font-size:13px;font-weight:520;line-height:1.65}
.guide-module--dark{margin-left:calc(var(--page-pad)*-0.5);margin-right:calc(var(--page-pad)*-0.5);padding:clamp(46px,4vw,62px);color:#f5efe7;background:#1b1c19;border-bottom:0}.guide-module--dark .guide-module__number{color:#d8b56c}.guide-module--dark h2 em{color:#d8b56c}.guide-module--dark .guide-module__lead{color:rgba(245,239,231,.72)}.guide-split{display:grid;grid-template-columns:1fr 1fr;gap:40px}.guide-split>div{padding-top:22px;border-top:1px solid rgba(245,239,231,.16)}.guide-split h3{margin:0 0 18px;font-family:var(--font-display);font-size:30px;font-weight:400}.guide-split ol,.guide-split ul{margin:0;padding-left:20px}.guide-split li{margin-bottom:10px;color:rgba(245,239,231,.72);font-size:14px;font-weight:500;line-height:1.6}.guide-note{margin:28px 0 0;padding:16px 18px;border-left:2px solid #d8b56c;background:rgba(255,255,255,.04);color:rgba(245,239,231,.68);font-size:12px;font-weight:520;line-height:1.65}
.guide-process{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(39,34,27,.14);border-bottom:1px solid rgba(39,34,27,.14)}.guide-process article{padding:24px;border-right:1px solid rgba(39,34,27,.14)}.guide-process article:last-child{border-right:0}.guide-process span{color:#a2875e;font-size:9px;font-weight:760}.guide-process h3{margin:28px 0 10px;font-family:var(--font-display);font-size:26px;font-weight:400}.guide-process p{margin:0;color:#625b51;font-size:13px;font-weight:520;line-height:1.65}
.guide-definitions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guide-definitions article{padding:24px;border:1px solid rgba(39,34,27,.13);background:#f0e9df}.guide-definitions h3{margin:0 0 10px;font-family:var(--font-display);font-size:28px;font-weight:400}.guide-definitions p{margin:0;color:#5f574c;font-size:13.5px;font-weight:520;line-height:1.68}.guide-official{margin-top:20px;padding:18px 0;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-top:1px solid rgba(39,34,27,.13);border-bottom:1px solid rgba(39,34,27,.13)}.guide-official strong{margin-right:auto;color:#7e6949;font-size:9px;font-weight:760;letter-spacing:.16em;text-transform:uppercase}.guide-official a{color:#29251f;font-size:10px;font-weight:700;border-bottom:1px solid rgba(41,37,31,.28);padding-bottom:4px}
.guide-module--costs{padding:clamp(46px,4vw,62px);background:#ded2c1;border-bottom:0}.guide-cost-table{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(45,38,29,.16);border-left:1px solid rgba(45,38,29,.16)}.guide-cost-table>div{padding:20px;border-right:1px solid rgba(45,38,29,.16);border-bottom:1px solid rgba(45,38,29,.16)}.guide-cost-table span{display:block;color:#826b48;font-size:9px;font-weight:760;letter-spacing:.14em;text-transform:uppercase}.guide-cost-table strong{display:block;margin-top:12px;font-family:var(--font-display);font-size:24px;font-weight:400}.guide-cost-table p{margin:8px 0 0;color:#635a4e;font-size:12.5px;font-weight:520;line-height:1.6}
.guide-two-col{display:grid;grid-template-columns:minmax(360px,.8fr) 1fr;gap:44px;align-items:stretch}.guide-two-col>div{padding:24px 0;border-top:1px solid rgba(39,34,27,.14);border-bottom:1px solid rgba(39,34,27,.14)}.guide-two-col>div>p{margin:0;color:#5c554a;font-size:16px;font-weight:500;line-height:1.7}.guide-two-col ul{margin:22px 0 0;padding-left:20px}.guide-two-col li{margin-bottom:9px;color:#5f584d;font-size:13px;line-height:1.6}.guide-two-col figure{margin:0;overflow:hidden}.guide-two-col img{width:100%;height:100%;min-height:420px;object-fit:cover}
.guide-module--rental{padding:clamp(46px,4vw,62px);background:#ece4d9}.guide-rental-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(39,34,27,.14);border-left:1px solid rgba(39,34,27,.14)}.guide-rental-grid article{min-height:205px;padding:22px;border-right:1px solid rgba(39,34,27,.14);border-bottom:1px solid rgba(39,34,27,.14)}.guide-rental-grid h3{margin:0 0 18px;font-family:var(--font-display);font-size:27px;font-weight:400}.guide-rental-grid p{margin:0;color:#60594e;font-size:13px;font-weight:520;line-height:1.66}
.guide-residency{display:grid;grid-template-columns:300px 1fr;gap:38px;padding:32px;border:1px solid rgba(39,34,27,.14);background:#1b1c19;color:#f5efe7}.guide-residency>strong{font-family:var(--font-display);font-size:clamp(52px,5vw,80px);font-weight:400;line-height:.9;color:#dfbd76}.guide-residency h3{margin:0 0 12px;font-family:var(--font-display);font-size:31px;font-weight:400}.guide-residency p{margin:0;color:rgba(245,239,231,.68);font-size:14px;font-weight:500;line-height:1.7}.guide-residency a{display:inline-block;margin-top:18px;color:#dfbd76;font-size:10px;font-weight:700;border-bottom:1px solid rgba(223,189,118,.4);padding-bottom:4px}
.guide-module--checklist{margin-bottom:0;padding:clamp(46px,4vw,62px);background:#f0e9df;border-bottom:0}.guide-final-check{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid rgba(39,34,27,.14);border-left:1px solid rgba(39,34,27,.14)}.guide-final-check span{padding:16px 18px;border-right:1px solid rgba(39,34,27,.14);border-bottom:1px solid rgba(39,34,27,.14);color:#4f483e;font-size:13px;font-weight:600;line-height:1.55}.guide-disclaimer{margin:22px 0 0;color:#776d5f;font-size:10.5px;font-weight:550;line-height:1.65}
.guide-banner{position:relative;min-height:600px;overflow:hidden;color:#f6f0e7}.guide-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.guide-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,11,10,.76),rgba(10,11,10,.18))}.guide-banner>div{position:absolute;z-index:2;left:var(--page-pad);bottom:70px}.guide-banner p{margin:0 0 16px;color:#d8b56c;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.guide-banner h2{margin:0;font-family:var(--font-display);font-size:clamp(50px,5vw,78px);font-weight:400;line-height:.92;letter-spacing:-.05em}.guide-banner h2 em{color:#dfbd76;font-weight:400}.guide-banner a{display:inline-block;margin-top:26px;color:#f6f0e7;font-size:10px;font-weight:760;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(246,240,231,.35);padding-bottom:7px}

@media(max-width:1180px){.why-timeline{grid-template-columns:1fr 1fr}.why-timeline article:nth-child(2){border-right:0}.why-timeline article:nth-child(-n+2){border-bottom:1px solid rgba(40,36,30,.14)}.why-benefits__grid{grid-template-columns:1fr 1fr}.why-proof__stats{grid-template-columns:1fr 1fr}.why-proof__stats article:nth-child(2){border-right:0}.why-proof__stats article:nth-child(-n+2){border-bottom:1px solid rgba(45,38,29,.15)}.guide-layout{grid-template-columns:210px minmax(0,1fr)}.guide-goals,.guide-process{grid-template-columns:1fr 1fr}.guide-goals article:nth-child(2),.guide-process article:nth-child(2){border-right:0}.guide-rental-grid{grid-template-columns:1fr 1fr}.guide-residency{grid-template-columns:230px 1fr}}
@media(max-width:820px){.why-story__intro,.why-resilience,.why-benefits__head,.why-proof__copy,.why-principles>div:first-child{grid-template-columns:1fr}.why-resilience figure img{height:520px}.why-benefits__grid,.why-proof__stats{grid-template-columns:1fr 1fr}.why-principles__list article{grid-template-columns:42px 1fr}.why-principles__list p{grid-column:2}.guide-layout{grid-template-columns:1fr}.guide-toc{position:static;padding:20px;border-right:0;border:1px solid rgba(39,34,27,.13);background:#eee7dd;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.guide-toc>p{grid-column:1/-1}.guide-module--dark,.guide-module--costs,.guide-module--rental,.guide-module--checklist{margin-left:0;margin-right:0;padding:32px}.guide-split,.guide-definitions,.guide-cost-table,.guide-two-col,.guide-rental-grid,.guide-residency{grid-template-columns:1fr}.guide-two-col img{min-height:340px}.guide-residency{gap:18px}.guide-residency>strong{font-size:58px}}
@media(max-width:560px){.why-timeline,.why-benefits__grid,.why-proof__stats{grid-template-columns:1fr}.why-timeline article,.why-benefits__grid article,.why-proof__stats article{border-right:0}.why-visual{min-height:620px}.why-guide-cta{align-items:flex-start;flex-direction:column}.guide-hero{min-height:680px}.guide-hero h1{font-size:clamp(50px,14vw,68px)}.guide-hero__content>div{align-items:flex-start;flex-direction:column}.guide-toc{grid-template-columns:1fr}.guide-goals,.guide-process,.guide-definitions,.guide-cost-table,.guide-rental-grid,.guide-final-check{grid-template-columns:1fr}.guide-goals article,.guide-process article{border-right:0}.guide-process article{border-bottom:1px solid rgba(39,34,27,.14)}.guide-process article:last-child{border-bottom:0}.guide-module--dark,.guide-module--costs,.guide-module--rental,.guide-module--checklist{padding:24px}.guide-banner{min-height:520px}}

/* WHY DUBAI — tighter editorial photo pass */
.why-story{
  padding:clamp(48px,4.2vw,68px) var(--page-pad) clamp(46px,4vw,64px);
}
.why-story__layout{
  width:min(1320px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(430px,1fr);
  gap:clamp(40px,5vw,72px);
  align-items:center;
}
.why-story__intro{
  width:auto;
  margin:0;
  display:block;
}
.why-story__intro h2{
  margin:22px 0 24px;
  font-size:clamp(46px,4.4vw,68px);
}
.why-story__intro>p:last-child{
  max-width:610px;
}
.why-story__image{
  margin:0;
}
.why-story__image img{
  width:100%;
  height:clamp(300px,29vw,410px);
  display:block;
  object-fit:cover;
  filter:saturate(.86) contrast(1.02);
}
.why-story__image figcaption,
.why-proof__image figcaption{
  padding-top:10px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  color:#736858;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.why-timeline{
  margin:clamp(34px,3vw,44px) auto 0;
}
.why-timeline article{
  min-height:175px;
  padding:20px 22px 22px;
}
.why-timeline h3{
  margin:22px 0 9px;
  font-size:clamp(23px,1.65vw,29px);
}
.why-timeline p{
  font-size:13px;
  line-height:1.58;
}

.why-resilience{
  min-height:560px;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
}
.why-resilience__copy{
  padding:clamp(44px,4.4vw,66px) clamp(38px,4.6vw,70px);
}
.why-resilience__copy h2{
  margin:20px 0 18px;
  font-size:clamp(46px,4.2vw,66px);
}
.why-resilience__copy .lead{
  font-size:18px;
}

.why-benefits{
  padding:clamp(48px,4.2vw,68px) var(--page-pad) clamp(52px,4.4vw,72px);
}
.why-benefits__head{
  margin:28px 0 28px;
}
.why-benefits__visuals{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:16px;
  margin:0 0 28px;
}
.why-benefits__visuals figure{
  margin:0;
  overflow:hidden;
}
.why-benefits__visuals img{
  width:100%;
  height:240px;
  display:block;
  object-fit:cover;
  filter:saturate(.86) contrast(1.02);
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.why-benefits__visuals figure:hover img{
  transform:scale(1.025);
}
.why-benefits__visuals figcaption{
  padding:9px 2px 0;
  color:#766b5b;
  font-size:9px;
  font-weight:720;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.why-benefits__grid article{
  min-height:220px;
  padding:20px 22px;
}
.why-benefits__grid h3{
  margin:30px 0 10px;
}

.why-proof{
  padding:0;
}
.why-proof__layout{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);
  min-height:600px;
}
.why-proof__content{
  padding:clamp(46px,4.5vw,68px) clamp(42px,5vw,76px) clamp(36px,3.6vw,54px) var(--page-pad);
  align-self:center;
}
.why-proof__copy{
  width:auto;
  margin:0;
  display:block;
}
.why-proof__copy h2{
  margin:20px 0 18px;
  max-width:680px;
  font-size:clamp(44px,4vw,62px);
}
.why-proof__copy>p:last-child{
  max-width:650px;
}
.why-proof__stats{
  width:auto;
  margin:30px 0 0;
  grid-template-columns:1fr 1fr;
}
.why-proof__stats article{
  padding:20px 18px;
}
.why-proof__stats article:nth-child(2){
  border-right:0;
}
.why-proof__stats article:nth-child(-n+2){
  border-bottom:1px solid rgba(45,38,29,.15);
}
.why-proof__stats strong{
  font-size:clamp(34px,3vw,46px);
}
.why-proof__note{
  width:auto;
  margin:12px 0 0;
}
.why-proof__image{
  margin:0;
  position:relative;
  overflow:hidden;
  background:#bfb3a1;
}
.why-proof__image img{
  width:100%;
  height:100%;
  min-height:600px;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:saturate(.86) contrast(1.02);
}
.why-proof__image figcaption{
  position:absolute;
  right:18px;
  bottom:16px;
  left:18px;
  padding:10px 12px;
  color:#f2ece3;
  background:rgba(17,18,16,.7);
  backdrop-filter:blur(8px);
}

.why-visual{
  min-height:540px;
}
.why-visual__copy{
  bottom:clamp(40px,4vw,62px);
}
.why-visual__copy h2{
  font-size:clamp(48px,4.8vw,72px);
}

.why-principles{
  padding:clamp(52px,4.5vw,72px) var(--page-pad);
}
.why-principles__list{
  margin-top:32px;
}

@media(max-width:820px){
  .why-story__layout,
  .why-proof__layout{
    grid-template-columns:1fr;
  }
  .why-story__image img{
    height:340px;
  }
  .why-resilience{
    min-height:0;
  }
  .why-resilience figure img{
    height:390px;
  }
  .why-benefits__visuals{
    grid-template-columns:1fr 1fr;
  }
  .why-benefits__visuals img{
    height:210px;
  }
  .why-proof__content{
    padding:44px var(--page-pad) 38px;
  }
  .why-proof__image img{
    min-height:0;
    height:420px;
  }
  .why-visual{
    min-height:500px;
  }
}

@media(max-width:560px){
  .why-story{
    padding-top:42px;
  }
  .why-story__image img{
    height:270px;
  }
  .why-benefits__visuals{
    grid-template-columns:1fr;
  }
  .why-benefits__visuals img{
    height:230px;
  }
  .why-proof__stats{
    grid-template-columns:1fr 1fr;
  }
  .why-proof__stats article{
    border-right:1px solid rgba(45,38,29,.15);
  }
  .why-proof__stats article:nth-child(even){
    border-right:0;
  }
  .why-proof__image img{
    height:330px;
  }
  .why-visual{
    min-height:460px;
  }
}

/* =========================================================
   ABOUT RAJ — editorial biography page
   ========================================================= */
.about-page{background:#eee7dc;color:var(--ink)}
.raj-hero{position:relative;min-height:760px;padding:148px var(--page-pad) 54px;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.72fr);gap:clamp(52px,7vw,110px);align-items:end;overflow:hidden;background:linear-gradient(135deg,#171816 0%,#25261f 55%,#151613 100%);color:var(--ivory)}
.raj-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 18%,rgba(217,180,105,.13),transparent 26%),linear-gradient(90deg,transparent 0 56%,rgba(255,255,255,.018) 56% 56.1%,transparent 56.1%);pointer-events:none}
.raj-hero::after{content:"RAJ";position:absolute;left:-1vw;bottom:-8vw;color:rgba(238,232,220,.025);font-family:var(--font-display);font-size:32vw;line-height:.7;letter-spacing:-.1em;pointer-events:none}
.raj-hero__copy{position:relative;z-index:2;max-width:760px;padding-bottom:44px}
.raj-hero .section-kicker{color:rgba(248,243,233,.66)}
.raj-hero .section-kicker span{color:#d6b36a}
.raj-hero h1{margin:28px 0 26px;font-family:var(--font-display);font-size:clamp(60px,6.2vw,96px);font-weight:400;line-height:.88;letter-spacing:-.057em}
.raj-hero h1 em{display:inline-block;color:#d7b36a;font-weight:400}
.raj-hero__lead{max-width:650px;margin:0;color:rgba(248,243,233,.77);font-size:clamp(17px,1.15vw,20px);font-weight:500;line-height:1.68}
.raj-hero__facts{margin-top:38px;padding-top:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(216,180,106,.22)}
.raj-hero__facts span{min-height:92px;padding:0 24px;border-right:1px solid rgba(216,180,106,.18);display:flex;flex-direction:column;justify-content:center}
.raj-hero__facts span:first-child{padding-left:0}.raj-hero__facts span:last-child{border-right:0}
.raj-hero__facts strong{font-family:var(--font-display);font-size:clamp(32px,2.6vw,43px);font-weight:400;line-height:1;color:var(--ivory-bright)}
.raj-hero__facts small{margin-top:8px;color:rgba(248,243,233,.5);font-size:8px;font-weight:760;letter-spacing:.16em;text-transform:uppercase;line-height:1.5}
.raj-hero__portrait{position:relative;z-index:2;margin:0;align-self:stretch;min-height:560px;overflow:hidden;border:1px solid rgba(216,180,106,.24);background:#c3b59f}
.raj-hero__portrait::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 12px rgba(17,18,15,.09);pointer-events:none}
.raj-hero__portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 18%;filter:saturate(.88) contrast(1.03)}
.raj-hero__portrait figcaption{position:absolute;right:18px;bottom:18px;left:18px;padding:13px 14px;display:flex;justify-content:space-between;gap:18px;align-items:end;color:var(--ivory);background:rgba(18,19,16,.72);border:1px solid rgba(216,180,106,.2);backdrop-filter:blur(12px)}
.raj-hero__portrait figcaption span{font-family:var(--font-display);font-size:22px}.raj-hero__portrait figcaption small{font-size:7px;font-weight:740;letter-spacing:.15em;text-transform:uppercase;color:rgba(248,243,233,.62)}
.raj-hero__side{position:absolute;z-index:2;top:50%;right:18px;display:flex;align-items:center;gap:10px;transform:translateY(-50%) rotate(90deg);transform-origin:center;color:rgba(248,243,233,.28);font-size:7px;font-weight:760;letter-spacing:.2em;text-transform:uppercase}
.raj-hero__side i{width:24px;height:1px;background:rgba(216,180,106,.28)}

.raj-origin{padding:clamp(58px,5vw,84px) var(--page-pad) clamp(62px,5.2vw,88px);display:grid;grid-template-columns:minmax(180px,.35fr) minmax(420px,.95fr) minmax(340px,.7fr);gap:clamp(34px,5vw,76px);background:#f0e9df;border-bottom:1px solid rgba(96,76,46,.15)}
.raj-origin__label{align-self:start}.raj-origin__year{display:block;margin-top:34px;color:#9a7c4a;font-family:var(--font-display);font-size:27px;font-style:italic}
.raj-origin__statement h2{margin:0;font-family:var(--font-display);font-size:clamp(45px,4.3vw,68px);font-weight:400;line-height:.96;letter-spacing:-.05em}
.raj-origin__statement h2 em{color:#8d6e3f;font-weight:400}
.raj-origin__body{padding-top:4px;border-top:1px solid rgba(76,63,43,.18)}
.raj-origin__body p{margin:18px 0 0;color:#514a40;font-size:15px;font-weight:500;line-height:1.72}
.raj-route{grid-column:2 / -1;margin-top:6px;padding:22px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;border-top:1px solid rgba(76,63,43,.16);color:#75634a;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}
.raj-route b{color:#b4935a;font-size:16px;font-weight:400}

.raj-scale{position:relative;padding:clamp(60px,5vw,82px) var(--page-pad) clamp(64px,5.2vw,88px);overflow:hidden;background:#20211d;color:var(--ivory)}
.raj-scale::before{content:"08";position:absolute;right:-1vw;top:-5vw;color:rgba(248,243,233,.025);font-family:var(--font-display);font-size:26vw;line-height:1}
.raj-scale__intro{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,.55fr) minmax(440px,1fr);column-gap:clamp(50px,7vw,110px);align-items:end}
.raj-scale__intro .section-kicker{align-self:start}.raj-scale__intro h2{margin:0;font-family:var(--font-display);font-size:clamp(50px,4.9vw,75px);font-weight:400;line-height:.92;letter-spacing:-.052em}.raj-scale__intro h2 em{color:#d6b36a;font-weight:400}
.raj-scale__intro>p:last-child{grid-column:2;margin:20px 0 0;max-width:650px;color:rgba(248,243,233,.68);font-size:15px;font-weight:500;line-height:1.72}
.raj-scale__numbers{position:relative;z-index:1;margin-top:46px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(216,180,106,.2);border-bottom:1px solid rgba(216,180,106,.2)}
.raj-scale__numbers article{min-height:230px;padding:28px 24px;border-right:1px solid rgba(216,180,106,.17)}.raj-scale__numbers article:first-child{padding-left:0}.raj-scale__numbers article:last-child{border-right:0}
.raj-scale__numbers strong{display:block;color:var(--ivory-bright);font-family:var(--font-display);font-size:clamp(48px,4.8vw,78px);font-weight:400;line-height:.9;letter-spacing:-.05em}.raj-scale__numbers span{display:block;margin-top:8px;color:#d4b36d;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.raj-scale__numbers p{max-width:210px;margin:28px 0 0;color:rgba(248,243,233,.58);font-size:13px;font-weight:500;line-height:1.6}
.raj-scale__line{position:absolute;left:var(--page-pad);right:var(--page-pad);bottom:30px;height:1px;background:linear-gradient(90deg,#d6b36a,transparent 65%);opacity:.45}

.raj-owner{padding:clamp(64px,5.4vw,92px) var(--page-pad);display:grid;grid-template-columns:minmax(340px,.8fr) minmax(380px,.8fr);gap:clamp(52px,7vw,112px);background:#d9ccbb;color:#211f1a}
.raj-owner__headline h2{margin:22px 0 0;font-family:var(--font-display);font-size:clamp(52px,4.8vw,74px);font-weight:400;line-height:.93;letter-spacing:-.053em}.raj-owner__headline h2 em{color:#8c6c39;font-weight:400}
.raj-owner__story{align-self:end;padding-left:30px;border-left:1px solid rgba(112,83,38,.24)}
.raj-owner__story p{margin:0;color:#4e473d;font-size:15px;font-weight:500;line-height:1.76}.raj-owner__story .raj-owner__lead{margin-bottom:20px;color:#24221d;font-family:var(--font-display);font-size:clamp(23px,1.8vw,30px);font-weight:400;line-height:1.2}
.raj-owner__principle{grid-column:1 / -1;margin-top:12px;padding:32px 0 0;display:grid;grid-template-columns:minmax(220px,.45fr) minmax(480px,1fr);gap:40px;border-top:1px solid rgba(112,83,38,.22)}
.raj-owner__principle span{color:#765b31;font-size:9px;font-weight:760;letter-spacing:.18em;text-transform:uppercase}.raj-owner__principle strong{font-family:var(--font-display);font-size:clamp(30px,2.7vw,43px);font-weight:400;line-height:1.08;letter-spacing:-.03em}

.raj-property{min-height:640px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);background:#171816;color:var(--ivory)}
.raj-property__image{position:relative;margin:0;overflow:hidden}.raj-property__image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(23,24,22,.42))}.raj-property__image img{width:100%;height:100%;min-height:640px;display:block;object-fit:cover;filter:saturate(.72) contrast(1.05)}.raj-property__image figcaption{position:absolute;left:22px;bottom:20px;z-index:1;padding:8px 11px;color:rgba(248,243,233,.72);background:rgba(16,17,15,.72);font-size:8px;font-weight:740;letter-spacing:.16em;text-transform:uppercase;backdrop-filter:blur(8px)}
.raj-property__copy{padding:clamp(60px,5vw,80px) clamp(42px,5vw,78px);align-self:center}.raj-property__copy h2{margin:22px 0 22px;font-family:var(--font-display);font-size:clamp(48px,4.4vw,68px);font-weight:400;line-height:.92;letter-spacing:-.05em}.raj-property__copy h2 em{color:#d8b46a;font-weight:400}.raj-property__copy>p:last-of-type{margin:0;color:rgba(248,243,233,.67);font-size:15px;font-weight:500;line-height:1.72}
.raj-property__pillars{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(216,180,106,.18)}.raj-property__pillars span{padding:16px 12px 15px 0;border-bottom:1px solid rgba(216,180,106,.15);color:rgba(248,243,233,.72);font-size:9px;font-weight:760;letter-spacing:.16em;text-transform:uppercase}.raj-property__pillars span:nth-child(odd){border-right:1px solid rgba(216,180,106,.14)}.raj-property__pillars span:nth-child(even){padding-left:16px}

.raj-vantage{padding:clamp(66px,5.5vw,94px) var(--page-pad);background:#f2ece3}
.raj-vantage__kicker{margin-bottom:30px}
.raj-vantage__statement{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(500px,1fr);gap:clamp(50px,7vw,110px);align-items:start}.raj-vantage__statement h2{margin:0;font-family:var(--font-display);font-size:clamp(48px,4.5vw,70px);font-weight:400;line-height:.94;letter-spacing:-.05em}.raj-vantage__statement p{margin:0;color:#5a5144;font-family:var(--font-display);font-size:clamp(29px,2.5vw,40px);font-weight:400;line-height:1.2}.raj-vantage__statement p em{color:#8b6b39;font-weight:400}.raj-vantage__statement p strong{color:#24211c;font-weight:400}
.raj-vantage__grid{margin-top:48px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(74,61,42,.18);border-bottom:1px solid rgba(74,61,42,.18)}.raj-vantage__grid article{min-height:250px;padding:24px 22px;border-right:1px solid rgba(74,61,42,.15)}.raj-vantage__grid article:first-child{padding-left:0}.raj-vantage__grid article:last-child{border-right:0}.raj-vantage__grid span{color:#9a7a48;font-family:var(--font-display);font-size:12px;font-style:italic}.raj-vantage__grid h3{margin:44px 0 13px;font-family:var(--font-display);font-size:clamp(24px,1.8vw,31px);font-weight:400;line-height:1.05}.raj-vantage__grid p{margin:0;color:#5a5348;font-size:13px;font-weight:500;line-height:1.65}

.raj-foundation{padding:clamp(56px,4.8vw,80px) var(--page-pad);display:grid;grid-template-columns:minmax(310px,.72fr) minmax(520px,1fr);gap:clamp(52px,7vw,110px);background:#c9bba8}.raj-foundation h2{margin:22px 0 0;font-family:var(--font-display);font-size:clamp(44px,4vw,62px);font-weight:400;line-height:.96;letter-spacing:-.045em}.raj-foundation h2 em{color:#785d34;font-weight:400}.raj-foundation__list{border-top:1px solid rgba(82,66,43,.22)}.raj-foundation__list article{padding:20px 0;display:grid;grid-template-columns:170px 1fr;column-gap:24px;border-bottom:1px solid rgba(82,66,43,.18)}.raj-foundation__list small{grid-row:1 / 3;color:#785d34;font-size:8px;font-weight:760;letter-spacing:.17em;text-transform:uppercase}.raj-foundation__list strong{font-family:var(--font-display);font-size:clamp(22px,1.65vw,28px);font-weight:400;line-height:1.08}.raj-foundation__list span{margin-top:7px;color:#5e5548;font-size:13px;font-weight:500;line-height:1.55}

@media(max-width:1180px){
  .raj-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);gap:44px}.raj-hero__facts span{padding:0 16px}
  .raj-origin{grid-template-columns:180px 1fr}.raj-origin__body{grid-column:2}.raj-route{grid-column:2}
  .raj-scale__numbers{grid-template-columns:1fr 1fr}.raj-scale__numbers article:nth-child(2){border-right:0}.raj-scale__numbers article:nth-child(-n+2){border-bottom:1px solid rgba(216,180,106,.17)}
  .raj-vantage__grid{grid-template-columns:1fr 1fr}.raj-vantage__grid article:nth-child(2){border-right:0}.raj-vantage__grid article:nth-child(-n+2){border-bottom:1px solid rgba(74,61,42,.15)}
}
@media(max-width:820px){
  .raj-hero{min-height:0;padding-top:120px;grid-template-columns:1fr}.raj-hero__copy{padding-bottom:0}.raj-hero__portrait{min-height:520px;max-height:680px}.raj-hero__side{display:none}
  .raj-origin{grid-template-columns:1fr;gap:28px}.raj-origin__body,.raj-route{grid-column:auto}.raj-origin__year{margin-top:16px}
  .raj-scale__intro{grid-template-columns:1fr}.raj-scale__intro>p:last-child{grid-column:auto}.raj-scale__numbers article:first-child{padding-left:24px}
  .raj-owner{grid-template-columns:1fr;gap:30px}.raj-owner__story{padding-left:0;border-left:0;border-top:1px solid rgba(112,83,38,.22);padding-top:24px}.raj-owner__principle{grid-template-columns:1fr;gap:16px}
  .raj-property{grid-template-columns:1fr}.raj-property__image img{min-height:0;height:430px}.raj-property__copy{padding:46px var(--page-pad)}
  .raj-vantage__statement{grid-template-columns:1fr;gap:24px}
  .raj-foundation{grid-template-columns:1fr;gap:32px}
}
@media(max-width:560px){
  .raj-hero{padding-top:108px;padding-bottom:38px}.raj-hero h1{font-size:clamp(48px,13vw,62px)}.raj-hero__facts{grid-template-columns:1fr}.raj-hero__facts span{min-height:70px;padding:12px 0;border-right:0;border-bottom:1px solid rgba(216,180,106,.14)}.raj-hero__facts span:last-child{border-bottom:0}.raj-hero__portrait{min-height:410px}.raj-hero__portrait figcaption{display:block}.raj-hero__portrait figcaption small{display:block;margin-top:5px}
  .raj-scale__numbers{grid-template-columns:1fr}.raj-scale__numbers article{min-height:170px;border-right:0!important;border-bottom:1px solid rgba(216,180,106,.17)!important}.raj-scale__numbers article:last-child{border-bottom:0!important}.raj-scale__numbers p{margin-top:18px}
  .raj-vantage__grid{grid-template-columns:1fr}.raj-vantage__grid article{min-height:0;padding:24px 0;border-right:0!important;border-bottom:1px solid rgba(74,61,42,.15)!important}.raj-vantage__grid article:last-child{border-bottom:0!important}.raj-vantage__grid h3{margin-top:22px}
  .raj-foundation__list article{grid-template-columns:1fr}.raj-foundation__list small{grid-row:auto;margin-bottom:8px}
  .raj-route{gap:10px 12px}
}

/* =========================================================
   ABOUT VANTAGE POINT — company-first rebuild
   ========================================================= */

.company-about-page {
  background: #f7f3ed;
  color: #1d1c18;
}

.company-about-hero {
  position: relative;
  min-height: 680px;
  padding: 144px var(--page-pad) 56px;
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
  gap: clamp(42px, 6vw, 88px);
  align-items: end;
  overflow: hidden;
  color: var(--ivory);
  background:
    radial-gradient(circle at 22% 18%, rgba(216,180,106,.09), transparent 28%),
    linear-gradient(135deg, #171816 0%, #20211d 58%, #121310 100%);
}

.company-about-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 0 54%, rgba(255,255,255,.02) 54% 54.1%, transparent 54.1%),
    linear-gradient(rgba(216,180,106,.06), rgba(216,180,106,0));
}

.company-about-hero__copy {
  position: relative;
  z-index: 1;
  max-width: 720px;
  padding-bottom: 18px;
}

.company-about-hero h1 {
  margin: 28px 0 24px;
  font-family: var(--font-display);
  font-size: clamp(58px, 5.6vw, 88px);
  font-weight: 400;
  line-height: .9;
  letter-spacing: -.055em;
}

.company-about-hero h1 em {
  color: #d8b46a;
  font-weight: 400;
}

.company-about-hero__copy > p:last-of-type {
  max-width: 640px;
  margin: 0;
  color: rgba(248,243,233,.76);
  font-size: clamp(17px, 1.12vw, 20px);
  font-weight: 500;
  line-height: 1.68;
}

.company-about-hero__principles {
  margin-top: 34px;
  padding-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  border-top: 1px solid rgba(216,180,106,.2);
}

.company-about-hero__principles span {
  padding: 9px 13px;
  border: 1px solid rgba(216,180,106,.22);
  color: rgba(248,243,233,.72);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.company-about-hero__media {
  position: relative;
  z-index: 1;
  margin: 0;
  min-height: 480px;
  height: 540px;
  overflow: hidden;
  border: 1px solid rgba(216,180,106,.22);
  background: #35352f;
}

.company-about-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 0 0 10px rgba(17,18,15,.08);
}

.company-about-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
  filter: saturate(.8) contrast(1.03);
}

.company-about-hero__media figcaption {
  position: absolute;
  right: 18px;
  bottom: 18px;
  left: 18px;
  z-index: 2;
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  color: var(--ivory-bright);
  background: rgba(17,18,15,.7);
  border: 1px solid rgba(216,180,106,.2);
  backdrop-filter: blur(12px);
}

.company-about-hero__media figcaption span {
  font-family: var(--font-display);
  font-size: 21px;
}

.company-about-hero__media figcaption small {
  color: rgba(248,243,233,.58);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.company-story {
  padding: clamp(62px, 5.2vw, 86px) var(--page-pad) clamp(64px, 5.5vw, 92px);
  background: #fffdf9;
  border-bottom: 1px solid rgba(69,56,39,.12);
}

.company-story__eyebrow {
  display: grid;
  grid-template-columns: 1fr minmax(280px, .55fr);
  gap: 44px;
  align-items: start;
}

.company-story__aside {
  max-width: 410px;
  justify-self: end;
  margin: 0;
  color: #7a6e5f;
  font-family: var(--font-display);
  font-size: 20px;
  font-style: italic;
  line-height: 1.25;
}

.company-story__headline {
  margin-top: 34px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .55fr);
}

.company-story__headline h2 {
  grid-column: 1;
  max-width: 900px;
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(50px, 4.7vw, 74px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.05em;
}

.company-story__headline h2 em {
  color: #8c6c39;
  font-weight: 400;
}

.company-story__copy {
  width: min(840px, 100%);
  margin: 34px 0 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 46px;
}

.company-story__copy p {
  margin: 0;
  color: #554e44;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.76;
}

.company-values {
  margin-top: 52px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  border-top: 1px solid rgba(75,61,42,.16);
  border-bottom: 1px solid rgba(75,61,42,.16);
}

.company-values article {
  min-height: 222px;
  padding: 24px 22px 28px;
  border-right: 1px solid rgba(75,61,42,.13);
}

.company-values article:first-child { padding-left: 0; }
.company-values article:last-child { border-right: 0; }

.company-values span {
  color: #9b7b48;
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.company-values h3 {
  margin: 44px 0 12px;
  font-family: var(--font-display);
  font-size: clamp(24px, 1.75vw, 30px);
  font-weight: 400;
  line-height: 1.05;
}

.company-values p {
  margin: 0;
  color: #645c50;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.65;
}

.company-process {
  min-height: 650px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(500px, .9fr);
  background: #eee5d9;
  border-bottom: 1px solid rgba(99,76,43,.14);
}

.company-process__media {
  position: relative;
  margin: 0;
  min-height: 650px;
  overflow: hidden;
  background: #b8aa97;
}

.company-process__media img {
  width: 100%;
  height: 100%;
  min-height: 650px;
  display: block;
  object-fit: cover;
  object-position: center center;
  filter: saturate(.82) contrast(1.02);
}

.company-process__media figcaption {
  position: absolute;
  left: 22px;
  bottom: 20px;
  padding: 8px 11px;
  color: rgba(248,243,233,.75);
  background: rgba(17,18,15,.72);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.company-process__content {
  padding: clamp(58px, 5vw, 78px) clamp(42px, 5vw, 76px);
  align-self: center;
}

.company-process__content h2 {
  margin: 22px 0 18px;
  font-family: var(--font-display);
  font-size: clamp(48px, 4.25vw, 68px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.05em;
}

.company-process__content h2 em {
  color: #8c6d3c;
  font-weight: 400;
}

.company-process__lead {
  max-width: 560px;
  margin: 0;
  color: #5f574b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.72;
}

.company-process__steps {
  margin-top: 32px;
  border-top: 1px solid rgba(79,65,45,.18);
}

.company-process__steps article {
  padding: 17px 0;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 18px;
  border-bottom: 1px solid rgba(79,65,45,.15);
}

.company-process__steps article > span {
  color: #9b7b48;
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.company-process__steps h3 {
  margin: 0 0 5px;
  font-family: var(--font-display);
  font-size: clamp(22px, 1.6vw, 28px);
  font-weight: 400;
}

.company-process__steps p {
  margin: 0;
  color: #62594c;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.58;
}

.founder-profile {
  padding: clamp(66px, 5.5vw, 90px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(340px, .64fr) minmax(480px, 1fr);
  gap: clamp(44px, 6vw, 92px);
  color: var(--ivory);
  background:
    radial-gradient(circle at 18% 16%, rgba(216,180,106,.08), transparent 25%),
    linear-gradient(135deg,#191a17 0%,#22231f 54%,#141512 100%);
}

.founder-profile__portrait figure {
  position: sticky;
  top: 112px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(216,180,106,.22);
  background: #c8bda9;
}

.founder-profile__portrait img {
  width: 100%;
  height: 520px;
  display: block;
  object-fit: cover;
  object-position: center 16%;
  filter: saturate(.88) contrast(1.03);
}

.founder-profile__portrait figcaption {
  padding: 16px 18px 17px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: end;
  background: rgba(17,18,15,.96);
}

.founder-profile__portrait figcaption strong {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 400;
}

.founder-profile__portrait figcaption span {
  max-width: 150px;
  color: rgba(248,243,233,.54);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .15em;
  line-height: 1.5;
  text-align: right;
  text-transform: uppercase;
}

.founder-profile__story h2 {
  margin: 24px 0 22px;
  font-family: var(--font-display);
  font-size: clamp(48px, 4.4vw, 70px);
  font-weight: 400;
  line-height: .93;
  letter-spacing: -.05em;
}

.founder-profile__story h2 em {
  color: #d8b46a;
  font-weight: 400;
}

.founder-profile__story > p {
  margin: 0 0 17px;
  color: rgba(248,243,233,.68);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.74;
}

.founder-profile__story .founder-profile__lead {
  color: rgba(248,243,233,.88);
  font-family: var(--font-display);
  font-size: clamp(21px, 1.7vw, 28px);
  font-weight: 400;
  line-height: 1.28;
}

.founder-profile__facts {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  border-top: 1px solid rgba(216,180,106,.2);
  border-bottom: 1px solid rgba(216,180,106,.2);
}

.founder-profile__facts span {
  min-height: 116px;
  padding: 18px 18px 18px 0;
  border-right: 1px solid rgba(216,180,106,.16);
}

.founder-profile__facts span:nth-child(2),
.founder-profile__facts span:nth-child(3) { padding-left: 18px; }
.founder-profile__facts span:last-child { border-right: 0; }

.founder-profile__facts strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(34px, 2.8vw, 44px);
  font-weight: 400;
  line-height: 1;
}

.founder-profile__facts small {
  display: block;
  margin-top: 9px;
  color: rgba(248,243,233,.45);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .14em;
  line-height: 1.5;
  text-transform: uppercase;
}

.founder-profile__relevance {
  grid-column: 1 / -1;
  margin-top: 2px;
  padding-top: 28px;
  border-top: 1px solid rgba(216,180,106,.17);
}

.founder-profile__relevance > div {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.founder-profile__relevance article {
  min-height: 190px;
  padding: 20px 22px;
  border-right: 1px solid rgba(216,180,106,.14);
}

.founder-profile__relevance article:first-child { padding-left: 0; }
.founder-profile__relevance article:last-child { border-right: 0; }

.founder-profile__relevance article > span {
  color: #d8b46a;
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.founder-profile__relevance h3 {
  margin: 34px 0 10px;
  font-family: var(--font-display);
  font-size: clamp(22px, 1.65vw, 28px);
  font-weight: 400;
  line-height: 1.06;
}

.founder-profile__relevance p {
  margin: 0;
  color: rgba(248,243,233,.52);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.62;
}

.meet-team {
  padding: clamp(64px, 5.4vw, 90px) 0 clamp(58px, 5vw, 82px);
  overflow: hidden;
  background: #fffdf9;
}

.meet-team__header {
  padding: 0 var(--page-pad);
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.5fr);
  gap: clamp(40px,6vw,90px);
  align-items: end;
}

.meet-team__header h2 {
  margin: 22px 0 0;
  font-family: var(--font-display);
  font-size: clamp(48px, 4.4vw, 70px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.05em;
}

.meet-team__header h2 em {
  color: #8c6d3c;
  font-weight: 400;
}

.meet-team__header > p {
  margin: 0;
  color: #62594d;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.72;
}

.meet-team__rail {
  margin-top: 42px;
  padding: 0 var(--page-pad) 12px;
  display: flex;
  gap: 18px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: rgba(121,93,49,.35) transparent;
}

.team-profile-card {
  flex: 0 0 clamp(290px, 26vw, 350px);
  scroll-snap-align: start;
  border: 1px solid rgba(75,61,42,.14);
  background: #f4ede3;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.team-profile-card:hover {
  transform: translateY(-4px);
  border-color: rgba(121,93,49,.28);
  box-shadow: 0 16px 34px rgba(70,54,28,.07);
}

.team-profile-card__photo {
  position: relative;
  height: 300px;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #8e7143;
  background:
    linear-gradient(135deg, rgba(216,180,106,.15), rgba(255,255,255,.45)),
    repeating-linear-gradient(90deg, transparent 0 42px, rgba(107,87,58,.04) 42px 43px),
    #e8dfd2;
}

.team-profile-card__photo::before {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  border: 1px solid rgba(121,93,49,.14);
  border-radius: 50%;
}

.team-profile-card__photo::after {
  content: "";
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 56px;
  height: 1px;
  background: rgba(121,93,49,.32);
}

.team-profile-card__photo > span {
  position: relative;
  z-index: 1;
  font-family: var(--font-display);
  font-size: 44px;
  letter-spacing: -.04em;
}

.team-profile-card__photo small {
  position: absolute;
  left: 18px;
  bottom: 18px;
  color: #8a7961;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.team-profile-card__body {
  padding: 20px 20px 22px;
  border-top: 1px solid rgba(75,61,42,.12);
}

.team-profile-card__body > span {
  color: #9a7b4a;
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.team-profile-card__body h3 {
  margin: 18px 0 5px;
  font-family: var(--font-display);
  font-size: 28px;
  font-weight: 400;
}

.team-profile-card__body strong {
  display: block;
  color: #82663b;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.team-profile-card__body p {
  margin: 14px 0 0;
  color: #645c50;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.62;
}

.meet-team__hint {
  margin: 14px var(--page-pad) 0;
  color: #8a7a65;
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.work-together {
  padding: clamp(62px, 5.2vw, 88px) var(--page-pad) clamp(64px,5.4vw,92px);
  display: grid;
  grid-template-columns: minmax(330px,.68fr) minmax(600px,1fr);
  gap: clamp(46px, 7vw, 110px);
  align-items: end;
  color: var(--ivory);
  background:
    radial-gradient(circle at 80% 0%, rgba(216,180,106,.08), transparent 28%),
    #1a1b18;
}

.work-together__intro h2 {
  margin: 22px 0 18px;
  font-family: var(--font-display);
  font-size: clamp(48px, 4.4vw, 70px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.05em;
}

.work-together__intro h2 em {
  color: #d8b46a;
  font-weight: 400;
}

.work-together__intro > p:last-child {
  max-width: 540px;
  margin: 0;
  color: rgba(248,243,233,.64);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.72;
}

.work-together__options {
  border-top: 1px solid rgba(216,180,106,.18);
}

.work-together__options > a {
  min-height: 118px;
  padding: 20px 0;
  display: grid;
  grid-template-columns: 42px minmax(130px,.42fr) minmax(280px,1fr) 24px;
  gap: 16px;
  align-items: center;
  color: var(--ivory);
  border-bottom: 1px solid rgba(216,180,106,.15);
  transition: padding-left .3s ease, color .25s ease;
}

.work-together__options > a:hover {
  padding-left: 10px;
  color: #d8b46a;
}

.work-together__options > a > span {
  color: #d8b46a;
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.work-together__options small {
  color: rgba(248,243,233,.46);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.work-together__options strong {
  font-family: var(--font-display);
  font-size: clamp(24px,1.8vw,31px);
  font-weight: 400;
  line-height: 1.08;
}

.work-together__options i {
  justify-self: end;
  font-style: normal;
  font-size: 18px;
}

@media (max-width: 1180px) {
  .company-about-hero { grid-template-columns: minmax(0,1fr) minmax(390px,.9fr); gap: 42px; }
  .company-values { grid-template-columns: 1fr 1fr; }
  .company-values article:nth-child(2) { border-right: 0; }
  .company-values article:nth-child(-n+2) { border-bottom: 1px solid rgba(75,61,42,.13); }
  .company-process { grid-template-columns: minmax(0, .95fr) minmax(460px,1fr); }
  .founder-profile__relevance > div { grid-template-columns: 1fr 1fr; }
  .founder-profile__relevance article:nth-child(2) { border-right: 0; }
  .founder-profile__relevance article:nth-child(-n+2) { border-bottom: 1px solid rgba(216,180,106,.14); }
  .work-together { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .company-about-hero {
    min-height: 0;
    padding-top: 118px;
    grid-template-columns: 1fr;
  }
  .company-about-hero__media { height: 430px; min-height: 0; }
  .company-story__eyebrow,
  .company-story__headline,
  .company-story__copy,
  .meet-team__header { grid-template-columns: 1fr; }
  .company-story__aside { justify-self: start; }
  .company-story__headline h2 { grid-column: auto; }
  .company-story__copy { margin-left: 0; }
  .company-process { grid-template-columns: 1fr; }
  .company-process__media,
  .company-process__media img { min-height: 0; height: 430px; }
  .founder-profile { grid-template-columns: 1fr; gap: 34px; }
  .founder-profile__portrait figure { position: static; }
  .founder-profile__portrait img { height: 500px; }
  .founder-profile__facts { grid-template-columns: 1fr; }
  .founder-profile__facts span { min-height: 82px; padding: 14px 0!important; border-right: 0; border-bottom: 1px solid rgba(216,180,106,.14); }
  .founder-profile__facts span:last-child { border-bottom: 0; }
  .work-together__options > a { grid-template-columns: 34px 1fr 24px; }
  .work-together__options small { grid-column: 2; }
  .work-together__options strong { grid-column: 2; }
  .work-together__options i { grid-column: 3; grid-row: 1 / 4; }
}

@media (max-width: 560px) {
  .company-about-hero h1 { font-size: clamp(48px,13vw,62px); }
  .company-about-hero__media { height: 340px; }
  .company-about-hero__media figcaption { display: block; }
  .company-about-hero__media figcaption small { display: block; margin-top: 4px; }
  .company-story__copy { grid-template-columns: 1fr; }
  .company-values { grid-template-columns: 1fr; }
  .company-values article { min-height: 0; padding: 22px 0; border-right: 0!important; border-bottom: 1px solid rgba(75,61,42,.13)!important; }
  .company-values article:last-child { border-bottom: 0!important; }
  .company-values h3 { margin-top: 20px; }
  .company-process__media,
  .company-process__media img { height: 330px; }
  .company-process__content { padding: 42px var(--page-pad); }
  .founder-profile__portrait img { height: 390px; }
  .founder-profile__relevance > div { grid-template-columns: 1fr; }
  .founder-profile__relevance article { min-height: 0; padding: 22px 0; border-right: 0!important; border-bottom: 1px solid rgba(216,180,106,.14)!important; }
  .founder-profile__relevance article:last-child { border-bottom: 0!important; }
  .founder-profile__relevance h3 { margin-top: 18px; }
  .meet-team__rail { padding-right: 18px; }
  .team-profile-card { flex-basis: 84vw; }
  .team-profile-card__photo { height: 270px; }
}

/* =========================================================
   ABOUT PAGE — BOUTIQUE ICON + GOLD DETAIL PASS
   Uses Font Awesome Free for a consistent professional icon system.
   ========================================================= */

.company-values--boutique {
  border: 1px solid rgba(151, 112, 50, .34);
  background: rgba(255, 255, 255, .76);
  box-shadow: 0 22px 55px rgba(63, 48, 25, .055);
}

.company-values--boutique article {
  position: relative;
  min-height: 245px;
  padding: 26px 24px 30px;
  border-right: 1px solid rgba(151, 112, 50, .22);
  overflow: hidden;
}

.company-values--boutique article:first-child { padding-left: 24px; }
.company-values--boutique article::after {
  content: "";
  position: absolute;
  right: -26px;
  bottom: -38px;
  width: 100px;
  height: 100px;
  border: 1px solid rgba(151, 112, 50, .09);
  border-radius: 50%;
}

.value-icon,
.process-icon,
.founder-relevance-icon,
.work-option-icon {
  display: grid;
  place-items: center;
  color: #a37d43;
  border: 1px solid rgba(151, 112, 50, .28);
  background: rgba(255, 255, 255, .56);
}

.value-icon {
  width: 48px;
  height: 48px;
  margin-bottom: 26px;
  border-radius: 50%;
  font-size: 18px;
}

.company-values--boutique span {
  position: absolute;
  right: 20px;
  top: 28px;
  font-size: 11px;
}

.company-values--boutique h3 {
  margin: 0 0 12px;
}

.company-process__steps--icons article {
  grid-template-columns: 42px 30px 1fr;
  align-items: center;
  padding: 16px 0;
}

.process-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  font-size: 14px;
}

.company-process__steps--icons article > span {
  text-align: center;
  font-size: 10px;
}

.company-process__steps--icons h3 {
  font-size: clamp(21px, 1.5vw, 27px);
}

.founder-relevance-grid article {
  position: relative;
  padding-top: 22px;
}

.founder-relevance-icon {
  width: 42px;
  height: 42px;
  margin-bottom: 23px;
  border-radius: 50%;
  color: #ddb96c;
  background: rgba(255, 255, 255, .035);
  border-color: rgba(216, 180, 106, .26);
  font-size: 15px;
}

.founder-relevance-grid article > span {
  position: absolute;
  right: 18px;
  top: 28px;
}

.founder-relevance-grid h3 {
  margin-top: 0;
}

.team-placeholder-icon {
  width: 104px;
  height: 104px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(145, 107, 50, .22);
  border-radius: 50%;
  color: #977445;
  background: rgba(255, 255, 255, .34);
  box-shadow: inset 0 0 0 10px rgba(255,255,255,.18);
}

.team-placeholder-icon i {
  font-size: 34px;
}

.team-profile-card__photo > .team-placeholder-icon {
  font-family: inherit;
  letter-spacing: 0;
}

/* The CTA becomes a boutique "three doors" concept instead of a generic list. */
.work-together--boutique {
  position: relative;
  align-items: start;
  background:
    radial-gradient(circle at 10% 18%, rgba(216, 180, 106, .08), transparent 26%),
    linear-gradient(135deg, #141512 0%, #1d1e1a 58%, #11120f 100%);
  border-top: 1px solid rgba(216, 180, 106, .34);
  border-bottom: 1px solid rgba(216, 180, 106, .22);
}

.work-together--boutique::before {
  content: "";
  position: absolute;
  inset: 18px;
  pointer-events: none;
  border: 1px solid rgba(216, 180, 106, .16);
}

.work-together--boutique .work-together__intro {
  position: relative;
  z-index: 1;
  padding-top: 12px;
}

.work-together__signature {
  margin-top: 34px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.work-together__signature > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(216,180,106,.36);
  color: #d8b46a;
  font-family: var(--font-display);
  font-size: 18px;
}

.work-together__signature small {
  color: rgba(248,243,233,.44);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.work-together__options--cards {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  border: 0;
}

.work-together__options--cards > a {
  position: relative;
  min-height: 300px;
  padding: 24px 22px 22px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  border: 1px solid rgba(216,180,106,.34);
  color: var(--ivory);
  background: rgba(255,255,255,.025);
  overflow: hidden;
  transition: transform .32s ease, background .32s ease, border-color .32s ease;
}

.work-together__options--cards > a::after {
  content: "";
  position: absolute;
  right: -50px;
  bottom: -50px;
  width: 140px;
  height: 140px;
  border: 1px solid rgba(216,180,106,.10);
  border-radius: 50%;
  transition: transform .35s ease;
}

.work-together__options--cards > a:hover {
  padding-left: 22px;
  transform: translateY(-5px);
  color: var(--ivory);
  background: rgba(216,180,106,.07);
  border-color: rgba(216,180,106,.66);
}

.work-together__options--cards > a:hover::after {
  transform: scale(1.15);
}

.work-option-icon {
  width: 48px;
  height: 48px;
  margin-bottom: 28px;
  border-radius: 50%;
  color: #d8b46a;
  background: rgba(255,255,255,.035);
  border-color: rgba(216,180,106,.32);
  font-size: 16px;
}

.work-together__options--cards > a > span {
  position: absolute;
  right: 19px;
  top: 20px;
  color: rgba(216,180,106,.74);
  font-family: var(--font-display);
  font-size: 12px;
  font-style: italic;
}

.work-together__options--cards small {
  margin-bottom: 15px;
  color: rgba(248,243,233,.48);
  font-size: 8px;
  font-weight: 760;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.work-together__options--cards strong {
  max-width: 280px;
  font-family: var(--font-display);
  font-size: clamp(26px, 2vw, 32px);
  font-weight: 400;
  line-height: 1.07;
}

.work-together__options--cards p {
  margin: 16px 0 28px;
  color: rgba(248,243,233,.52);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}

.work-together__options--cards > a > i:last-child {
  margin-top: auto;
  color: #d8b46a;
  font-size: 16px;
}

/* Make the company section more visible and intentionally boutique. */
.company-story {
  background: #fffdf9;
}

.company-story__eyebrow {
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(151,112,50,.17);
}

.company-story__headline h2::after {
  content: "V/02";
  margin-left: 18px;
  color: rgba(151,112,50,.40);
  font-family: var(--font-sans);
  font-size: 9px;
  font-style: normal;
  font-weight: 760;
  letter-spacing: .16em;
  vertical-align: middle;
}

@media (max-width: 1180px) {
  .work-together__options--cards {
    grid-template-columns: repeat(3, minmax(220px,1fr));
  }
  .work-together__options--cards > a {
    min-height: 285px;
  }
}

@media (max-width: 900px) {
  .work-together__options--cards {
    grid-template-columns: 1fr;
  }
  .work-together__options--cards > a {
    min-height: 230px;
  }
  .company-process__steps--icons article {
    grid-template-columns: 38px 26px 1fr;
    gap: 12px;
  }
}

@media (max-width: 560px) {
  .company-values--boutique article:first-child { padding-left: 20px; }
  .company-values--boutique article { padding: 22px 20px 24px; }
  .work-together--boutique::before { inset: 10px; }
  .work-together__signature { margin-top: 24px; }
}

.company-about-page .lux-footer__social-icons i {
  font-size: 16px;
  line-height: 1;
}
.company-about-page .whatsapp-float__icon i {
  font-size: 23px;
  line-height: 1;
}


/* =========================================================
   ABOUT V2 — CLEAN WORK TOGETHER CTA
   ========================================================= */

.work-together--clean {
  position: relative;
  padding: clamp(58px, 6vw, 92px) max(6.5vw, 28px);
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.55fr);
  gap: clamp(48px, 7vw, 110px);
  align-items: center;
  color: #201c17;
  background: #f4efe7;
  border-top: 1px solid rgba(185, 145, 73, 0.42);
  border-bottom: 1px solid rgba(185, 145, 73, 0.42);
}

.work-together--clean::before,
.work-together--clean::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.work-together--clean::before {
  inset: 16px;
  border: 1px solid rgba(185, 145, 73, 0.20);
}

.work-together--clean::after {
  top: 0;
  right: 8.2%;
  width: 160px;
  height: 1px;
  background: #c39a51;
}

.work-together-clean__copy {
  position: relative;
  z-index: 1;
  max-width: 830px;
}

.work-together-clean__copy h2 {
  margin: 24px 0 20px;
  max-width: 850px;
  font-family: var(--font-display);
  font-size: clamp(46px, 5.1vw, 78px);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.055em;
}

.work-together-clean__copy h2 em {
  color: #9d7435;
  font-weight: 400;
}

.work-together-clean__copy > p:not(.section-kicker) {
  max-width: 650px;
  margin: 0;
  color: #5b5246;
  font-size: clamp(15px, 1.1vw, 18px);
  font-weight: 500;
  line-height: 1.72;
}

.work-together-clean__meta {
  width: min(100%, 700px);
  margin-top: 28px;
  display: grid;
  gap: 18px;
}

.work-together-clean__microcopy {
  display: grid;
  gap: 8px;
}

.work-together-clean__microcopy span {
  color: #9d7435;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.work-together-clean__microcopy p {
  margin: 0;
  color: #6a604f;
  font-size: 14px;
  line-height: 1.6;
}

.work-together-clean__actions {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.button--outline-ink {
  color: #211d18;
  background: transparent;
  border: 1px solid rgba(33,29,24,0.42);
}

.button--outline-ink:hover {
  color: #fffaf1;
  background: #211d18;
  border-color: #211d18;
}

.work-together-clean__leadership {
  width: min(100%, 650px);
  margin-top: 32px;
  padding: 18px 0;
  display: grid;
  grid-template-columns: 46px 1fr auto;
  gap: 16px;
  align-items: center;
  color: #211d18;
  border-top: 1px solid rgba(116, 91, 52, 0.20);
  border-bottom: 1px solid rgba(116, 91, 52, 0.20);
}

.work-together-clean__leadership-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #9d7435;
  background: rgba(185,145,73,0.08);
  border: 1px solid rgba(185,145,73,0.30);
}

.work-together-clean__leadership small,
.work-together-clean__leadership strong {
  display: block;
}

.work-together-clean__leadership small {
  margin-bottom: 5px;
  color: #9d7435;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.work-together-clean__leadership strong {
  font-family: var(--font-display);
  font-size: clamp(20px, 1.65vw, 26px);
  font-weight: 400;
}

.work-together-clean__leadership > i {
  color: #9d7435;
  transition: transform .25s ease;
}

.work-together-clean__leadership:hover > i {
  transform: translateX(6px);
}

.work-together-clean__visual {
  position: relative;
  z-index: 1;
  min-height: 330px;
  padding: 0 0 0 34px;
  display: flex;
  align-items: stretch;
  border-left: 1px solid rgba(116,91,52,0.22);
}

.work-together-clean__visual--photo {
  justify-content: center;
}

.careers-visual-card {
  position: relative;
  width: 100%;
  min-height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(185,145,73,0.28);
  background: #e8e0d1;
  box-shadow: 0 22px 60px rgba(32, 28, 23, 0.08);
}

.careers-visual-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(9,9,9,0.02) 20%, rgba(17,16,14,0.58) 100%);
}

.careers-visual-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-visual-card figcaption {
  position: absolute;
  inset: auto 22px 22px 22px;
  z-index: 1;
  display: grid;
  gap: 6px;
  padding: 18px 18px 16px;
  border-radius: 18px;
  color: #fffaf2;
  background: rgba(18, 16, 12, 0.58);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.12);
}

.careers-visual-card small {
  color: #d7b26d;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.careers-visual-card strong {
  font-family: var(--font-display);
  font-size: clamp(24px, 2.3vw, 36px);
  line-height: 0.98;
  letter-spacing: -0.04em;
  font-weight: 400;
}

.careers-visual-card span {
  color: rgba(255,250,242,0.84);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .work-together--clean {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .work-together-clean__visual {
    min-height: 320px;
    padding: 28px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(116,91,52,0.22);
  }
  .careers-visual-card {
    min-height: 320px;
  }
}

@media (max-width: 560px) {
  .work-together--clean::before { inset: 8px; }
  .work-together-clean__actions {
    flex-direction: column;
    align-items: stretch;
  }
  .work-together-clean__actions .button {
    width: 100%;
  }
  .work-together-clean__leadership {
    grid-template-columns: 40px 1fr 18px;
  }
}


/* =========================================================
   CAREERS PAGE — boutique recruitment experience
   ========================================================= */

.button--outline-light {
  color: rgba(250, 245, 237, 0.92);
  background: transparent;
  border: 1px solid rgba(250, 245, 237, 0.22);
}

.button--outline-light:hover {
  color: #171713;
  background: #f8f2e8;
  border-color: #f8f2e8;
}

.careers-page {
  background: #151613;
}

.careers-hero {
  width: min(1380px, calc(100vw - 56px));
  margin: 0 auto;
  padding: 148px 0 72px;
  display: grid;
  grid-template-columns: minmax(340px, 0.92fr) minmax(360px, 1fr);
  gap: clamp(30px, 4vw, 56px);
  align-items: center;
  color: var(--ivory-bright);
}

.careers-hero__copy > p:not(.section-kicker) {
  max-width: 640px;
  margin: 0;
  color: rgba(248, 243, 233, 0.76);
  font-size: clamp(16px, 1.12vw, 18px);
  font-weight: 500;
  line-height: 1.72;
}

.careers-hero__tags {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.careers-hero__tags span,
.career-role-card__meta span,
.career-role-card ul li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(216, 180, 106, 0.2);
  background: rgba(255,255,255,0.04);
  color: #ead9b4;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.careers-hero__actions {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.careers-hero__microcopy {
  margin-top: 20px !important;
  color: rgba(248, 243, 233, 0.54) !important;
  font-size: 13px !important;
}

.careers-hero__media {
  position: relative;
  min-height: 560px;
  margin: 0;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(216,180,106,0.18);
  box-shadow: 0 35px 80px rgba(0,0,0,0.32);
}

.careers-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,15,15,0.05) 15%, rgba(15,15,15,0.68) 100%);
}

.careers-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-hero__media figcaption {
  position: absolute;
  left: 26px;
  right: 26px;
  bottom: 24px;
  z-index: 1;
  display: grid;
  gap: 6px;
  padding: 18px 18px 16px;
  border-radius: 18px;
  background: rgba(18,16,13,0.46);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.1);
}

.careers-hero__media figcaption span {
  color: #d7b26d;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.careers-hero__media figcaption strong {
  color: #fff8f0;
  font-family: var(--font-display);
  font-size: clamp(28px, 2.5vw, 38px);
  line-height: 1.02;
  letter-spacing: -0.04em;
  font-weight: 400;
}

.careers-why,
.careers-fit,
.career-roles {
  width: min(1320px, calc(100vw - 56px));
  margin: 0 auto;
}

.careers-why {
  padding: 72px 0 72px;
  color: var(--ink);
  background: #f7f2ea;
  box-shadow: 0 0 0 100vmax #f7f2ea;
  clip-path: inset(0 -100vmax);
}

.careers-why__intro {
  max-width: 820px;
  margin-bottom: 28px;
}

.careers-why__intro > p:last-child,
.career-roles__header > p,
.careers-fit__copy > p:last-child {
  max-width: 680px;
  color: #544a3e;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.68;
}

.careers-why__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}

.careers-why__grid article {
  padding: 24px 22px 22px;
  border: 1px solid rgba(183, 145, 73, 0.18);
  background: rgba(255,255,255,0.54);
  box-shadow: 0 15px 36px rgba(44, 31, 12, 0.05);
}

.careers-card-icon {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(183,145,73,0.18);
  background: rgba(255,255,255,0.62);
  color: #9a7335;
  font-size: 18px;
}

.careers-why__grid article > span,
.careers-method__list article > span,
.founder-profile__facts span small {
  display: inline-block;
  margin-top: 18px;
  color: #9d815a;
  font-size: 10px;
  font-weight: 780;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.careers-why__grid h3,
.careers-method__list h3,
.career-role-card h3,
.careers-fit__traits h3 {
  margin: 10px 0 8px;
  font-family: var(--font-display);
  font-size: clamp(24px, 1.9vw, 30px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -0.03em;
}

.careers-why__grid p,
.careers-method__list p,
.careers-fit__traits p,
.career-role-card p,
.career-apply__copy > p:not(.section-kicker),
.contact-form--career .contact-form__note {
  margin: 0;
  color: #5e5448;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.68;
}

.careers-method {
  width: min(1380px, calc(100vw - 56px));
  margin: 0 auto;
  padding: 72px 0;
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(340px, 1fr);
  gap: clamp(28px, 4vw, 52px);
  align-items: stretch;
  color: var(--ivory-bright);
}

.careers-method__media {
  position: relative;
  min-height: 580px;
  margin: 0;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(216,180,106,0.14);
}

.careers-method__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,15,15,0.03) 10%, rgba(15,15,15,0.58) 100%);
}

.careers-method__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-method__media figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 18px;
  z-index: 1;
  color: rgba(255,248,240,0.82);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.careers-method__content {
  display: grid;
  align-content: center;
}

.careers-method__lead {
  max-width: 620px;
  color: rgba(248,243,233,0.74);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.68;
}

.careers-method__list {
  margin-top: 26px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 18px;
}

.careers-method__list article {
  padding: 22px 20px 18px;
  border: 1px solid rgba(216,180,106,0.14);
  background: rgba(255,255,255,0.03);
}

.careers-method__list article > span {
  margin-top: 0;
  color: #d4b06d;
}

.careers-method__list p {
  color: rgba(248,243,233,0.72);
}

.careers-fit {
  padding: 72px 0;
  display: grid;
  background: #ece2d5;
  box-shadow: 0 0 0 100vmax #ece2d5;
  clip-path: inset(0 -100vmax);
  grid-template-columns: minmax(320px, 0.74fr) minmax(420px, 1fr);
  gap: clamp(30px, 4vw, 62px);
  align-items: start;
  color: var(--ink);
}

.careers-fit__traits {
  display: grid;
  gap: 14px;
}

.careers-fit__traits article {
  padding: 18px 18px;
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  border: 1px solid rgba(183,145,73,0.16);
  background: rgba(255,255,255,0.56);
}

.careers-fit__traits i {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(183,145,73,0.2);
  color: #9b7435;
  background: rgba(255,255,255,0.66);
  font-size: 18px;
}

.career-roles {
  padding: 72px 0 82px;
  color: var(--ink);
  background: #f8f4ec;
  box-shadow: 0 0 0 100vmax #f8f4ec;
  clip-path: inset(0 -100vmax);
}

.career-roles__header {
  margin-bottom: 24px;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: end;
}

.career-roles__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 18px;
}

.career-role-card {
  padding: 24px 22px 20px;
  border: 1px solid rgba(183,145,73,0.16);
  background: rgba(255,255,255,0.58);
  box-shadow: 0 16px 36px rgba(44,31,12,0.05);
}

.career-role-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.career-role-card p {
  max-width: 480px;
}

.career-role-card ul {
  margin: 18px 0 18px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
}

.career-role-card ul li {
  background: #f7efe0;
  color: #856230;
}

.career-role-card a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #1e1a14;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.career-role-card a:hover {
  color: #9b7435;
}

.career-apply {
  width: min(1380px, calc(100vw - 56px));
  margin: 0 auto;
  padding: 72px 0 84px;
  display: grid;
  grid-template-columns: minmax(320px, 0.84fr) minmax(360px, 1fr);
  gap: clamp(28px, 4vw, 54px);
  align-items: start;
  color: var(--ivory-bright);
}

.career-apply__copy > p:not(.section-kicker) {
  max-width: 590px;
  color: rgba(248,243,233,0.75);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.72;
}

.career-apply__notes {
  margin-top: 26px;
  display: grid;
  gap: 12px;
}

.career-apply__notes a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: rgba(248,243,233,0.9);
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.career-apply__notes a i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(216,180,106,0.18);
  color: #d4b06d;
}

.career-apply__notes a:hover {
  color: #d4b06d;
}

.career-apply__form-shell {
  padding: 28px 30px;
  border-radius: 28px;
  border: 1px solid rgba(216,180,106,0.14);
  background: #f5efe6;
  color: var(--ink);
  box-shadow: 0 28px 65px rgba(0,0,0,0.18);
}

.contact-form--career label > span {
  color: #8f7a59;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.contact-form__grid--career {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.contact-form--career input,
.contact-form--career textarea {
  width: 100%;
  border: 1px solid rgba(125,100,64,0.2);
  background: #fffdfa;
  color: #1e1b15;
  font-size: 15px;
  font-weight: 560;
}

.contact-form--career input {
  height: 52px;
  padding: 0 14px;
}

.contact-form--career textarea {
  min-height: 136px;
  padding: 14px;
}

.contact-form--career input::placeholder,
.contact-form--career textarea::placeholder {
  color: #9d9180;
}

.contact-form--career input:focus,
.contact-form--career textarea:focus {
  border-color: rgba(157,116,53,0.45);
  box-shadow: 0 0 0 3px rgba(216,180,106,0.12);
}

.contact-form--career .contact-form__note,
.contact-form--career .contact-form__status {
  margin-top: 14px;
  color: #6a5f4f;
}

@media (max-width: 1180px) {
  .careers-why__grid,
  .career-roles__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .careers-method,
  .careers-fit,
  .career-apply,
  .careers-hero {
    grid-template-columns: 1fr;
  }
  .careers-method__media,
  .careers-hero__media {
    min-height: 460px;
  }
}

@media (max-width: 820px) {
  .careers-hero,
  .careers-method,
  .careers-fit,
  .career-roles,
  .career-apply {
    width: min(100vw - 28px, 100%);
  }
  .careers-hero {
    padding-top: 124px;
  }
  .careers-why,
  .careers-fit,
  .career-roles {
    width: min(100vw - 28px, 100%);
  }
  .careers-method__list,
  .career-roles__grid,
  .careers-why__grid,
  .contact-form__grid--career {
    grid-template-columns: 1fr;
  }
  .career-roles__header {
    flex-direction: column;
    align-items: start;
  }
}

@media (max-width: 560px) {
  .careers-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }
  .careers-hero__media,
  .careers-method__media {
    min-height: 360px;
    border-radius: 22px;
  }
  .career-apply__form-shell {
    padding: 22px 20px;
  }
  .careers-fit__traits article {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   CAREER CAMPAIGN V2 — recruitment page with its own language
   ========================================================= */
.career-campaign {
  background:#11120f;
  color:#f6f0e5;
  overflow:hidden;
}

.career-poster {
  position:relative;
  min-height:100svh;
  display:grid;
  align-items:end;
  padding:140px max(5vw,28px) 54px;
  isolation:isolate;
  background:#0e0f0c;
}

.career-poster__image,
.career-poster__shade {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.career-poster__image {
  object-fit:cover;
  object-position:center 42%;
  z-index:-3;
  transform:scale(1.015);
}

.career-poster__shade {
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(8,9,7,.78) 0%,rgba(8,9,7,.45) 42%,rgba(8,9,7,.12) 70%,rgba(8,9,7,.3) 100%),
    linear-gradient(180deg,rgba(8,9,7,.18) 18%,rgba(8,9,7,.18) 55%,rgba(8,9,7,.82) 100%);
}

.career-poster::after {
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(216,180,106,.22);
  pointer-events:none;
  z-index:-1;
}

.career-poster__topline {
  position:absolute;
  top:112px;
  left:max(5vw,28px);
  right:max(5vw,28px);
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:rgba(246,240,229,.7);
  font-size:9px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.career-poster__copy {
  max-width:1020px;
}

.career-poster__copy > p {
  margin:0 0 14px;
  color:#d8b46a;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.career-poster h1 {
  margin:0;
  max-width:1050px;
  font-family:var(--font-display);
  font-size:clamp(72px,9.8vw,150px);
  font-weight:400;
  line-height:.82;
  letter-spacing:-.065em;
  text-wrap:balance;
}

.career-poster h1 em {
  color:#d8b46a;
  font-weight:400;
}

.career-poster__scroll {
  position:absolute;
  right:max(5vw,28px);
  bottom:58px;
  display:flex;
  align-items:center;
  gap:14px;
  color:#f6f0e5;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.career-poster__scroll i {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,180,106,.42);
  border-radius:50%;
  color:#d8b46a;
}

.career-manifesto {
  background:#f2ecdf;
  color:#1a1915;
  padding:clamp(72px,8vw,120px) max(6vw,34px);
  display:grid;
  grid-template-columns:120px minmax(0,1.25fr) minmax(280px,.58fr);
  gap:clamp(28px,5vw,82px);
  align-items:start;
}

.career-manifesto__index {
  display:grid;
  gap:10px;
  color:#9d7435;
}

.career-manifesto__index span {
  font-family:var(--font-display);
  font-size:64px;
  line-height:.8;
}

.career-manifesto__index small,
.career-manifesto__eyebrow,
.career-code__lead span,
.career-room__heading > span,
.career-lanes__head > span,
.career-wildcard__copy > span,
.career-wildcard__note small,
.career-journey__heading > span,
.career-intro__title > span {
  font-size:9px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.career-manifesto__eyebrow {
  margin:0 0 16px;
  color:#9d7435;
}

.career-manifesto__main h2 {
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(48px,5.6vw,86px);
  font-weight:400;
  line-height:.95;
  letter-spacing:-.055em;
}

.career-manifesto__main h2 em {
  color:#9d7435;
  font-weight:400;
}

.career-manifesto__aside {
  padding-top:34px;
  border-top:1px solid rgba(157,116,53,.28);
}

.career-manifesto__aside p {
  margin:0 0 18px;
  color:#5e5447;
  font-size:15px;
  font-weight:520;
  line-height:1.72;
}

.career-code {
  background:#11120f;
  color:#f5efe4;
  padding:38px max(6vw,34px) 46px;
  border-top:1px solid rgba(216,180,106,.2);
  border-bottom:1px solid rgba(216,180,106,.2);
}

.career-code__lead {
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:center;
  margin-bottom:28px;
}

.career-code__lead span {
  color:#d8b46a;
}

.career-code__lead p {
  margin:0;
  color:rgba(245,239,228,.58);
  font-size:13px;
}

.career-code__words {
  display:flex;
  gap:18px 28px;
  flex-wrap:wrap;
  justify-content:space-between;
}

.career-code__words span {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-display);
  font-size:clamp(28px,3.4vw,54px);
  letter-spacing:-.035em;
  line-height:1;
}

.career-code__words i {
  color:#d8b46a;
  font-size:.36em;
}

.career-room {
  background:#f7f3ea;
  color:#191814;
  padding:clamp(72px,7vw,108px) max(5vw,28px);
}

.career-room__heading {
  max-width:900px;
  margin:0 0 34px auto;
}

.career-room__heading > span,
.career-lanes__head > span,
.career-journey__heading > span {
  color:#9d7435;
}

.career-room__heading h2,
.career-lanes__head h2,
.career-wildcard__copy h2,
.career-journey__heading h2,
.career-intro__title h2 {
  margin:14px 0 0;
  font-family:var(--font-display);
  font-size:clamp(48px,5.6vw,88px);
  font-weight:400;
  line-height:.92;
  letter-spacing:-.055em;
}

.career-room__heading h2 em,
.career-lanes__head h2 em,
.career-wildcard__copy h2 em,
.career-journey__heading h2 em,
.career-intro__title h2 em {
  color:#9d7435;
  font-weight:400;
}

.career-room__wall {
  display:grid;
  grid-template-columns:1.25fr .72fr;
  grid-template-rows:370px 310px;
  gap:16px;
}

.career-room__photo {
  position:relative;
  margin:0;
  overflow:hidden;
  background:#d8cdbd;
}

.career-room__photo--hero {
  grid-row:1 / 3;
}

.career-room__photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s ease;
}

.career-room__photo:hover img { transform:scale(1.025); }

.career-room__photo::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(13,13,11,.68));
}

.career-room__photo figcaption {
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
  display:grid;
  gap:5px;
  color:white;
}

.career-room__photo figcaption span {
  color:#e3bf77;
  font-size:8px;
  font-weight:800;
  letter-spacing:.2em;
}

.career-room__photo figcaption strong {
  max-width:540px;
  font-family:var(--font-display);
  font-size:clamp(22px,2.1vw,34px);
  font-weight:400;
  line-height:1.03;
}

.career-lanes {
  background:#11120f;
  color:#f5efe4;
  padding:clamp(76px,7vw,112px) max(5vw,28px);
}

.career-lanes__head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);
  gap:40px;
  align-items:end;
  margin-bottom:42px;
}

.career-lanes__head h2 {
  grid-column:1;
  max-width:920px;
}

.career-lanes__head p {
  grid-column:2;
  grid-row:1 / 3;
  align-self:end;
  margin:0;
  color:rgba(245,239,228,.62);
  font-size:15px;
  line-height:1.7;
}

.career-lanes__list {
  border-top:1px solid rgba(216,180,106,.28);
}

.career-lane {
  min-height:108px;
  display:grid;
  grid-template-columns:80px minmax(0,1fr) minmax(230px,.42fr) 64px;
  gap:24px;
  align-items:center;
  color:#f5efe4;
  border-bottom:1px solid rgba(216,180,106,.2);
  transition:background .25s ease,color .25s ease,padding .25s ease;
}

.career-lane:hover {
  background:#d8b46a;
  color:#171611;
  padding:0 20px;
}

.career-lane__number,
.career-lane__detail {
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  opacity:.7;
}

.career-lane__title {
  font-family:var(--font-display);
  font-size:clamp(32px,4.1vw,64px);
  letter-spacing:-.045em;
}

.career-lane__icon {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  justify-self:end;
  border-radius:50%;
  border:1px solid currentColor;
}

.career-wildcard {
  position:relative;
  background:#d7b16c;
  color:#171611;
  padding:clamp(72px,7vw,108px) max(6vw,34px);
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.5fr);
  gap:clamp(44px,7vw,110px);
  align-items:end;
  overflow:hidden;
}

.career-wildcard__mark {
  position:absolute;
  right:2vw;
  top:-.19em;
  font-family:var(--font-display);
  font-size:clamp(240px,34vw,520px);
  line-height:1;
  color:rgba(255,255,255,.12);
}

.career-wildcard__copy,
.career-wildcard__note { position:relative; z-index:1; }

.career-wildcard__copy > span,
.career-wildcard__note small {
  color:#59401a;
}

.career-wildcard__copy h2 {
  font-size:clamp(64px,8.2vw,124px);
  max-width:760px;
}

.career-wildcard__copy h2 em {
  color:#fff7e8;
}

.career-wildcard__copy p {
  max-width:690px;
  margin:22px 0 28px;
  font-size:17px;
  font-weight:550;
  line-height:1.68;
}

.career-wildcard .button--gold-solid {
  background:#171611;
  color:#fff7e8;
  border-color:#171611;
}

.career-wildcard__note {
  padding:24px 0 0;
  border-top:1px solid rgba(23,22,17,.28);
}

.career-wildcard__note p {
  margin:10px 0 0;
  font-family:var(--font-display);
  font-size:clamp(25px,2.5vw,38px);
  line-height:1.04;
  letter-spacing:-.03em;
}

.career-journey {
  background:#f3eee4;
  color:#171611;
  padding:clamp(74px,7vw,108px) max(5vw,28px);
}

.career-journey__heading {
  max-width:860px;
  margin-bottom:38px;
}

.career-journey__steps {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid rgba(157,116,53,.32);
  border-bottom:1px solid rgba(157,116,53,.32);
}

.career-journey__steps article {
  min-height:260px;
  padding:24px 22px;
  position:relative;
  border-right:1px solid rgba(157,116,53,.22);
}

.career-journey__steps article:last-child { border-right:0; }

.career-journey__steps article > span {
  color:#9d7435;
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
}

.career-journey__steps i {
  position:absolute;
  top:22px;
  right:22px;
  color:#9d7435;
  font-size:20px;
}

.career-journey__steps h3 {
  margin:82px 0 10px;
  font-family:var(--font-display);
  font-size:clamp(25px,2.1vw,33px);
  font-weight:400;
  line-height:1.02;
}

.career-journey__steps p {
  margin:0;
  color:#655b4e;
  font-size:14px;
  line-height:1.65;
}

.career-intro {
  background:#11120f;
  color:#f5efe4;
  padding:clamp(78px,8vw,120px) max(5vw,28px);
  display:grid;
  grid-template-columns:minmax(330px,.68fr) minmax(520px,1fr);
  gap:clamp(44px,7vw,100px);
  align-items:start;
}

.career-intro__title > span { color:#d8b46a; }
.career-intro__title h2 { font-size:clamp(56px,6.6vw,98px); }

.career-intro__form {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px 18px;
}

.career-intro__form label {
  display:grid;
  gap:8px;
}

.career-intro__form label > span {
  color:#d8b46a;
  font-size:8px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.career-intro__form input,
.career-intro__form textarea {
  width:100%;
  border:0;
  border-bottom:1px solid rgba(245,239,228,.22);
  border-radius:0;
  background:transparent;
  color:#fff9ef;
  padding:12px 0;
  font:inherit;
  font-size:15px;
  outline:0;
}

.career-intro__form input:focus,
.career-intro__form textarea:focus {
  border-bottom-color:#d8b46a;
}

.career-intro__form input::placeholder,
.career-intro__form textarea::placeholder { color:rgba(245,239,228,.35); }

.career-intro__message,
.career-intro__submit,
.career-intro__form .contact-form__status {
  grid-column:1 / -1;
}

.career-intro__submit {
  margin-top:6px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
}

.career-intro__submit p {
  max-width:400px;
  margin:0;
  color:rgba(245,239,228,.56);
  font-size:11px;
  line-height:1.6;
}

.career-intro__submit p a { color:#d8b46a; }

@media (max-width:1050px) {
  .career-manifesto { grid-template-columns:80px 1fr; }
  .career-manifesto__aside { grid-column:2; }
  .career-lanes__head { grid-template-columns:1fr; }
  .career-lanes__head p { grid-column:1; grid-row:auto; max-width:650px; }
  .career-wildcard { grid-template-columns:1fr; }
  .career-intro { grid-template-columns:1fr; }
  .career-journey__steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .career-journey__steps article:nth-child(2) { border-right:0; }
  .career-journey__steps article:nth-child(-n+2) { border-bottom:1px solid rgba(157,116,53,.22); }
}

@media (max-width:820px) {
  .career-poster { min-height:88svh; padding-bottom:90px; }
  .career-poster__topline { top:104px; }
  .career-poster h1 { font-size:clamp(60px,15vw,100px); }
  .career-poster__scroll { left:max(5vw,28px); right:auto; bottom:36px; }
  .career-manifesto { grid-template-columns:1fr; }
  .career-manifesto__aside { grid-column:1; }
  .career-code__lead { flex-direction:column; align-items:flex-start; }
  .career-room__wall { grid-template-columns:1fr; grid-template-rows:auto; }
  .career-room__photo--hero { grid-row:auto; }
  .career-room__photo { min-height:360px; }
  .career-lane { grid-template-columns:54px 1fr 50px; min-height:96px; }
  .career-lane__detail { grid-column:2; margin-top:-24px; }
  .career-lane__icon { grid-column:3; grid-row:1 / 3; }
  .career-intro__form { grid-template-columns:1fr; }
  .career-intro__form > * { grid-column:1 / -1; }
  .career-intro__submit { align-items:flex-start; flex-direction:column; }
}

@media (max-width:560px) {
  .career-poster::after { inset:8px; }
  .career-poster__topline span:last-child { display:none; }
  .career-code__words { display:grid; gap:14px; }
  .career-code__words span { font-size:38px; }
  .career-journey__steps { grid-template-columns:1fr; }
  .career-journey__steps article { border-right:0; border-bottom:1px solid rgba(157,116,53,.22); }
  .career-journey__steps article:last-child { border-bottom:0; }
  .career-lane__title { font-size:34px; }
}

/* =========================================================
   CAREERS — IMAGE MATCH EDITION
   Follows the approved careers mockup: compact, premium, direct.
   ========================================================= */

.site-nav--career-image .nav-shell {
  background: rgba(14, 14, 12, 0.9);
  backdrop-filter: blur(14px) saturate(110%);
}

.careers-image-page {
  overflow: hidden;
  background: #11120f;
}

.career-image-kicker {
  margin: 0 0 20px;
  color: #cda657;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.career-image-hero {
  min-height: 620px;
  padding-top: 104px;
  display: grid;
  grid-template-columns: minmax(390px, .82fr) minmax(540px, 1.52fr);
  color: #f8f2e7;
  background: #11120f;
}

.career-image-hero__copy {
  min-height: 516px;
  padding: clamp(70px, 7vw, 105px) clamp(36px, 5vw, 72px) 54px max(4.5vw, 52px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid rgba(210,170,88,.18);
}

.career-image-hero h1 {
  margin: 0;
  max-width: 610px;
  font-family: var(--font-display);
  font-size: clamp(48px, 4.45vw, 76px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.045em;
}

.career-image-hero h1 em {
  display: block;
  margin-top: 8px;
  color: #d3a750;
  font-weight: 400;
}

.career-image-rule {
  width: 90px;
  height: 1px;
  margin: 26px 0 24px;
  background: #b98e40;
}

.career-image-hero__lead {
  max-width: 440px;
  margin: 0;
  color: rgba(248,242,231,.88);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.65;
}

.career-image-textlink {
  width: max-content;
  margin-top: 26px;
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: #d8b66a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.career-image-textlink i {
  transition: transform .25s ease;
}

.career-image-textlink:hover i {
  transform: translateX(5px);
}

.career-image-hero__media {
  position: relative;
  min-height: 516px;
  margin: 0;
  overflow: hidden;
  background: #181813;
}

.career-image-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(17,18,15,.18), rgba(17,18,15,.02) 32%, rgba(17,18,15,.03));
  pointer-events: none;
}

.career-image-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.career-image-values {
  padding: 34px max(5.5vw, 44px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  background: #f4efe7;
  color: #1e1b16;
}

.career-image-values article {
  min-height: 92px;
  padding: 6px 30px;
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 14px;
  align-content: center;
  border-right: 1px solid rgba(111,91,57,.2);
}

.career-image-values article:first-child { padding-left: 0; }
.career-image-values article:last-child { border-right: 0; padding-right: 0; }

.career-image-value__icon {
  padding-top: 2px;
  color: #a97b2f;
  font-size: 22px;
}

.career-image-values h2 {
  margin: 0 0 10px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 820;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.career-image-values p {
  margin: 0;
  max-width: 210px;
  color: #494239;
  font-size: 13px;
  font-weight: 540;
  line-height: 1.55;
}

.career-image-roles {
  padding: 46px max(6.6vw, 54px) 48px;
  display: grid;
  grid-template-columns: minmax(280px,.7fr) minmax(600px,1.7fr);
  gap: clamp(48px,6vw,100px);
  background: #11120f;
  color: #f7f0e5;
}

.career-image-roles__intro {
  align-self: center;
}

.career-image-roles__intro h2 {
  margin: 0 0 18px;
  max-width: 360px;
  font-family: var(--font-display);
  font-size: clamp(42px,4vw,64px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.04em;
}

.career-image-roles__intro > p:not(.career-image-kicker) {
  max-width: 400px;
  margin: 0;
  color: rgba(247,240,229,.62);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.64;
}

.career-image-outline {
  width: max-content;
  min-height: 48px;
  margin-top: 24px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  gap: 26px;
  border: 1px solid rgba(208,166,82,.68);
  color: #f6efe4;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
  transition: background .25s ease,color .25s ease;
}

.career-image-outline:hover {
  color: #161510;
  background: #d3a750;
}

.career-image-roles__list {
  align-self: center;
  border-top: 1px solid rgba(211,167,80,.35);
}

.career-image-roles__list a {
  min-height: 61px;
  display: grid;
  grid-template-columns: minmax(250px,1.35fr) minmax(90px,.45fr) minmax(140px,.72fr) 30px;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid rgba(211,167,80,.35);
  color: rgba(248,242,231,.82);
  transition: color .25s ease, padding-left .25s ease, background .25s ease;
}

.career-image-roles__list a:hover {
  padding-left: 10px;
  color: #fff;
  background: rgba(255,255,255,.025);
}

.career-image-role__title {
  color: #f8f2e7;
  font-size: 14px;
  font-weight: 720;
}

.career-image-roles__list a > span:not(.career-image-role__title) {
  font-size: 12px;
}

.career-image-roles__list i {
  justify-self: end;
  color: #d5aa55;
  font-size: 14px;
  transition: transform .25s ease;
}

.career-image-roles__list a:hover i {
  transform: rotate(90deg);
}

.career-image-open {
  min-height: 300px;
  display: grid;
  grid-template-columns: minmax(330px,.9fr) minmax(420px,1fr) minmax(300px,.72fr);
  background: #f4efe7;
  color: #201d18;
}

.career-image-open__media {
  position: relative;
  min-height: 300px;
  margin: 0;
  overflow: hidden;
}

.career-image-open__media::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset -1px 0 rgba(113,90,54,.18);
}

.career-image-open__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.career-image-open__copy {
  padding: 52px clamp(34px,4vw,66px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid rgba(113,90,54,.16);
}

.career-image-open__copy h2 {
  margin: 0 0 16px;
  font-family: var(--font-display);
  font-size: clamp(34px,3.35vw,52px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.04em;
}

.career-image-open__copy h2 em {
  color: #a9772f;
  font-weight: 400;
}

.career-image-open__copy > p:not(.career-image-kicker) {
  max-width: 540px;
  margin: 0;
  color: #51483d;
  font-size: 14px;
  font-weight: 530;
  line-height: 1.63;
}

.career-image-open__action {
  padding: 50px clamp(32px,4vw,58px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.career-image-cv {
  width: min(100%, 270px);
  min-height: 58px;
  padding: 0 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff8ef;
  background: #1a1a16;
  font-size: 10px;
  font-weight: 820;
  letter-spacing: .17em;
  text-transform: uppercase;
  transition: background .25s ease,color .25s ease;
}

.career-image-cv:hover {
  color: #171713;
  background: #d3a750;
}

.career-image-email {
  margin-top: 20px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #352f26;
  font-size: 13px;
}

.career-image-email i { color: #a9782e; }

.career-image-open__action small {
  margin-top: 10px;
  color: #9b8667;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

@media (max-width: 1100px) {
  .career-image-hero { grid-template-columns: 1fr 1.25fr; }
  .career-image-values { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; }
  .career-image-values article:nth-child(2) { border-right: 0; }
  .career-image-values article:nth-child(-n+2) { border-bottom: 1px solid rgba(111,91,57,.18); }
  .career-image-roles { grid-template-columns: 1fr; gap: 28px; }
  .career-image-open { grid-template-columns: 1fr 1fr; }
  .career-image-open__media { grid-row: 1 / span 2; }
  .career-image-open__copy { border-right: 0; border-bottom: 1px solid rgba(113,90,54,.16); }
  .career-image-open__action { padding-top: 34px; padding-bottom: 40px; }
}

@media (max-width: 820px) {
  .career-image-hero { padding-top: 104px; grid-template-columns: 1fr; }
  .career-image-hero__copy { min-height: auto; padding: 62px 28px 46px; border-right: 0; }
  .career-image-hero__media { min-height: 420px; }
  .career-image-values { padding: 28px; grid-template-columns: 1fr; }
  .career-image-values article,
  .career-image-values article:first-child,
  .career-image-values article:last-child { padding: 20px 0; border-right: 0; border-bottom: 1px solid rgba(111,91,57,.16); }
  .career-image-values article:last-child { border-bottom: 0; }
  .career-image-roles { padding: 48px 28px; }
  .career-image-roles__list a { grid-template-columns: 1fr auto; gap: 8px 16px; padding: 14px 0; }
  .career-image-roles__list a > span:not(.career-image-role__title) { grid-column: 1; }
  .career-image-roles__list i { grid-column: 2; grid-row: 1 / span 2; }
  .career-image-open { grid-template-columns: 1fr; }
  .career-image-open__media { grid-row: auto; min-height: 340px; }
  .career-image-open__copy { padding: 42px 28px; }
  .career-image-open__action { padding: 34px 28px 44px; }
}

@media (max-width: 520px) {
  .career-image-hero h1 { font-size: 50px; }
  .career-image-hero__media { min-height: 330px; }
  .career-image-roles__intro h2 { font-size: 46px; }
}


/* =========================================================
   CAREERS — AGENT SUPPORT
   ========================================================= */
.career-agent-support {
  padding: clamp(56px, 6vw, 88px) max(6vw, 72px);
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(520px, 1.22fr);
  gap: clamp(42px, 6vw, 94px);
  align-items: start;
  color: #1d1a15;
  background: #f3ede3;
  border-top: 1px solid rgba(153, 116, 53, .17);
  border-bottom: 1px solid rgba(153, 116, 53, .17);
}

.career-agent-support__intro {
  position: sticky;
  top: 122px;
}

.career-agent-support__intro h2 {
  max-width: 540px;
  margin: 18px 0 18px;
  font-family: var(--font-display);
  font-size: clamp(48px, 5vw, 76px);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -.05em;
  white-space: pre-line;
}

.career-agent-support__intro h2 em {
  color: #a17a3c;
  font-weight: 400;
}

.career-agent-support__intro > p:not(.career-image-kicker) {
  max-width: 520px;
  margin: 0;
  color: #5e5447;
  font-size: 16px;
  font-weight: 520;
  line-height: 1.7;
}

.career-agent-support__audience {
  margin-top: 26px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.career-agent-support__audience span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 13px;
  border: 1px solid rgba(153,116,53,.2);
  color: #7d602f;
  background: rgba(255,255,255,.46);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.career-agent-support__list {
  border-top: 1px solid rgba(112,88,51,.18);
}

.career-agent-support__list article {
  min-height: 150px;
  padding: 24px 0;
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 22px;
  align-items: start;
  border-bottom: 1px solid rgba(112,88,51,.18);
}

.career-agent-support__icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(153,116,53,.3);
  color: #a17a3c;
  background: rgba(255,255,255,.48);
  font-size: 18px;
}

.career-agent-support__list article span {
  display: block;
  margin-bottom: 7px;
  color: #a17a3c;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.career-agent-support__list h3 {
  margin: 0 0 8px;
  font-family: var(--font-display);
  font-size: clamp(27px, 2.3vw, 36px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.035em;
}

.career-agent-support__list p {
  max-width: 700px;
  margin: 0;
  color: #605649;
  font-size: 14px;
  font-weight: 520;
  line-height: 1.68;
}

@media (max-width: 980px) {
  .career-agent-support {
    grid-template-columns: 1fr;
    gap: 34px;
    padding-inline: 40px;
  }
  .career-agent-support__intro {
    position: static;
  }
}

@media (max-width: 560px) {
  .career-agent-support {
    padding: 48px 24px;
  }
  .career-agent-support__list article {
    grid-template-columns: 46px 1fr;
    gap: 16px;
  }
  .career-agent-support__icon {
    width: 44px;
    height: 44px;
    font-size: 16px;
  }
}

/* =========================================================
   HOMEPAGE — HOW WE CAN HELP
   ========================================================= */
.help-paths {
  padding: clamp(68px, 7vw, 104px) max(6.5vw, 28px);
  color: #211d18;
  background: #f6f1e9;
  border-top: 1px solid rgba(181, 142, 75, 0.18);
  border-bottom: 1px solid rgba(181, 142, 75, 0.18);
}

.help-paths__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
  gap: clamp(32px, 6vw, 90px);
  align-items: end;
  margin-bottom: 34px;
}

.help-paths__header h2 {
  margin: 20px 0 0;
  font-family: var(--font-display);
  font-size: clamp(48px, 5.2vw, 78px);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -.055em;
}

.help-paths__header h2 em {
  color: #9a7137;
  font-weight: 400;
}

.help-paths__intro p {
  max-width: 570px;
  margin: 0 0 18px;
  color: #5d5347;
  font-size: 16px;
  font-weight: 520;
  line-height: 1.68;
}

.help-paths__intro a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #1f1b16;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.help-paths__intro a i { color: #9a7137; }

.help-paths__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(125, 94, 51, 0.22);
  border-left: 1px solid rgba(125, 94, 51, 0.16);
}

.help-path {
  position: relative;
  min-height: 270px;
  padding: 28px 24px 24px;
  color: #211d18;
  background: rgba(255,255,255,.36);
  border-right: 1px solid rgba(125, 94, 51, 0.16);
  border-bottom: 1px solid rgba(125, 94, 51, 0.16);
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.help-path:hover {
  z-index: 2;
  transform: translateY(-4px);
  background: #fffaf3;
  box-shadow: 0 22px 46px rgba(48, 34, 15, .08);
}

.help-path__icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #9b7439;
  border: 1px solid rgba(172, 128, 63, .26);
  background: rgba(255,255,255,.7);
  font-size: 17px;
}

.help-path__number {
  position: absolute;
  top: 29px;
  right: 24px;
  color: #a68b68;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .2em;
}

.help-path h3 {
  margin: 28px 0 10px;
  font-family: var(--font-display);
  font-size: clamp(27px, 2.2vw, 34px);
  font-weight: 400;
  letter-spacing: -.035em;
}

.help-path p {
  max-width: 360px;
  margin: 0;
  color: #5e5448;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.64;
}

.help-path small {
  position: absolute;
  left: 24px;
  bottom: 22px;
  color: #9a7137;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.projects-intro__all {
  margin-top: 18px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #d4ae6a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

/* =========================================================
   PROJECTS HUB — selected, not stacked
   ========================================================= */
.projects-page {
  color: #211d18;
  background: #f5efe6;
}

.projects-hub-hero {
  position: relative;
  min-height: 720px;
  padding: 146px max(5vw, 30px) 64px;
  display: grid;
  grid-template-columns: minmax(440px, 1.05fr) minmax(430px, .95fr);
  gap: clamp(42px, 6vw, 92px);
  align-items: center;
  color: #211d18;
  background:
    radial-gradient(circle at 18% 14%, rgba(199,156,82,.11), transparent 24%),
    linear-gradient(115deg, #f7f1e8 0%, #efe5d8 68%, #e7dbcd 100%);
  border-bottom: 1px solid rgba(168,128,65,.22);
  overflow: hidden;
}

.projects-hub-hero::before {
  content: "";
  position: absolute;
  top: 118px;
  bottom: 54px;
  left: 50%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(161,120,55,.22) 18%, rgba(161,120,55,.22) 82%, transparent);
  pointer-events: none;
}

.projects-hub-hero::after {
  content: "PROJECTS / VANTAGE POINT";
  position: absolute;
  right: max(1.7vw, 14px);
  top: 50%;
  color: rgba(105,84,55,.45);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .25em;
  transform: rotate(90deg) translateX(50%);
  transform-origin: right top;
  text-transform: uppercase;
}

.projects-hub-hero__copy {
  position: relative;
  z-index: 2;
  min-height: 520px;
  padding: 20px 0 14px max(1.2vw, 0px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.projects-hub-hero__copy .section-kicker {
  color: #725a37;
}

.projects-hub-hero__copy h1 {
  max-width: 760px;
  margin: 28px 0 34px;
  color: #1b1915;
  font-family: var(--font-display);
  font-size: clamp(70px, 7.6vw, 118px);
  font-weight: 400;
  line-height: .86;
  letter-spacing: -.075em;
}

.projects-hub-hero__copy h1 em {
  color: #a97b34;
  font-weight: 400;
}

.projects-hub-hero__bottom {
  max-width: 610px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 26px;
  align-items: end;
  padding-top: 24px;
  border-top: 1px solid rgba(126,92,42,.22);
}

.projects-hub-hero__bottom p {
  margin: 0;
  color: #5f5548;
  font-size: 16px;
  font-weight: 520;
  line-height: 1.72;
}

.projects-hub-hero__bottom span {
  align-self: start;
  color: #9a7134;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
  white-space: nowrap;
}

.projects-hub-hero__issue {
  position: absolute;
  left: 0;
  bottom: -16px;
  display: grid;
  grid-template-columns: auto auto auto;
  gap: 14px;
  align-items: center;
  color: #806d52;
  font-size: 8px;
  font-weight: 780;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.projects-hub-hero__issue strong {
  color: #a27432;
  font-weight: 800;
}

.projects-hub-hero__issue span::after,
.projects-hub-hero__issue strong::after {
  content: "";
  display: inline-block;
  width: 26px;
  height: 1px;
  margin-left: 14px;
  vertical-align: middle;
  background: rgba(158,119,57,.34);
}

.projects-hub-hero__media {
  position: relative;
  min-height: 560px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(153,111,48,.24);
  border-radius: 2px;
  background: #d9cabb;
  box-shadow: 22px 28px 0 rgba(170,132,76,.08), 0 34px 80px rgba(70,48,23,.14);
}

.projects-hub-hero__media::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 14px;
  border: 1px solid rgba(255,250,241,.36);
  pointer-events: none;
}

.projects-hub-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,15,12,.01) 40%, rgba(17,15,12,.62) 100%);
}

.projects-hub-hero__media > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.015);
}

.projects-hub-hero__frame {
  position: absolute;
  z-index: 3;
  top: 28px;
  right: 28px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #fff9ef;
  border: 1px solid rgba(255,249,239,.55);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
}

.projects-hub-hero__media figcaption {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 26px;
  z-index: 3;
  display: grid;
  gap: 5px;
  color: #fff8ed;
}

.projects-hub-hero__media figcaption span,
.projects-hub-hero__media figcaption small {
  color: #e0bd7b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.projects-hub-hero__media figcaption strong {
  font-family: var(--font-display);
  font-size: clamp(36px, 3.5vw, 56px);
  font-weight: 400;
  letter-spacing: -.045em;
}

/* Light editorial navigation over the Projects hero; returns to dark glass on scroll. */
.projects-page .site-nav[data-scrolled="false"] .nav-shell {
  color: #211d18;
  background: rgba(247,241,232,.68);
  border-color: rgba(166,125,62,.30);
  box-shadow: 0 12px 36px rgba(82,56,25,.07);
  backdrop-filter: blur(12px) saturate(110%);
}

.projects-page .site-nav[data-scrolled="false"] .brand__name,
.projects-page .site-nav[data-scrolled="false"] .nav-links a,
.projects-page .site-nav[data-scrolled="false"] .nav-cta {
  color: #211d18;
}

.projects-page .site-nav[data-scrolled="false"] .brand__descriptor {
  color: rgba(50,43,34,.64);
}

.projects-page .site-nav[data-scrolled="false"] .brand__monogram {
  color: #9d7435;
  border-color: rgba(166,125,62,.48);
}

.projects-page .site-nav[data-scrolled="false"] .nav-cta {
  border-color: rgba(166,125,62,.55);
}

.projects-page .site-nav[data-scrolled="false"] .nav-cta:hover {
  color: #17150f;
  background: #d5ad67;
}

.project-lens {
  padding: clamp(68px, 7vw, 100px) max(6.5vw, 28px);
  display: grid;
  grid-template-columns: minmax(300px, .7fr) minmax(560px, 1.3fr);
  gap: clamp(40px, 6vw, 90px);
  align-items: start;
  background: #f4eee5;
}

.project-lens__intro h2,
.project-edit__header h2,
.project-conversation__copy h2,
.project-feature__copy h2 {
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: -.05em;
}

.project-lens__intro h2 {
  margin: 22px 0 18px;
  font-size: clamp(46px, 4.8vw, 72px);
  line-height: .96;
}

.project-lens__intro h2 em,
.project-edit__header h2 em,
.project-conversation__copy h2 em {
  color: #9a7137;
  font-weight: 400;
}

.project-lens__intro > p:last-child {
  max-width: 540px;
  color: #5d5347;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
}

.project-lens__criteria {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  border-top: 1px solid rgba(130,95,49,.22);
  border-left: 1px solid rgba(130,95,49,.18);
}

.project-lens__criteria article {
  min-height: 230px;
  padding: 24px 22px;
  position: relative;
  border-right: 1px solid rgba(130,95,49,.18);
  border-bottom: 1px solid rgba(130,95,49,.18);
}

.project-lens__criteria i {
  color: #a1783c;
  font-size: 20px;
}

.project-lens__criteria article > span {
  position: absolute;
  top: 24px;
  right: 22px;
  color: #aa9373;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
}

.project-lens__criteria h3 {
  margin: 36px 0 10px;
  font-family: var(--font-display);
  font-size: 30px;
  font-weight: 400;
  letter-spacing: -.03em;
}

.project-lens__criteria p {
  margin: 0;
  color: #62584c;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.62;
}

.project-feature {
  min-height: 670px;
  padding: clamp(56px, 6vw, 86px) max(5vw, 28px);
  display: grid;
  grid-template-columns: minmax(460px, 1.15fr) minmax(360px, .85fr);
  gap: clamp(32px, 5vw, 74px);
  align-items: center;
}

.project-feature--light { background: #fffaf3; color: #1f1b16; }
.project-feature--dark { background: #151612; color: #f8f2e8; }
.project-feature--reverse .project-feature__media { order: 2; }
.project-feature--reverse .project-feature__copy { order: 1; }

.project-feature__media {
  position: relative;
  min-height: 530px;
  margin: 0;
  overflow: hidden;
  border-radius: 26px;
  background: #d8d0c5;
}

.project-feature__media > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.project-feature:hover .project-feature__media > img { transform: scale(1.018); }

.project-feature__badge {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 1;
  min-width: 120px;
  height: 54px;
  padding: 10px 16px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: rgba(255,250,243,.9);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.55);
}

.project-feature__badge--dark { background: rgba(22,22,18,.72); }
.project-feature__badge img { max-width: 96px; max-height: 32px; }

.project-feature__index {
  margin: 0 0 22px;
  color: #a1783c;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.project-feature__copy h2 {
  margin: 0 0 14px;
  font-size: clamp(54px, 5.4vw, 84px);
  line-height: .92;
}

.project-feature__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #967344;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.project-feature--dark .project-feature__meta { color: #d1ab68; }
.project-feature__meta i { width: 28px; height: 1px; background: currentColor; }

.project-feature__lead {
  max-width: 590px;
  margin: 24px 0 26px;
  color: #5c5247;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.72;
}

.project-feature--dark .project-feature__lead { color: rgba(248,242,232,.73); }

.project-feature__note {
  max-width: 590px;
  padding: 18px 0;
  border-top: 1px solid rgba(137,103,52,.22);
  border-bottom: 1px solid rgba(137,103,52,.22);
}

.project-feature__note span {
  color: #9a7137;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.project-feature__note p {
  margin: 7px 0 0;
  color: inherit;
  opacity: .75;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.62;
}

.project-feature__actions {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
}

.project-feature__actions .text-button { color: #2a241d; }
.project-feature--dark .project-feature__actions .text-button { color: #f5eee3; }

.project-edit {
  padding: clamp(70px, 7vw, 105px) max(6.5vw, 28px);
  color: #211d18;
  background: #eee4d7;
}

.project-edit__header {
  margin-bottom: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .62fr);
  gap: 34px;
  align-items: end;
}

.project-edit__header h2 {
  margin: 20px 0 0;
  font-size: clamp(50px, 5vw, 76px);
  line-height: .95;
}

.project-edit__header > p {
  max-width: 520px;
  margin: 0;
  color: #655b4f;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.66;
}

.project-edit__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.project-edit-card {
  display: grid;
  grid-template-columns: minmax(220px, .82fr) minmax(220px, 1fr);
  min-height: 300px;
  background: #fffaf3;
  border: 1px solid rgba(140,103,52,.16);
}

.project-edit-card__media {
  position: relative;
  min-height: 300px;
  overflow: hidden;
}

.project-edit-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.58) 100%);
}

.project-edit-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.project-edit-card:hover .project-edit-card__media img { transform: scale(1.025); }

.project-edit-card__media span {
  position: absolute;
  left: 16px;
  bottom: 15px;
  z-index: 1;
  color: #fff7eb;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.project-edit-card__body {
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.project-edit-card__body > span {
  color: #9a7137;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
}

.project-edit-card h3 {
  margin: 18px 0 8px;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.6vw, 42px);
  font-weight: 400;
  letter-spacing: -.04em;
  line-height: .98;
}

.project-edit-card p {
  margin: 0 0 20px;
  color: #665b4d;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.55;
}

.project-edit-card__body a {
  width: fit-content;
  margin-top: auto;
  color: #9a7137;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.project-conversation {
  padding: clamp(74px, 8vw, 116px) max(6.5vw, 28px);
  display: grid;
  grid-template-columns: minmax(420px, 1fr) minmax(280px, .55fr);
  gap: clamp(50px, 8vw, 120px);
  align-items: center;
  color: #f8f2e8;
  background: #11120f;
  border-top: 1px solid rgba(214,175,102,.16);
}

.project-conversation__copy h2 {
  margin: 24px 0 22px;
  max-width: 900px;
  font-size: clamp(54px, 5.9vw, 90px);
  line-height: .92;
}

.project-conversation__copy > p:not(.section-kicker) {
  max-width: 650px;
  margin: 0;
  color: rgba(248,242,232,.72);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.72;
}

.project-conversation__actions {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.project-conversation__mark {
  min-height: 280px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-left: 1px solid rgba(214,175,102,.18);
}

.project-conversation__mark span {
  font-family: var(--font-display);
  font-size: clamp(104px, 10vw, 170px);
  line-height: .72;
  color: rgba(198,154,78,.18);
}

.project-conversation__mark small {
  margin-top: 32px;
  color: #c69a4e;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

@media (max-width: 1080px) {
  .help-paths__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .help-paths__header,
  .project-lens,
  .project-edit__header,
  .project-conversation { grid-template-columns: 1fr; }
  .projects-hub-hero,
  .project-feature { grid-template-columns: 1fr; }
  .projects-hub-hero__media { min-height: 520px; }
  .project-feature--reverse .project-feature__media,
  .project-feature--reverse .project-feature__copy { order: initial; }
  .project-conversation__mark {
    min-height: 150px;
    border-left: 0;
    border-top: 1px solid rgba(214,175,102,.18);
  }
}

@media (max-width: 760px) {
  .help-paths__grid,
  .project-lens__criteria,
  .project-edit__grid { grid-template-columns: 1fr; }
  .help-paths__header { grid-template-columns: 1fr; }
  .projects-hub-hero { min-height: auto; padding-top: 120px; }
  .projects-hub-hero__copy h1 { font-size: clamp(58px, 16vw, 82px); }
  .projects-hub-hero__media { min-height: 430px; }
  .project-feature__media { min-height: 400px; }
  .project-edit-card { grid-template-columns: 1fr; }
  .project-edit-card__media { min-height: 280px; }
}

@media (max-width: 560px) {
  .help-paths { padding-left: 18px; padding-right: 18px; }
  .help-path { min-height: 250px; }
  .projects-hub-hero,
  .project-lens,
  .project-feature,
  .project-edit,
  .project-conversation { padding-left: 18px; padding-right: 18px; }
  .projects-hub-hero__media,
  .project-feature__media { border-radius: 20px; }
  .project-feature__actions,
  .project-conversation__actions { flex-direction: column; align-items: stretch; }
  .project-feature__actions .button,
  .project-conversation__actions .button { width: 100%; }
}


@media (max-width: 1100px) {
  .projects-hub-hero {
    grid-template-columns: 1fr;
    gap: 34px;
    padding-top: 132px;
  }
  .projects-hub-hero::before,
  .projects-hub-hero::after { display: none; }
  .projects-hub-hero__copy {
    min-height: auto;
    padding-bottom: 16px;
  }
  .projects-hub-hero__issue {
    position: static;
    margin-top: 22px;
  }
  .projects-hub-hero__media {
    min-height: 500px;
    box-shadow: 12px 16px 0 rgba(170,132,76,.08), 0 28px 60px rgba(70,48,23,.12);
  }
}

@media (max-width: 620px) {
  .projects-hub-hero {
    padding: 118px 18px 42px;
  }
  .projects-hub-hero__copy h1 {
    margin-top: 22px;
    font-size: clamp(58px, 17vw, 84px);
  }
  .projects-hub-hero__bottom {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .projects-hub-hero__issue {
    grid-template-columns: 1fr;
    gap: 7px;
  }
  .projects-hub-hero__issue span::after,
  .projects-hub-hero__issue strong::after { display: none; }
  .projects-hub-hero__media {
    min-height: 410px;
  }
}

/* =========================================================
   PROJECTS — COOL ARCHITECTURAL PALETTE
   Concrete / sage / steel / ink. Brass is accent only.
   ========================================================= */
.projects-page {
  color: #182025;
  background: #e7ebe8;
}

.projects-hub-hero {
  color: #182025;
  background:
    radial-gradient(circle at 78% 18%, rgba(100,124,132,.16), transparent 27%),
    radial-gradient(circle at 13% 84%, rgba(112,127,111,.10), transparent 32%),
    linear-gradient(118deg, #e8ece9 0%, #dfe5e3 57%, #cfd8d9 100%);
  border-bottom-color: rgba(66,88,96,.22);
}

.projects-hub-hero::before {
  background: linear-gradient(180deg, transparent, rgba(68,91,98,.20) 18%, rgba(68,91,98,.20) 82%, transparent);
}

.projects-hub-hero::after {
  color: rgba(53,73,80,.42);
}

.projects-hub-hero__copy .section-kicker {
  color: #8a6a39;
}

.projects-hub-hero__copy h1 {
  color: #141b1f;
}

.projects-hub-hero__copy h1 em {
  color: #4c6570;
}

.projects-hub-hero__bottom {
  border-top-color: rgba(55,79,87,.24);
}

.projects-hub-hero__bottom p {
  color: #455258;
}

.projects-hub-hero__bottom span {
  color: #557079;
}

.projects-hub-hero__issue {
  color: #64757b;
}

.projects-hub-hero__issue strong {
  color: #87683a;
}

.projects-hub-hero__issue span::after,
.projects-hub-hero__issue strong::after {
  background: rgba(65,88,96,.34);
}

.projects-hub-hero__media {
  border-color: rgba(65,88,96,.34);
  background: #83969d;
  box-shadow: 22px 28px 0 rgba(77,96,101,.10), 0 34px 80px rgba(33,49,56,.19);
}

.projects-hub-hero__media::before {
  border-color: rgba(231,240,241,.50);
}

.projects-hub-hero__media::after {
  background:
    linear-gradient(180deg, rgba(31,55,64,.13) 0%, rgba(24,40,47,.05) 38%, rgba(16,27,32,.66) 100%);
}

.projects-hub-hero__media > img {
  filter: saturate(.82) contrast(1.03) brightness(.98);
}

.projects-hub-hero__media figcaption span,
.projects-hub-hero__media figcaption small {
  color: #d6b36c;
}

/* Projects nav: cool frosted glass rather than cream. */
.projects-page .site-nav[data-scrolled="false"] .nav-shell {
  color: #182025;
  background: rgba(235,240,238,.78);
  border-color: rgba(69,91,99,.30);
  box-shadow: 0 12px 36px rgba(29,45,52,.10);
  backdrop-filter: blur(14px) saturate(105%);
}

.projects-page .site-nav[data-scrolled="false"] .brand__name,
.projects-page .site-nav[data-scrolled="false"] .nav-links a,
.projects-page .site-nav[data-scrolled="false"] .nav-cta {
  color: #182025;
}

.projects-page .site-nav[data-scrolled="false"] .brand__descriptor {
  color: rgba(40,57,63,.62);
}

.projects-page .site-nav[data-scrolled="false"] .brand__monogram {
  color: #836638;
  border-color: rgba(83,104,111,.42);
}

.projects-page .site-nav[data-scrolled="false"] .nav-cta {
  border-color: rgba(71,94,102,.52);
}

.projects-page .site-nav[data-scrolled="false"] .nav-cta:hover {
  color: #f3f6f4;
  background: #344b54;
}

/* The selection logic now reads like an architecture publication. */
.project-lens {
  background: #e4e9e5;
}

.project-lens__intro h2 em,
.project-edit__header h2 em {
  color: #506b73;
}

.project-lens__intro > p:last-child,
.project-edit__header > p {
  color: #4d5a5f;
}

.project-lens__criteria {
  border-top-color: rgba(66,90,98,.24);
  border-left-color: rgba(66,90,98,.20);
}

.project-lens__criteria article {
  border-right-color: rgba(66,90,98,.20);
  border-bottom-color: rgba(66,90,98,.20);
  background: rgba(244,247,245,.34);
}

.project-lens__criteria i {
  color: #526e77;
}

.project-lens__criteria article > span {
  color: #7d8b8f;
}

.project-lens__criteria p {
  color: #526065;
}

.project-feature--light {
  background: #f1f4f2;
  color: #182025;
}

.project-feature--dark {
  background: #172126;
  color: #f3f4ef;
}

.project-feature__media {
  background: #aab6b7;
}

.project-feature--light .project-feature__meta,
.project-feature--light .project-feature__lead,
.project-feature--light .project-feature__note p {
  color: #4b5a60;
}

.project-feature--light .project-feature__note,
.project-feature--light .project-feature__meta i {
  border-color: rgba(68,91,98,.22);
}

.project-edit {
  background: #dde4e1;
}

.project-edit-card {
  border-color: rgba(65,88,96,.18);
  background: rgba(244,247,245,.62);
}

.project-edit-card__body > span,
.project-edit-card__body a {
  color: #55717a;
}

.project-edit-card p {
  color: #536167;
}

.project-conversation {
  background: #25343a;
}

.project-conversation__copy h2 em {
  color: #b7c9c6;
}

.project-conversation__mark {
  border-color: rgba(175,195,194,.22);
  color: rgba(225,235,232,.82);
}

.project-conversation__mark span {
  color: #c4d4d1;
}

/* Brass stays as a very small signature accent on Projects. */
.projects-page .section-kicker span,
.projects-page .project-feature__index,
.projects-page .project-feature__note > span {
  color: #8a6a39;
}

/* =========================================================
   CONTACT PAGE — private advisory desk / cool neutral palette
   ========================================================= */
.contact-page-premium {
  min-height: 100vh;
  color: #15191d;
  background: #eef1f2;
}

.contact-page-premium .site-nav[data-scrolled="false"] .nav-shell {
  color: #15191d;
  background: rgba(246,248,248,0.90);
  border-color: rgba(57,73,81,0.16);
  box-shadow: 0 18px 48px rgba(25,34,38,0.08);
  backdrop-filter: blur(16px);
}

.contact-page-premium .site-nav[data-scrolled="false"] .brand__name,
.contact-page-premium .site-nav[data-scrolled="false"] .nav-links a,
.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta {
  color: #171b1e;
}

.contact-page-premium .site-nav[data-scrolled="false"] .brand__descriptor {
  color: #68757b;
}

.contact-page-premium .site-nav[data-scrolled="false"] .brand__monogram {
  color: #6d7f87;
  border-color: rgba(90,111,121,0.36);
}

.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta {
  border-color: rgba(77,96,106,0.28);
  background: rgba(255,255,255,0.58);
}

.contact-page-premium .site-nav[data-scrolled="false"] .nav-shell::before,
.contact-page-premium .site-nav[data-scrolled="false"] .nav-shell::after {
  background: #7c929d;
  box-shadow: none;
}

.contact-intro {
  width: min(1320px, calc(100vw - 56px));
  margin: 0 auto;
  padding: 150px 0 64px;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.72fr);
  gap: clamp(52px, 7vw, 110px);
  align-items: end;
}

.contact-intro .section-kicker,
.contact-brief .section-kicker {
  color: #627780;
}

.contact-intro__copy h1 {
  margin: 24px 0 24px;
  font-family: var(--font-display);
  font-size: clamp(68px, 8vw, 118px);
  font-weight: 400;
  line-height: 0.86;
  letter-spacing: -0.065em;
  color: #121517;
}

.contact-intro__copy h1 em {
  color: #637b86;
  font-weight: 400;
}

.contact-intro__copy > p:not(.section-kicker) {
  max-width: 640px;
  margin: 0;
  color: #56646b;
  font-size: clamp(16px, 1.15vw, 18px);
  font-weight: 520;
  line-height: 1.72;
}

.contact-intro__note {
  margin-top: 26px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #718087;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.contact-intro__note i { color: #8a6f45; }

.contact-intro__channels {
  border-top: 1px solid rgba(61,75,82,0.2);
}

.contact-intro__channels > a {
  min-height: 92px;
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid rgba(61,75,82,0.2);
  transition: padding .25s ease, background .25s ease;
}

.contact-intro__channels > a:hover {
  padding-left: 10px;
  background: rgba(255,255,255,0.38);
}

.contact-channel__icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #566e78;
  border: 1px solid rgba(72,92,102,0.24);
  background: rgba(255,255,255,0.44);
  font-size: 17px;
}

.contact-intro__channels small,
.contact-intro__channels strong {
  display: block;
}

.contact-intro__channels small {
  margin-bottom: 5px;
  color: #7b898f;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.contact-intro__channels strong {
  font-family: var(--font-display);
  color: #181c1e;
  font-size: clamp(22px, 1.8vw, 29px);
  font-weight: 400;
  line-height: 1;
}

.contact-intro__channels > a > i {
  color: #6c818a;
  transition: transform .25s ease;
}
.contact-intro__channels > a:hover > i { transform: translateX(5px); }

.contact-scene {
  position: relative;
  width: min(1440px, calc(100vw - 32px));
  height: clamp(280px, 35vw, 500px);
  margin: 0 auto;
  overflow: hidden;
  border-radius: 18px;
  background: #dce1e2;
}

.contact-scene::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(13,18,20,0.02) 25%, rgba(13,18,20,0.42) 100%);
}

.contact-scene img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contact-scene figcaption {
  position: absolute;
  left: clamp(22px, 5vw, 68px);
  right: clamp(22px, 5vw, 68px);
  bottom: clamp(20px, 4vw, 48px);
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  color: #fff;
}

.contact-scene figcaption span {
  color: rgba(255,255,255,0.78);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.contact-scene figcaption strong {
  max-width: 660px;
  font-family: var(--font-display);
  font-size: clamp(28px, 3.4vw, 48px);
  font-weight: 400;
  line-height: 1.02;
  text-align: right;
}

.contact-brief {
  width: min(1320px, calc(100vw - 56px));
  margin: 0 auto;
  padding: 82px 0 90px;
  display: grid;
  grid-template-columns: minmax(300px, 0.72fr) minmax(520px, 1.28fr);
  gap: clamp(50px, 7vw, 104px);
  align-items: start;
}

.contact-brief__intro h2 {
  margin: 24px 0 18px;
  color: #16191b;
  font-family: var(--font-display);
  font-size: clamp(46px, 5vw, 76px);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.055em;
}
.contact-brief__intro h2 em { color: #657d88; font-weight: 400; }
.contact-brief__intro > p:not(.section-kicker) {
  max-width: 500px;
  color: #5d6a70;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
}

.contact-brief__promise {
  margin-top: 30px;
  padding-top: 22px;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  border-top: 1px solid rgba(57,73,81,0.18);
}
.contact-brief__promise > i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #6a818a;
  background: rgba(255,255,255,0.48);
  border: 1px solid rgba(78,98,108,0.2);
}
.contact-brief__promise strong,
.contact-brief__promise span { display: block; }
.contact-brief__promise strong {
  margin-bottom: 5px;
  font-family: var(--font-display);
  color: #1a1d1e;
  font-size: 23px;
  font-weight: 400;
}
.contact-brief__promise span {
  color: #657279;
  font-size: 13px;
  line-height: 1.6;
}

.contact-brief__form {
  padding: 30px;
  border-radius: 20px;
  background: #f9fbfb;
  border: 1px solid rgba(57,73,81,0.13);
  box-shadow: 0 28px 72px rgba(30,42,48,0.09);
}

.contact-interest {
  margin: 0 0 26px;
  padding: 0 0 26px;
  border: 0;
  border-bottom: 1px solid rgba(57,73,81,0.14);
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
}

.contact-interest legend {
  grid-column: 1 / -1;
  width: 100%;
  margin-bottom: 12px;
  color: #708086;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.contact-interest label { cursor: pointer; }
.contact-interest input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.contact-interest label > span {
  min-height: 58px;
  padding: 12px 13px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(67,84,92,0.16);
  border-radius: 12px;
  color: #4f5e65;
  background: #f3f6f6;
  font-size: 11px;
  font-weight: 700;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.contact-interest label > span i { color: #718891; font-size: 15px; }
.contact-interest input:checked + span {
  color: #f8faf9;
  background: #31444d;
  border-color: #31444d;
  transform: translateY(-1px);
}
.contact-interest input:checked + span i { color: #d8c59f; }

.contact-brief__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.contact-brief__grid label { display: grid; gap: 8px; }
.contact-brief__grid label > span {
  color: #728188;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.contact-brief__grid input,
.contact-brief__grid textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(67,84,92,0.22);
  color: #171b1d;
  background: transparent;
  font-family: var(--font-sans);
  font-size: 15px;
  outline: none;
  transition: border-color .2s ease;
}
.contact-brief__grid input {
  height: 48px;
  padding: 0;
}
.contact-brief__grid textarea {
  min-height: 124px;
  padding: 10px 0;
  resize: vertical;
}
.contact-brief__grid input:focus,
.contact-brief__grid textarea:focus { border-color: #627d88; }
.contact-brief__grid input::placeholder,
.contact-brief__grid textarea::placeholder { color: #9aa5a9; }
.contact-brief__full { grid-column: 1 / -1; }

.contact-brief__bottom {
  margin-top: 26px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}
.contact-brief__submit {
  min-width: 190px;
  height: 54px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #f7f9f8;
  background: #263840;
  border: 1px solid #263840;
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  transition: background .2s ease, transform .2s ease;
}
.contact-brief__submit:hover { background: #17242a; transform: translateY(-1px); }
.contact-brief__bottom p {
  max-width: 280px;
  margin: 0;
  color: #859096;
  font-size: 11px;
  line-height: 1.5;
  text-align: right;
}
.contact-brief__bottom p a { color: #536b76; text-decoration: underline; }
.contact-page-premium .contact-form__status { color: #52646c; }

.contact-meet {
  padding: 72px max(6vw, 30px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
  gap: clamp(40px, 7vw, 100px);
  align-items: end;
  color: #f5f6f3;
  background: #1e2a30;
}
.contact-meet h2 {
  margin: 22px 0 0;
  font-family: var(--font-display);
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 400;
  line-height: .96;
  letter-spacing: -0.05em;
}
.contact-meet h2 em { color: #bdcbd0; font-weight: 400; }
.contact-meet__details p {
  max-width: 520px;
  margin: 0 0 24px;
  color: rgba(241,245,244,0.72);
  font-size: 16px;
  line-height: 1.7;
}
.contact-meet__details a {
  padding: 17px 0;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: center;
  border-top: 1px solid rgba(255,255,255,0.18);
  border-bottom: 1px solid rgba(255,255,255,0.18);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.contact-meet__details a i { color: #d1b57d; }

@media (max-width: 980px) {
  .contact-intro,
  .contact-brief,
  .contact-meet { grid-template-columns: 1fr; }
  .contact-intro { align-items: start; }
  .contact-intro__channels { max-width: 720px; }
  .contact-scene figcaption { align-items: start; flex-direction: column; }
  .contact-scene figcaption strong { text-align: left; }
}

@media (max-width: 700px) {
  .contact-intro,
  .contact-brief { width: min(100vw - 28px, 100%); }
  .contact-intro { padding-top: 122px; gap: 34px; }
  .contact-intro__copy h1 { font-size: clamp(58px, 19vw, 82px); }
  .contact-scene { width: calc(100vw - 16px); height: 330px; border-radius: 12px; }
  .contact-interest { grid-template-columns: 1fr 1fr; }
  .contact-brief__grid { grid-template-columns: 1fr; }
  .contact-brief__full { grid-column: auto; }
  .contact-brief__form { padding: 22px 18px; }
  .contact-brief__bottom { flex-direction: column; align-items: stretch; }
  .contact-brief__bottom p { text-align: left; max-width: none; }
  .contact-meet { padding: 58px 22px; }
}

@media (max-width: 460px) {
  .contact-interest { grid-template-columns: 1fr; }
  .contact-intro__channels > a { grid-template-columns: 44px 1fr auto; gap: 12px; }
  .contact-intro__channels strong { font-size: 21px; }
}

/* =========================================================
   HOMEPAGE FINAL BALANCE FIX — Sep 03
   Restores compact project intro, functional release rail,
   cleaner FAQ controls, and a white/cool background rhythm.
   ========================================================= */

/* Featured projects: compact editorial intro, no giant empty dark slab */
.projects-intro {
  padding: 24px var(--page-pad) 22px;
  background: #20211e;
}
.projects-intro .gold-rule {
  margin: 10px 0 18px;
}
.projects-intro__body {
  width: 100%;
  grid-template-columns: minmax(280px, .72fr) minmax(320px, .72fr) auto;
  gap: clamp(26px, 3.5vw, 54px);
  align-items: center;
}
.projects-intro__body h2 {
  font-size: clamp(38px, 3.2vw, 50px);
  line-height: .94;
}
.projects-intro__body > p {
  max-width: 450px;
  margin: 0;
  font-size: clamp(14px, .95vw, 16px);
  line-height: 1.55;
}
.projects-intro__all {
  margin-top: 0;
  white-space: nowrap;
  align-self: center;
}
.projects-scroll {
  height: 132vh;
}
.projects-stage {
  height: 76svh;
  min-height: 500px;
  max-height: 750px;
}

/* Current releases: proper white visual break + real carousel overflow */
.releases {
  background: #fbfbf9;
  border-top-color: rgba(45, 54, 56, .16);
  border-bottom-color: rgba(45, 54, 56, .16);
}
.releases > .section-meta,
.releases__heading {
  border-color: rgba(38, 44, 45, .16);
}
.release-card {
  flex-basis: clamp(300px, 27vw, 410px);
}
.release-card__meta {
  padding-top: 15px;
}
.rail-controls button {
  background: #fff;
  border-color: rgba(33, 37, 38, .22);
}
.rail-controls button:hover {
  background: #20211e;
  color: #fff;
  border-color: #20211e;
}
.release-rail__end {
  color: #625f58;
  border-left-color: rgba(33, 37, 38, .15);
}

/* How we help: cool white-grey instead of another butter section */
.help-paths {
  background: #f4f5f3;
  border-color: rgba(42, 51, 52, .14);
}
.help-paths__grid {
  border-top-color: rgba(42, 51, 52, .16);
  border-left-color: rgba(42, 51, 52, .12);
}
.help-path {
  background: #fff;
  border-right-color: rgba(42, 51, 52, .12);
  border-bottom-color: rgba(42, 51, 52, .12);
}
.help-path:hover {
  background: #fafaf8;
}

/* FAQ: clean white page, normal + / − controls, no strange circles */
.faq,
.faq--polished {
  background: #fff;
  border-top-color: rgba(42, 51, 52, .14);
  border-bottom-color: rgba(42, 51, 52, .14);
  box-shadow: none;
}
.faq::after {
  display: none;
}
.faq__support--polished {
  background: #f5f4f0;
  border-color: rgba(42, 51, 52, .14);
  box-shadow: none;
}
.faq__shell--polished {
  background: #fafaf8;
  border-color: rgba(42, 51, 52, .14);
  box-shadow: none;
}
.faq--polished .faq__list summary i {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 0;
  display: grid;
  place-items: center;
  color: #6d5738;
}
.faq--polished .faq__list summary i::before {
  content: "+";
  position: static;
  width: auto;
  height: auto;
  background: none;
  color: currentColor;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 26px;
  font-weight: 300;
  line-height: 1;
  transform: none;
}
.faq--polished .faq__list summary i::after {
  display: none;
}
.faq--polished .faq__list details[open] summary i::before {
  content: "−";
}

/* Insights: another white/cool break instead of beige-on-beige */
.insights {
  background: #f3f5f4;
  border-top: 1px solid rgba(42, 51, 52, .14);
}
.insight-card {
  background: #fff;
  border-color: rgba(42, 51, 52, .14);
}
.insight-card:hover {
  background: #fff;
  border-color: rgba(116, 87, 43, .42);
}

@media (max-width: 980px) {
  .projects-intro__body {
    grid-template-columns: 1fr 1fr;
  }
  .projects-intro__all {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

@media (max-width: 820px) {
  .projects-intro {
    padding: 24px var(--page-pad) 26px;
  }
  .projects-intro__body {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .projects-scroll {
    height: auto;
  }
  .projects-stage {
    height: auto;
    max-height: none;
  }
  .release-card {
    flex-basis: min(82vw, 360px);
  }
}

/* =========================================================
   FINAL HOMEPAGE POLISH — richer help cards + warmer FAQ CTA
   ========================================================= */

/* Give the six help paths a restrained boutique palette instead of plain white boxes. */
.help-paths {
  background: #f6f7f5;
}
.help-paths__grid {
  gap: 12px;
  border: 0;
}
.help-path {
  min-height: 276px;
  border: 1px solid rgba(40, 47, 46, .10);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(31, 36, 34, .035);
}
.help-path:nth-child(1),
.help-path:nth-child(4) {
  background: #edf2ec;
}
.help-path:nth-child(2),
.help-path:nth-child(5) {
  background: #edf1f4;
}
.help-path:nth-child(3),
.help-path:nth-child(6) {
  background: #f5efe7;
}
.help-path:nth-child(1)::before,
.help-path:nth-child(4)::before,
.help-path:nth-child(2)::before,
.help-path:nth-child(5)::before,
.help-path:nth-child(3)::before,
.help-path:nth-child(6)::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
}
.help-path:nth-child(1)::before,
.help-path:nth-child(4)::before { background: #7f927c; }
.help-path:nth-child(2)::before,
.help-path:nth-child(5)::before { background: #718694; }
.help-path:nth-child(3)::before,
.help-path:nth-child(6)::before { background: #b58a54; }
.help-path:hover {
  background: #fff;
  transform: translateY(-5px);
  box-shadow: 0 22px 50px rgba(31, 36, 34, .10);
}
.help-path__icon {
  background: rgba(255,255,255,.78);
  border-color: rgba(92, 92, 82, .16);
  color: #7d633c;
  box-shadow: inset 0 0 0 5px rgba(255,255,255,.28);
}
.help-path:nth-child(1) .help-path__icon,
.help-path:nth-child(4) .help-path__icon { color: #62725f; }
.help-path:nth-child(2) .help-path__icon,
.help-path:nth-child(5) .help-path__icon { color: #5f7481; }
.help-path:nth-child(3) .help-path__icon,
.help-path:nth-child(6) .help-path__icon { color: #9a7137; }

/* Make the short-brief card feel like a private advisory invitation. */
.faq__support--polished {
  position: relative;
  overflow: hidden;
  background: #273732;
  color: #f7f3ea;
  border: 1px solid rgba(179, 151, 101, .36);
  border-radius: 18px;
  box-shadow: 0 18px 42px rgba(25, 38, 34, .12);
}
.faq__support--polished::after {
  content: "V/";
  position: absolute;
  right: 18px;
  top: 8px;
  font-family: var(--font-display);
  font-size: 84px;
  line-height: 1;
  color: rgba(232, 205, 155, .08);
  pointer-events: none;
}
.faq__support--polished .mini-label {
  color: #d5b472;
}
.faq__support--polished h3 {
  color: #fffaf1;
}
.faq__support--polished p:not(.mini-label) {
  color: rgba(248, 244, 235, .76);
}
.faq__support--polished .button--gold-solid {
  background: #d8b469;
  color: #1f2824;
  border-color: #d8b469;
}
.faq__support--polished .button--gold-solid:hover {
  background: #ead29a;
  border-color: #ead29a;
}
.faq__support--polished .faq__mini-contact {
  color: #f8f3e8;
}
.faq__support--polished .faq__mini-contact-icon {
  background: rgba(255,255,255,.06);
  border-color: rgba(216,180,105,.34);
}
.faq__shell--polished {
  background: #f7f7f4;
  border-color: rgba(48, 57, 55, .12);
  border-radius: 18px;
}
.faq--polished .faq__list details {
  border-bottom-color: rgba(48,57,55,.14);
}

@media (max-width: 820px) {
  .help-paths__grid { gap: 10px; }
  .help-path { min-height: 245px; }
}


/* ==========================================================================
   VANTAGE POINT — REVISION PASS (Sept 2026)
   Appended last so these rules win. Grouped by the issue they fix.
   ========================================================================== */

:root {
  --nav-clear: 104px;          /* height of the fixed nav — sticky things must clear it */
  --gold-ink: #7c5c24;         /* gold that passes contrast on light backgrounds */
  --gold-lite: #ecc888;
}

/* --------------------------------------------------------------------------
   1. FEATURED PROJECTS — "missing the top part" scroll bug
   The stage was position:sticky; top:0, so the fixed 104px nav covered its
   head. It now pins below the nav, and the scroll track is longer so each
   panel gets room to transition instead of snapping.
   -------------------------------------------------------------------------- */

.projects-scroll { height: 265vh; }

.projects-stage {
  top: var(--nav-clear);
  height: calc(100svh - var(--nav-clear) - 26px);
  min-height: 540px;
  max-height: 860px;
}

.projects-stage::after { inset: 18px; border-color: rgba(226, 189, 100, 0.34); }

/* --------------------------------------------------------------------------
   2. FEATURED PROJECTS — richer, more premium panel
   -------------------------------------------------------------------------- */

.projects { background: #14150f; }

.projects-stage {
  background:
    radial-gradient(120% 90% at 78% 12%, rgba(226, 186, 96, 0.10), transparent 58%),
    radial-gradient(90% 70% at 8% 92%, rgba(226, 186, 96, 0.05), transparent 60%),
    linear-gradient(155deg, #1b1c16 0%, #121309 62%, #0d0e0a 100%);
}

.project-panel__media {
  border-radius: 3px;
  box-shadow: 0 42px 90px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(228, 190, 101, 0.16);
}

.project-panel__media > img {
  filter: brightness(1.07) saturate(1.06) contrast(1.03);
}

.project-panel__media:hover > img { filter: brightness(1.12) saturate(1.08) contrast(1.03); }

/* lift the heavy left wash — it was flattening the render */
.project-panel__wash {
  background:
    linear-gradient(90deg, rgba(11, 12, 11, 0.30), transparent 26%),
    linear-gradient(180deg, transparent 52%, rgba(9, 10, 8, 0.42) 100%);
}

.project-panel__media::after {
  inset: 12px;
  border-color: rgba(247, 236, 214, 0.30);
  box-shadow: none;
}

.project-panel::before {
  background: linear-gradient(180deg, transparent, rgba(228, 190, 101, 0.55) 16%, rgba(228, 190, 101, 0.55) 84%, transparent);
  box-shadow: 0 0 14px rgba(228, 190, 101, 0.22);
}

.project-panel__content { border-left-color: rgba(230, 193, 106, 0.7); }

.project-panel__number {
  color: #e2bd72;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.22em;
}

.project-panel h3 { letter-spacing: -0.045em; }

.project-panel__details {
  color: rgba(246, 240, 228, 0.92);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.14em;
}

.project-panel__summary { color: rgba(243, 236, 223, 0.86); font-size: 15px; line-height: 1.68; }

.project-panel__logo { filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.35)); }

/* --------------------------------------------------------------------------
   3. SMALL GOLD LABELS — were 8px at ~3.8:1 contrast. Now bold and readable.
   -------------------------------------------------------------------------- */

.help-path small,
.projects-hub-hero__bottom span,
.projects-hub-hero__issue,
.why-benefits__grid span {
  color: var(--gold-ink);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.help-path small { left: 26px; bottom: 20px; }

.section-kicker { font-size: 11px; font-weight: 800; letter-spacing: 0.16em; }
.section-kicker span { font-weight: 900; }

.mini-label,
.lux-footer__label,
.faq__mini-contact,
.projects-intro__all,
.career-image-kicker {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.brand__descriptor { font-size: 9.5px; font-weight: 800; letter-spacing: 0.16em; }

.credibility span,
.team__disciplines span,
.newsletter__tags span { font-size: 11px; font-weight: 750; }

.editorial-link span:first-child { font-size: 11px; font-weight: 800; letter-spacing: 0.13em; }

/* --------------------------------------------------------------------------
   4. ITALIC GOLD DISPLAY TEXT — visibility on both light and dark
   -------------------------------------------------------------------------- */

.invest__intro h2 em,
.help-paths__header h2 em,
.faq__intro h2 em,
.releases__heading h2 em,
.contact-suite__intro h2 em,
.why-benefits__head h2 em,
.why-story__intro h2 em { color: #8a6524; }

.projects-intro__body h2 em,
.newsletter__copy h2 em,
.insights__title h2 em,
.why-resilience__copy h2 em,
.why-visual__copy h2 em { color: #ecc888; }

h1 em, h2 em, h3 em { font-style: italic; }

/* --------------------------------------------------------------------------
   5. WHY DUBAI — Font Awesome icons replacing the hand-drawn SVGs
   -------------------------------------------------------------------------- */

.benefit__icon {
  width: 50px;
  height: 50px;
  color: #8a6524;
  border: 1px solid rgba(138, 101, 36, 0.28);
  background: linear-gradient(150deg, rgba(255, 255, 255, 0.92), rgba(248, 240, 226, 0.62));
  box-shadow: 0 10px 26px rgba(84, 62, 26, 0.10), inset 0 0 0 4px rgba(255, 255, 255, 0.4);
  transition: transform 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
}

.benefit__icon i { font-size: 19px; line-height: 1; }

.benefit:hover .benefit__icon {
  transform: translateY(-2px);
  color: #6d4d17;
  box-shadow: 0 14px 30px rgba(84, 62, 26, 0.16), inset 0 0 0 4px rgba(255, 255, 255, 0.55);
}

.benefit__title h3 { letter-spacing: -0.02em; }
.benefit__title small { color: var(--gold-ink); font-size: 11px; font-weight: 800; }

/* --------------------------------------------------------------------------
   6. WHATSAPP — floating button, FAQ card link, project buttons
   -------------------------------------------------------------------------- */

.whatsapp-float {
  right: 22px;
  bottom: 22px;
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: #10110f;
  background: linear-gradient(145deg, #f0d091 0%, #d8ae5f 52%, #c1913f 100%);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(255, 245, 224, 0.28), 0 0 0 8px rgba(216, 174, 95, 0.14);
  transition: transform 0.28s cubic-bezier(.22, 1, .3, 1), box-shadow 0.28s ease, background 0.28s ease;
}

.whatsapp-float::after {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: 50%;
  background: rgba(216, 174, 95, 0.16);
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0.32s ease, transform 0.32s ease;
  pointer-events: none;
}

.whatsapp-float:hover {
  transform: translateY(-3px) scale(1.04);
  background: linear-gradient(145deg, #f6dba9 0%, #e2bb72 52%, #cb9c48 100%);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 248, 232, 0.42), 0 0 0 12px rgba(216, 174, 95, 0.2);
}

.whatsapp-float:hover::after { opacity: 1; transform: scale(1); }

.whatsapp-float__icon {
  width: auto;
  height: auto;
  background: transparent;
  color: #10110f;
}

.whatsapp-float__icon svg { width: 30px; height: 30px; fill: currentColor; }
.whatsapp-float__icon i { font-size: 29px; line-height: 1; color: #10110f; }
.whatsapp-float__label { display: none; }

/* FAQ support card — the icon was near-invisible */
.faq__mini-contact {
  padding: 8px 18px 8px 8px;
  border-radius: 999px;
  border: 1px solid rgba(124, 92, 36, 0.26);
  background: rgba(255, 255, 255, 0.42);
  transition: background 0.26s ease, border-color 0.26s ease, transform 0.26s ease, box-shadow 0.26s ease;
}

.faq__mini-contact:hover {
  transform: translateY(-2px);
  border-color: rgba(124, 92, 36, 0.5);
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 12px 26px rgba(70, 52, 22, 0.14);
}

.faq__mini-contact-icon {
  width: 40px;
  height: 40px;
  border: 0;
  color: #14150f;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  box-shadow: 0 6px 16px rgba(103, 76, 30, 0.24);
}

.faq__mini-contact-icon svg { width: 21px; height: 21px; fill: currentColor; }
.faq__mini-contact-icon i { font-size: 20px; line-height: 1; }

/* WhatsApp variants on project cards */
.release-card__source--wa,
.project-panel__link--wa {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.release-card__source--wa i { font-size: 15px; color: #4aa657; }
.release-card__source--wa:hover i { color: #3d8f49; }

.project-panel__link--wa i { font-size: 16px; color: #6fd07f; }
.project-panel__link--wa:hover i { color: #8ee39c; }

/* --------------------------------------------------------------------------
   7. WHY DUBAI PAGE — horizontal scroll on phones
   An un-scoped rule later in this file re-applied a 420px minimum column and
   overrode the mobile collapse. Restored here.
   -------------------------------------------------------------------------- */

@media (max-width: 820px) {
  .why-resilience {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .why-resilience__copy { padding: clamp(34px, 7vw, 56px) var(--page-pad); }
}

/* --------------------------------------------------------------------------
   8. FOOTER — rebuilt
   -------------------------------------------------------------------------- */

.vp-footer {
  position: relative;
  padding: 0 0 26px;
  overflow: hidden;
  color: #f4efe6;
  background:
    radial-gradient(70% 100% at 6% 0%, rgba(210, 170, 96, 0.10), transparent 46%),
    linear-gradient(180deg, #1b1c18 0%, #101109 100%);
}

.vp-footer__eyebrow {
  margin: 0 0 16px;
  color: #dcb972;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

/* --- CTA strip --- */
.vp-footer__cta {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: clamp(44px, 4.6vw, 72px) var(--page-pad) clamp(38px, 4vw, 58px);
  display: grid;
  grid-template-columns: minmax(300px, 0.85fr) minmax(320px, 1.15fr);
  gap: clamp(32px, 4vw, 68px);
  align-items: center;
  border-bottom: 1px solid rgba(244, 239, 230, 0.09);
}

.vp-footer__cta-copy h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 3.4vw, 52px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.vp-footer__cta-copy h2 em { color: #ecc888; font-weight: 400; }

.vp-footer__cta-actions { display: grid; gap: 12px; }

.vp-action {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 18px;
  border: 1px solid rgba(244, 239, 230, 0.12);
  border-radius: 4px;
  color: #f4efe6;
  background: rgba(255, 255, 255, 0.025);
  transition: border-color 0.26s ease, background 0.26s ease, transform 0.26s ease;
}

.vp-action:hover {
  transform: translateX(3px);
  border-color: rgba(226, 189, 114, 0.44);
  background: rgba(226, 189, 114, 0.07);
}

.vp-action__icon {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #dcb972;
  border: 1px solid rgba(226, 189, 114, 0.3);
  font-size: 17px;
  transition: color 0.26s ease, background 0.26s ease, border-color 0.26s ease;
}

.vp-action:hover .vp-action__icon {
  color: #14150f;
  border-color: transparent;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
}

.vp-action--wa .vp-action__icon { color: #6fd07f; border-color: rgba(111, 208, 127, 0.34); }
.vp-action--wa:hover .vp-action__icon { color: #0f2214; background: linear-gradient(145deg, #8fe6a0, #4aa657); }

.vp-action__text { display: grid; gap: 3px; min-width: 0; }
.vp-action__text small {
  color: rgba(244, 239, 230, 0.5);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.vp-action__text strong {
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
}

/* --- main columns --- */
.vp-footer__main {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: clamp(40px, 4vw, 60px) var(--page-pad) clamp(30px, 3vw, 44px);
  display: grid;
  grid-template-columns: minmax(280px, 1.5fr) repeat(3, minmax(130px, 0.72fr)) minmax(160px, 0.8fr);
  gap: clamp(28px, 3.4vw, 56px);
  align-items: start;
}

.vp-footer__logo { display: inline-flex; align-items: center; gap: 14px; }

.vp-footer__monogram {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #dcb972;
  border: 1px solid rgba(226, 189, 114, 0.5);
  font-family: var(--font-display);
  font-size: 15px;
  letter-spacing: 0.06em;
}

.vp-footer__wordmark { display: grid; gap: 4px; }
.vp-footer__wordmark strong {
  font-family: var(--font-display);
  font-size: 25px;
  font-weight: 400;
  letter-spacing: -0.01em;
}
.vp-footer__wordmark small {
  color: rgba(244, 239, 230, 0.56);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.vp-footer__pitch {
  max-width: 380px;
  margin: 22px 0 0;
  color: rgba(244, 239, 230, 0.62);
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.68;
}

.vp-footer__social { margin-top: 24px; display: flex; gap: 10px; }

.vp-footer__social a {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: rgba(244, 239, 230, 0.8);
  border: 1px solid rgba(226, 189, 114, 0.24);
  font-size: 15px;
  transition: transform 0.25s ease, color 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}

.vp-footer__social a:hover {
  transform: translateY(-3px);
  color: #14150f;
  border-color: transparent;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
}

.vp-footer__col { display: grid; align-content: start; gap: 11px; }

.vp-footer__col a {
  width: max-content;
  max-width: 100%;
  color: rgba(244, 239, 230, 0.74);
  font-size: 13.5px;
  font-weight: 550;
  transition: color 0.2s ease, transform 0.2s ease;
}

.vp-footer__col a:hover { color: #ecc888; transform: translateX(2px); }

.vp-footer__address {
  margin: 0;
  color: rgba(244, 239, 230, 0.74);
  font-size: 13.5px;
  font-weight: 550;
  line-height: 1.7;
}

.vp-footer__reg {
  margin: 16px 0 0;
  color: rgba(244, 239, 230, 0.46);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.9;
}
.vp-footer__reg span { color: #b99a5f; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }

/* --- statement + bottom --- */
.vp-footer__statement {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: 26px var(--page-pad);
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: baseline;
  border-top: 1px solid rgba(244, 239, 230, 0.09);
  border-bottom: 1px solid rgba(244, 239, 230, 0.09);
}

.vp-footer__statement > span {
  color: rgba(244, 239, 230, 0.44);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.vp-footer__statement strong {
  color: #ecc888;
  font-family: var(--font-display);
  font-size: clamp(24px, 2vw, 33px);
  font-weight: 400;
}

.vp-footer__bottom {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: 20px var(--page-pad) 0;
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  color: rgba(244, 239, 230, 0.5);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.06em;
}

.vp-footer__bottom > div { display: flex; gap: 22px; }
.vp-footer__bottom a { color: rgba(244, 239, 230, 0.62); }
.vp-footer__bottom a:hover { color: #ecc888; }
.vp-footer__bottom i { margin-left: 6px; font-size: 11px; }

@media (max-width: 1180px) {
  .vp-footer__main { grid-template-columns: repeat(3, 1fr); }
  .vp-footer__brand { grid-column: 1 / -1; padding-bottom: 26px; border-bottom: 1px solid rgba(244, 239, 230, 0.08); }
}

@media (max-width: 820px) {
  .vp-footer__cta { grid-template-columns: 1fr; }
  .vp-footer__main { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .vp-footer__main { grid-template-columns: 1fr; gap: 28px; }
  .vp-footer__statement,
  .vp-footer__bottom { align-items: flex-start; flex-direction: column; gap: 14px; }
  .vp-footer__bottom > div { flex-wrap: wrap; gap: 12px 18px; }
  .projects-stage { top: 0; }
}

/* --------------------------------------------------------------------------
   9. PROJECTS PAGE — card grid overflowed at tablet width
   Two cards, each with a 440px minimum, side by side at 768px = 880px.
   -------------------------------------------------------------------------- */

.project-edit-card { grid-template-columns: minmax(0, 0.82fr) minmax(0, 1fr); }

@media (max-width: 1024px) {
  .project-edit__grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .project-edit-card { grid-template-columns: 1fr; }
  .project-edit-card__media { min-height: 260px; }
}

/* --------------------------------------------------------------------------
   10. MINIMUM LEGIBLE TEXT
   Several micro-labels sat at 6–9px. Caps + letterspacing hides it on a
   desktop mock but it is unreadable on a phone.
   -------------------------------------------------------------------------- */

.partner-wordmark small,
.project-logo-wordmark small { font-size: 8.5px; font-weight: 800; letter-spacing: 0.14em; }

.release-card__meta > span { font-size: 11px; font-weight: 800; }
.release-card__meta p { font-size: 12px; font-weight: 650; }
.release-card__source span { font-size: 10.5px; font-weight: 800; letter-spacing: 0.11em; }

.project-panel__link span:first-child { font-size: 10.5px; font-weight: 800; }
.help-path__number { font-size: 10.5px; font-weight: 800; }
.insight-card__body small { font-size: 10.5px; font-weight: 800; }
.insight-card__image i { font-size: 10.5px; font-weight: 800; }
.text-button span { font-size: 10.5px; font-weight: 800; }
.section-kicker span { font-size: 10.5px; }
.nav-cta span { font-size: 11px; font-weight: 800; }

@media (max-width: 820px) {
  /* raise the floor on phones, where these labels are hardest to read */
  .section-kicker,
  .section-kicker span,
  .mini-label,
  .brand__descriptor,
  .help-path small,
  .help-path__number,
  .insight-card__body small,
  .release-card__source span,
  .project-panel__link span:first-child,
  .editorial-link span:first-child,
  .vp-footer__eyebrow,
  .vp-action__text small,
  .vp-footer__wordmark small,
  .text-button span { font-size: 11px; letter-spacing: 0.1em; }

  .partner-wordmark small,
  .project-logo-wordmark small { font-size: 9px; }

  /* tap targets — these were 9–15px tall */
  .release-card__source,
  .project-panel__link,
  .editorial-link,
  .projects-intro__all,
  .vp-footer__col a,
  .vp-footer__bottom a,
  .insight-card__body b { min-height: 44px; display: inline-flex; align-items: center; }

  .vp-footer__col { gap: 2px; }
}

/* float button was sitting on top of the last line of footer copy on phones */
@media (max-width: 820px) {
  .vp-footer { padding-bottom: 92px; }
}

/* WhatsApp link style on the Projects hub cards */
.project-wa-link { display: inline-flex; align-items: center; gap: 9px; }
.project-wa-link i { font-size: 15px; color: #4aa657; }
.project-wa-link:hover i { color: #3d8f49; }

/* ==========================================================================
   REVISION PASS 2 — feedback fixes
   ========================================================================== */

/* --- 1. "How we can help": dead space above the heading, loose alignment --- */

.help-paths { padding-top: clamp(48px, 4vw, 64px); }

.help-paths__header {
  margin-bottom: clamp(28px, 2.6vw, 40px);
  gap: clamp(32px, 3.4vw, 62px);
  align-items: end;
}

.help-paths__header .section-kicker { margin-bottom: 0; }

.help-paths__header h2 { margin-top: 12px; line-height: 0.9; }

.help-paths__intro { padding-bottom: 4px; }

.help-paths__intro p { margin: 0 0 18px; max-width: 46ch; }

/* --- 2. FAQ WhatsApp pill was white-on-dark and unreadable --------------- */

.faq__support--polished .faq__mini-contact,
.faq__mini-contact {
  color: #f6f1e6;
  border-color: rgba(232, 198, 126, 0.42);
  background: rgba(255, 255, 255, 0.06);
}

.faq__support--polished .faq__mini-contact:hover,
.faq__mini-contact:hover {
  color: #fff9ec;
  border-color: rgba(232, 198, 126, 0.8);
  background: rgba(232, 198, 126, 0.16);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.26);
}

.faq__mini-contact-icon {
  color: #10231a;
  background: linear-gradient(145deg, #7fe093, #3f9c52);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.faq__mini-contact:hover .faq__mini-contact-icon {
  background: linear-gradient(145deg, #96eda8, #4bb161);
}

/* --- 4. gold italic that sits on LIGHT backgrounds needs the dark gold --- */

.newsletter__copy h2 em,
.insights__title h2 em,
.releases__heading h2 em,
.team__title h3 em { color: #8a6524; }

/* --- 5. WhatsApp visibility everywhere else ------------------------------ */

/* dark project panels */
.project-panel__link--wa {
  padding: 9px 16px 9px 12px;
  border: 1px solid rgba(232, 198, 126, 0.34);
  border-radius: 999px;
  transition: border-color .26s ease, background .26s ease, transform .26s ease;
}
.project-panel__link--wa:hover {
  transform: translateY(-2px);
  border-color: rgba(232, 198, 126, 0.72);
  background: rgba(232, 198, 126, 0.12);
}
.project-panel__link--wa i { color: #7fe093; }

/* light release cards + projects hub */
.release-card__source--wa,
.project-wa-link {
  padding: 7px 14px 7px 10px;
  border: 1px solid rgba(63, 156, 82, 0.3);
  border-radius: 999px;
  background: rgba(63, 156, 82, 0.06);
  transition: border-color .24s ease, background .24s ease, transform .24s ease;
}
.release-card__source--wa:hover,
.project-wa-link:hover {
  transform: translateY(-1px);
  border-color: rgba(63, 156, 82, 0.62);
  background: rgba(63, 156, 82, 0.13);
}
.release-card__source--wa i,
.project-wa-link i { color: #2f8442; }

/* contact / why-dubai / buyer-guide "Start a conversation" tiles */
.contact-suite__direct a:first-child .contact-suite__direct-icon,
.contact-channel--whatsapp .contact-channel__icon {
  color: #10231a;
  background: linear-gradient(145deg, #7fe093, #3f9c52);
}

/* the Why Dubai heading sits on a tan panel — needs a deeper gold than the
   cream sections to clear contrast */
.invest__intro h2 em { color: #6b4d15; }

/* the polished FAQ card scopes its icon rule two levels deep, which was
   beating the flat selector above and leaving a near-black glyph on a
   near-black circle. Match the specificity so this one actually applies. */
.faq__support--polished .faq__mini-contact-icon {
  color: #0d2116;
  border: 0;
  background: linear-gradient(145deg, #7fe093, #3f9c52);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.32);
}

.faq__support--polished .faq__mini-contact:hover .faq__mini-contact-icon {
  background: linear-gradient(145deg, #9aefab, #4cb463);
}

/* ==========================================================================
   PROJECTS PAGE — height, contrast and the oversized monogram
   ========================================================================== */

/* --- 1. the page was 4900px / 5.4 screens. Trim the padding stack. ------- */

.projects-hub-hero {
  min-height: 0;
  padding-top: clamp(104px, 9vw, 128px);
  padding-bottom: clamp(44px, 4vw, 56px);
}

.project-lens { padding-block: clamp(56px, 5vw, 72px); }

.project-feature {
  min-height: 0;
  padding-block: clamp(52px, 4.6vw, 68px);
}

.project-edit { padding-block: clamp(56px, 5vw, 72px); }

.project-conversation { padding-block: clamp(60px, 5.4vw, 80px); }

/* cards had a big dead gap between the meta and the button */
.project-edit-card__body {
  gap: 10px;
  padding: clamp(22px, 2vw, 28px);
  justify-content: center;
}
.project-edit-card__body h3 { margin: 2px 0 0; }
.project-edit-card__body p { margin: 0 0 6px; }
.project-edit-card__body .project-wa-link { margin-top: 6px; }

/* --- 2. hero caption sat on a mid-tone photo at 1.5:1 -------------------- */

.projects-hub-hero__media figcaption {
  padding: 46px 30px 26px;
  background: linear-gradient(180deg, transparent, rgba(8, 12, 14, 0.62) 42%, rgba(6, 9, 11, 0.92));
}
.projects-hub-hero__media figcaption span { color: #f0d79b; }
.projects-hub-hero__media figcaption strong { color: #fffaf0; }
.projects-hub-hero__media figcaption small { color: #ecd7a6; font-weight: 700; }

.projects-hub-hero__frame span { color: #fffaf0; text-shadow: 0 2px 10px rgba(0, 0, 0, .6); }

/* "Discuss project" label sat white on whatever the photo happened to be */
.project-edit-card__media span {
  padding: 26px 18px 14px;
  color: #fffaf0;
  font-weight: 800;
  background: linear-gradient(180deg, transparent, rgba(8, 12, 14, 0.82));
}

/* --- 3. gold labels: darker on light panels, lighter on dark ------------- */

.projects-hub-hero__copy .section-kicker span,
.projects-hub-hero__copy .section-kicker,
.project-lens .section-kicker,
.project-lens .section-kicker span,
.project-edit .section-kicker,
.project-edit .section-kicker span,
.projects-hub-hero__issue strong,
.projects-hub-hero__issue span,
.project-edit-card__body > span { color: #7a5a24; }

.projects-hub-hero__bottom > span { color: #6f5119; font-weight: 800; }

.project-feature--dark .project-feature__index,
.project-feature--dark .project-feature__note span,
.project-conversation .section-kicker,
.project-conversation .section-kicker span { color: #e6c078; }

.site-nav[data-scrolled="true"] .brand__descriptor,
.projects-page .site-nav .brand__descriptor { color: rgba(248, 243, 233, .82); }

/* --- 4. buttons needed a real hover, not just a border change ------------ */

.button--outline-light {
  transition: background .26s ease, border-color .26s ease, color .26s ease, transform .26s ease;
}
.button--outline-light:hover {
  transform: translateY(-2px);
  color: #14150f;
  border-color: #e6c078;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
}

.button--gold-solid { transition: background .26s ease, transform .26s ease, box-shadow .26s ease; }
.button--gold-solid:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(120, 88, 30, .3);
}

.project-edit-card {
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.project-edit-card:hover {
  transform: translateY(-3px);
  border-color: rgba(124, 92, 36, .32);
  box-shadow: 0 18px 40px rgba(40, 45, 40, .12);
}
.project-edit-card__media img { transition: transform .5s cubic-bezier(.22,1,.3,1); }
.project-edit-card:hover .project-edit-card__media img { transform: scale(1.04); }

/* --- 5. the 144px "VP" is now an objectives panel ------------------------ */

.project-objectives {
  align-self: center;
  display: grid;
  gap: 18px;
  padding: clamp(26px, 2.4vw, 34px);
  border: 1px solid rgba(230, 192, 120, .22);
  border-radius: 4px;
  background: rgba(255, 255, 255, .035);
}

.project-objectives__label {
  margin: 0;
  color: #e6c078;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.project-objectives ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 14px; }

.project-objectives li {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(244, 239, 230, .09);
}
.project-objectives li:last-child { padding-bottom: 0; border-bottom: 0; }

.project-objectives li i {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #e6c078;
  border: 1px solid rgba(230, 192, 120, .3);
  font-size: 15px;
}

.project-objectives li span { display: grid; gap: 4px; }
.project-objectives li strong {
  color: #f6f1e6;
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -.01em;
}
.project-objectives li span {
  color: rgba(244, 239, 230, .64);
  font-size: 13px;
  line-height: 1.6;
}

@media (max-width: 900px) {
  .project-objectives { align-self: stretch; }
}

/* --- 6. the real height drivers were the fixed image heights ------------- */

.projects-hub-hero__copy { gap: clamp(20px, 2vw, 28px); }
.projects-hub-hero h1 { line-height: .92; }

.project-lens__intro { gap: 14px; }
.project-lens__criteria { gap: clamp(16px, 1.6vw, 22px); }
.project-lens__criteria article { padding: clamp(20px, 1.9vw, 26px); }
.project-lens__criteria article p { font-size: 13px; line-height: 1.58; }

.project-feature__copy { gap: 14px; }

.project-edit__header { margin-bottom: clamp(24px, 2.4vw, 34px); }

.project-conversation__copy { gap: 16px; }

/* footer was 831px — tighten without losing the structure */
.vp-footer__cta { padding-block: clamp(38px, 3.6vw, 52px) clamp(32px, 3vw, 42px); }
.vp-footer__main { padding-block: clamp(32px, 3vw, 44px) clamp(24px, 2.4vw, 34px); }
.vp-footer__pitch { margin-top: 16px; font-size: 13px; }
.vp-footer__social { margin-top: 18px; }
.vp-footer__statement { padding-block: 20px; }
.vp-action { padding: 12px 16px; }
.vp-action__icon { width: 38px; height: 38px; font-size: 15px; }

/* the images are height:100% of their container, so the container min-height
   is what actually sets the section height */
.projects-hub-hero__media { min-height: clamp(340px, 30vw, 430px); }
.project-feature__media   { min-height: clamp(320px, 28vw, 400px); }
.project-edit-card__media { min-height: clamp(200px, 17vw, 235px); }

@media (max-width: 900px) {
  .projects-hub-hero__media { min-height: 300px; }
  .project-feature__media   { min-height: 290px; }
  .project-edit-card__media { min-height: 220px; }
}

/* --- 7. last of the low-contrast labels --------------------------------- */

.project-lens__criteria article > span { color: #5c7076; font-weight: 800; }
.project-wa-link span { color: #2a3d33; font-weight: 800; }
.project-edit-card__body > span { color: #6f5119; }
.vp-footer__wordmark small { color: rgba(244, 239, 230, .72); }
.vp-footer__statement > span { color: rgba(244, 239, 230, .6); }

/* --- 8. trim the two tallest remaining sections ------------------------- */

.project-lens__criteria article h3 { margin: 8px 0 6px; }
.project-lens__criteria article i { font-size: 17px; }
.project-edit__grid { gap: clamp(18px, 1.8vw, 26px); }
.project-conversation__copy h2 { line-height: .92; }

/* the WhatsApp label needs opposite treatment on the dark feature panels —
   the flat dark colour above was landing dark-on-dark there */
.project-feature--dark .project-wa-link span,
.project-feature--dark .text-button span,
.project-conversation .project-wa-link span { color: #f2ecdf; }
.project-feature--dark .project-wa-link,
.project-feature--dark .text-button {
  border-color: rgba(127, 224, 147, .34);
  background: rgba(127, 224, 147, .08);
}
.project-feature--dark .project-wa-link:hover,
.project-feature--dark .text-button:hover {
  border-color: rgba(127, 224, 147, .7);
  background: rgba(127, 224, 147, .16);
}

/* nav descriptor on the light projects header */
.projects-page .site-nav[data-scrolled="false"] .brand__descriptor { color: rgba(30, 43, 48, .9); }

/* ==========================================================================
   WHY DUBAI PAGE — height, contrast, icons
   ========================================================================== */

/* --- 1. page was 7,300px / 8.1 screens. Portrait images were stretching
       their grid rows to 900px+. Cap them. ------------------------------- */

.invest-hero { min-height: clamp(560px, 62vh, 660px); }
.invest-hero__frame { inset: 26px; }

.why-story { padding-block: clamp(48px, 4.4vw, 62px); }
.why-story__image img { height: clamp(300px, 26vw, 360px); }

.why-resilience { min-height: 0; }
.why-resilience__copy { padding-block: clamp(40px, 3.8vw, 58px); }

.why-benefits { padding-block: clamp(48px, 4.4vw, 62px); }
.why-benefits__visuals img { height: clamp(170px, 15vw, 200px); }
.why-benefits__grid { gap: clamp(14px, 1.4vw, 20px); }
.why-benefits__grid article { padding-block: clamp(14px, 1.4vw, 20px); }

.why-proof__copy { padding-block: clamp(40px, 3.8vw, 58px); }

.why-visual { min-height: clamp(380px, 40vh, 460px); }

.why-principles { padding-block: clamp(52px, 4.8vw, 68px); }
.why-principles__list { gap: clamp(18px, 1.8vw, 26px); }
.why-principles__list article { padding: clamp(20px, 2vw, 28px); }
.why-guide-cta { margin-top: 30px; padding: 22px 26px; }

.contact-suite { padding-block: clamp(52px, 4.8vw, 68px); }

/* --- 2. "--light" is dark (#1a1915) and it sits on the DARK panels,
       so this link was invisible at 1.01:1 ------------------------------- */

.why-resilience__copy .editorial-link,
.why-visual__copy .editorial-link,
.project-feature--dark .editorial-link,
.projects-intro .editorial-link {
  color: #f2ecdf;
  border-color: rgba(242, 236, 223, .42);
}
.why-resilience__copy .editorial-link:hover,
.why-visual__copy .editorial-link:hover,
.project-feature--dark .editorial-link:hover,
.projects-intro .editorial-link:hover {
  color: #ecc888;
  border-color: rgba(236, 200, 136, .8);
}

/* --- 3. remaining low-contrast labels on this page ---------------------- */

.why-proof__note { color: #5f5646; font-weight: 600; }
.why-proof__stat span,
.why-proof__stat strong { color: #6f5119; }
.why-benefits__grid article > span { color: #6f5119; font-weight: 800; }
.why-timeline span { color: #6f5119; }

/* text sitting on the photo panels needs a scrim, not a colour change */
.why-visual__copy {
  padding: clamp(30px, 3vw, 46px);
  background: linear-gradient(180deg, transparent, rgba(10, 13, 12, .55) 34%, rgba(8, 10, 9, .88));
}
.why-visual__copy p,
.why-visual__copy span { color: rgba(248, 244, 236, .92); }

/* --- 4. buttons and the guide band --------------------------------------- */

.why-guide-cta { transition: transform .3s ease, background .3s ease, border-color .3s ease; }
.why-guide-cta:hover { border-color: rgba(221, 185, 111, .55); }
.why-guide-cta b { color: #e6c078; font-size: 11px; }
.why-guide-cta small { font-size: 10.5px; color: #e0bd75; }

.contact-suite__direct a {
  transition: transform .26s ease, border-color .26s ease, background .26s ease, box-shadow .26s ease;
}
.contact-suite__direct a:hover {
  transform: translateY(-2px);
  border-color: rgba(124, 92, 36, .45);
  background: rgba(255, 255, 255, .7);
  box-shadow: 0 12px 26px rgba(70, 52, 22, .12);
}
.contact-suite__direct-icon i { font-size: 19px; line-height: 1; }
.contact-suite__direct small { color: #6f5119; font-size: 10.5px; font-weight: 800; }

/* the hero is display:block, so min-height did nothing — the media element
   was setting its own height. Pin the section and let the media fill it. */
.invest-hero {
  height: clamp(540px, 62vh, 640px);
  min-height: 0;
  overflow: hidden;
}
.invest-hero__media,
.invest-hero__media img { height: 100%; }

/* the benefits grid: 8 cards at 220-270px each was doing the damage */
.why-benefits__grid article { padding-block: 14px; }
.why-benefits__grid article h3 { margin: 6px 0 4px; }
.why-benefits__grid article p { font-size: 13px; line-height: 1.55; }
.why-benefits__visuals { margin-block: clamp(20px, 2vw, 28px); }
.why-benefits__visuals img { height: clamp(150px, 13vw, 175px); }
.why-benefits__head { margin-bottom: clamp(18px, 1.8vw, 26px); }
.section-meta { margin-bottom: 14px; }

/* principles: the heading block alone was 262px */
.why-principles > div:first-child { margin-bottom: clamp(22px, 2.2vw, 32px); }
.why-principles h2 { line-height: .94; }
.why-principles__list article h3 { font-size: clamp(17px, 1.3vw, 20px); margin-bottom: 6px; }
.why-principles__list article p { font-size: 13px; line-height: 1.58; }

.why-story__layout { margin-bottom: clamp(24px, 2.4vw, 34px); }
.why-timeline { gap: clamp(16px, 1.6vw, 24px); }
.why-benefits__grid article { min-height: 0; }

/* ==========================================================================
   WHY DUBAI — corrections to the previous pass
   The max-height approach shrank the figures but the grid rows are sized by
   the copy column, so it created dead space instead of removing height.
   The right fix is to shorten the COPY and let the figures fill the row.
   ========================================================================== */

/* --- A. hero: pinning the height pushed the h1 under the fixed nav ------- */

.invest-hero {
  height: auto;
  min-height: clamp(560px, 68vh, 680px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.invest-hero__media,
.invest-hero__shade,
.invest-hero__frame,
.grain { position: absolute; }
.invest-hero__media,
.invest-hero__media img { height: 100%; width: 100%; object-fit: cover; }
.invest-hero__content {
  position: relative;
  z-index: 3;
  width: 100%;
  padding: calc(var(--nav-clear) + 26px) var(--page-pad) clamp(38px, 3.6vw, 54px);
}
.invest-hero__frame { inset: 20px; }

/* --- B. figures fill their row again — no dead space -------------------- */

.why-resilience > figure,
.why-proof figure { align-self: stretch; height: 100%; overflow: hidden; }
.why-resilience > figure img,
.why-proof figure img { height: 100%; width: 100%; object-fit: cover; }

/* height now comes off the copy column instead */
.why-resilience__copy { padding-block: clamp(34px, 3.2vw, 48px); }

.why-proof__copy { padding-block: clamp(34px, 3.2vw, 48px); }
.why-proof__stats { gap: 0; }
.why-proof__stats > * { padding-block: clamp(14px, 1.4vw, 20px); }
.why-proof__stat strong { font-size: clamp(30px, 2.8vw, 42px); line-height: 1; }
.why-proof__note { margin-top: 14px; font-size: 11.5px; line-height: 1.55; }

/* --- C. principles heading was in column 2, leaving 650px of empty left -- */

.why-principles > div:first-child {
  display: block;
  max-width: 900px;
}
.why-principles > div:first-child h2 {
  margin-top: 12px;
  max-width: 16ch;
}

/* --- D. the "They live here" panel was a hard-edged black rectangle ----- */

.why-visual { min-height: clamp(420px, 46vh, 520px); }

.why-visual__shade {
  background: linear-gradient(100deg, rgba(9, 12, 11, .88) 0%, rgba(9, 12, 11, .74) 30%, rgba(9, 12, 11, .28) 56%, transparent 74%);
}

.why-visual__copy {
  max-width: min(620px, 54%);
  padding: clamp(30px, 3vw, 46px) clamp(28px, 2.6vw, 40px) clamp(30px, 3vw, 46px) var(--page-pad);
  background: none;
}
.why-visual__copy h2 { margin: 10px 0 14px; line-height: .95; }
.why-visual__copy p { color: rgba(248, 244, 236, .9); }
.why-visual__copy > p:first-child { color: #ecc888; font-weight: 800; letter-spacing: .16em; }

@media (max-width: 900px) {
  .why-visual__copy { max-width: none; }
  .why-visual__shade { background: linear-gradient(180deg, rgba(9,12,11,.5), rgba(9,12,11,.86)); }
  .invest-hero__content { padding-top: calc(var(--nav-clear) + 18px); }
}

/* an older rule sets bottom:70px, which on a now-relative element pulls the
   content UP 70px and back under the nav */
.invest-hero__content { bottom: auto; top: auto; }

/* Take the photos out of layout flow. The figure keeps the grid cell, the
   image fills it absolutely, so the ROW is sized purely by the copy column —
   no dead space, and portrait images can no longer stretch the section. */
.why-resilience > figure,
.why-proof figure {
  position: relative;
  height: auto;
  min-height: clamp(320px, 30vw, 400px);
  overflow: hidden;
}
.why-resilience > figure img,
.why-proof figure img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* bring the copy columns in so the rows are shorter */
.why-proof__stats { gap: 0 clamp(20px, 2vw, 34px); }
.why-proof__stat strong { font-size: clamp(28px, 2.5vw, 38px); }
.why-proof__stat span { font-size: 10.5px; }

/* --- principles heading was wrapping to 4 lines and leaving the right
       half of the row empty --------------------------------------------- */
.why-principles > div:first-child h2 { max-width: 26ch; }

/* --- hero CTAs sat at 68% white over the bright part of the sky --------- */
.invest-hero__content a {
  color: #fffaf0;
  text-shadow: 0 1px 12px rgba(0, 0, 0, .55);
  border-bottom-color: rgba(255, 250, 240, .55);
}
.invest-hero__content a:hover {
  color: #f0d79b;
  border-bottom-color: rgba(240, 215, 155, .9);
}
.invest-hero__content p { text-shadow: 0 1px 14px rgba(0, 0, 0, .5); }
.invest-hero__content > p:first-child { color: #ecc888; }

/* The nav floats over a dark hero on most pages, so the descriptor must be
   light by default. Only the pages with a light nav shell get the dark one. */
.brand__descriptor { color: rgba(248, 243, 233, .8); }

.projects-page .site-nav[data-scrolled="false"] .brand__descriptor,
.contact-page .site-nav[data-scrolled="false"] .brand__descriptor { color: rgba(30, 43, 48, .9); }
/* contact page has its own descriptor rule at 4.46:1 — just over the line */
.contact-page .site-nav .brand__descriptor { color: rgba(30, 43, 48, .9); }
/* the contact page uses .contact-page-premium, not .contact-page */
.contact-page-premium .site-nav[data-scrolled="false"] .brand__descriptor { color: rgba(30, 43, 48, .9); }

/* ==========================================================================
   REVISION 7 — fixes for the last round's misses
   ========================================================================== */

/* --- 1. captions sit BELOW the photo on a cream background, so white was
       invisible. They were also 9px. --------------------------------------- */

.why-benefits__visuals figcaption,
.why-story__image figcaption span,
.why-proof figcaption span {
  color: #574d3d;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-shadow: none;
}

.why-story__image figcaption {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 2px 0;
}
.why-story__image figcaption span:last-child { color: #7a6b52; }

/* --- 2. "People do not only invest in Dubai" was clipped.
       The copy is absolutely positioned with top:-52px inside an
       overflow:hidden section, so the first line was cut off. --------------- */

.why-visual {
  position: relative;
  display: flex;
  align-items: center;
  min-height: clamp(430px, 48vh, 540px);
  overflow: hidden;
}
.why-visual > img,
.why-visual__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.why-visual > img { object-fit: cover; }

.why-visual__copy {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  z-index: 3;
  max-width: min(620px, 56%);
  padding: clamp(34px, 3.4vw, 52px) clamp(28px, 2.6vw, 40px) clamp(34px, 3.4vw, 52px) var(--page-pad);
}

/* --- 3. the stats section: too tall, and the photo was mostly sky --------- */

.why-proof__copy { padding-block: clamp(28px, 2.6vw, 40px); }
.why-proof figure img { object-position: center 62%; }
.why-proof__stats > * { padding-block: clamp(11px, 1.1vw, 15px); }
.why-proof__copy > p { margin-bottom: 4px; }
.why-proof h2 { line-height: .95; margin-bottom: 10px; }

.why-story__image img { object-position: center 58%; }

/* --- 4. the "Next / Buyer Guide" band was a wide empty slab -------------- */

.why-guide-cta {
  width: min(1240px, 100%);
  padding: 20px 26px;
  gap: 24px;
  border-radius: 3px;
  border: 1px solid rgba(230, 192, 120, .2);
}
.why-guide-cta > span { display: block; }
.why-guide-cta small { margin-bottom: 4px; }
.why-guide-cta strong { font-size: clamp(22px, 1.7vw, 28px); line-height: 1.1; }
.why-guide-cta p { margin: 5px 0 0; font-size: 12.5px; color: rgba(243, 237, 228, .68); }
.why-guide-cta b {
  padding: 11px 20px;
  border: 1px solid rgba(230, 192, 120, .48);
  border-radius: 999px;
  transition: background .26s ease, color .26s ease, border-color .26s ease;
}
.why-guide-cta:hover b { color: #14150f; border-color: transparent; background: linear-gradient(145deg, #f0d091, #cfa24d); }

/* --- 5. the call / WhatsApp cards --------------------------------------- */

.contact-suite__direct { gap: 14px; }

.contact-suite__direct a {
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 4px;
  border: 1px solid rgba(124, 92, 36, .2);
  background: rgba(255, 255, 255, .5);
}

.contact-suite__direct-icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 0;
}
.contact-suite__direct a[href^="tel"] .contact-suite__direct-icon {
  color: #14150f;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
}
.contact-suite__direct-icon i { font-size: 18px; line-height: 1; }

.contact-suite__direct a > span:last-child { display: grid; gap: 2px; min-width: 0; }
.contact-suite__direct strong {
  font-family: var(--font-sans);
  font-size: clamp(15px, 1.15vw, 17px);
  font-weight: 650;
  letter-spacing: -.01em;
  white-space: nowrap;
}
.contact-suite__direct small { color: #6f5119; font-size: 10px; font-weight: 800; letter-spacing: .18em; }

@media (max-width: 900px) {
  .why-visual__copy { max-width: none; padding-right: var(--page-pad); }
  .contact-suite__direct strong { white-space: normal; }
}

/* the careers kicker is a mid gold (#cda657) which works on the two dark
   sections but sits at ~2:1 on the two light ones */
.career-agent-support .career-image-kicker,
.career-image-open .career-image-kicker { color: #7a5a24; }

/* contact page kicker was faint at 3.6:1 */
.contact-suite__intro .section-kicker,
.contact-suite__intro .section-kicker span { color: #6f5119; }

/* ==========================================================================
   BUYER GUIDE
   ========================================================================== */

/* the h1 was line-height .84 on a ~94px font, so the italic ascenders and
   the dot on "brief" rode up into the line above */
.guide-hero h1 { line-height: 1.0; }
.guide-hero h1 em { display: inline-block; }

@media (max-width: 820px) {
  .guide-hero h1 { line-height: 1.02; }
}

/* process cards: icon + number on one row */
.guide-process__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.guide-process__icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #7a5a24;
  border: 1px solid rgba(122, 90, 36, .26);
  background: linear-gradient(150deg, rgba(255, 255, 255, .9), rgba(246, 238, 224, .6));
  font-size: 16px;
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .45);
  transition: transform .3s ease, color .3s ease, border-color .3s ease;
}

.guide-process__head b {
  color: #8a7550;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .18em;
}

.guide-process article:hover .guide-process__icon {
  transform: translateY(-2px);
  color: #62471a;
  border-color: rgba(122, 90, 36, .5);
}

.guide-process article h3 { margin-top: 0; }

/* --- buyer guide body lists were 14px with the default 1.6 leading and
       plenty of vertical room going unused --------------------------------- */

.guide-module li,
.guide-two-col li,
.guide-callout li {
  font-size: 15.5px;
  line-height: 1.75;
  letter-spacing: .004em;
  word-spacing: .05em;
  margin-bottom: 14px;
}

.guide-module li:last-child,
.guide-two-col li:last-child { margin-bottom: 0; }

.guide-module ul,
.guide-two-col ul { padding-left: 20px; }

.guide-module li::marker,
.guide-two-col li::marker { color: #a08549; }

.guide-two-col > div > p,
.guide-module > p:not(.guide-module__number) {
  font-size: 15.5px;
  line-height: 1.75;
  word-spacing: .04em;
}

/* keep the icon circle winning even if the cascade order changes again */
i.guide-process__icon { display: grid; place-items: center; }

/* ==========================================================================
   BUYER GUIDE — residency stat card
   ========================================================================== */

/* the figure was top-aligned in a tall panel, leaving a big gap under it */

/* ==========================================================================
   ABOUT — team roles replace the empty portrait placeholders
   ========================================================================== */

.meet-team { padding-block: clamp(52px, 4.8vw, 68px); }
.meet-team__header { margin-bottom: clamp(26px, 2.6vw, 38px); }
.meet-team__header h2 { margin-top: 12px; line-height: .96; max-width: 22ch; }

.meet-team__roles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 1.6vw, 24px);
}

.team-role {
  position: relative;
  padding: clamp(24px, 2.2vw, 32px);
  border: 1px solid rgba(124, 92, 36, .18);
  border-radius: 3px;
  background: linear-gradient(160deg, rgba(255, 255, 255, .72), rgba(248, 243, 234, .5));
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.team-role:hover {
  transform: translateY(-3px);
  border-color: rgba(124, 92, 36, .38);
  box-shadow: 0 16px 34px rgba(70, 52, 22, .1);
}

.team-role__icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #7a5a24;
  border: 1px solid rgba(122, 90, 36, .26);
  background: linear-gradient(150deg, #fff, rgba(246, 238, 224, .7));
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .5);
  font-size: 17px;
}

.team-role__num {
  position: absolute;
  top: clamp(24px, 2.2vw, 32px);
  right: clamp(24px, 2.2vw, 32px);
  color: #a08549;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
}

.team-role h3 {
  margin: 18px 0 8px;
  font-size: clamp(18px, 1.35vw, 21px);
  line-height: 1.2;
  letter-spacing: -.01em;
}

.team-role p {
  margin: 0;
  color: #5e5447;
  font-size: 13.5px;
  line-height: 1.62;
}

@media (max-width: 1024px) { .meet-team__roles { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px)  { .meet-team__roles { grid-template-columns: 1fr; } }

/* ==========================================================================
   ABOUT — trim the section stack
   ========================================================================== */

.company-about-hero { min-height: clamp(520px, 58vh, 620px); padding-top: calc(var(--nav-clear) + 30px); padding-bottom: clamp(40px, 3.8vw, 56px); }
.company-story    { padding-block: clamp(50px, 4.6vw, 66px); }
.company-process  { min-height: 0; padding-block: clamp(50px, 4.6vw, 66px); }
.founder-profile  { padding-block: clamp(52px, 4.8vw, 70px); }
.work-together    { padding-block: clamp(54px, 5vw, 72px); }


/* --- residency card: the AED figure was top-aligned in a tall panel ------ */

.guide-residency { align-items: center; }

.guide-residency > strong {
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding-block: clamp(18px, 1.8vw, 28px);
}

.guide-residency > strong::before {
  content: "\f53a";                      /* money-bill-wave */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 30px;
  line-height: 1;
  color: #cfa24d;
  letter-spacing: 0;
}

/* --- founder portrait is now a tall image; stop it stretching the row ---- */

.founder-profile { align-items: center; }

.founder-profile__portrait figure {
  position: relative;
  margin: 0;
  min-height: clamp(420px, 40vw, 540px);
  max-height: clamp(460px, 46vw, 620px);
  overflow: hidden;
}

.founder-profile__portrait figure img {
  width: 100%;
  height: 100%;
  min-height: clamp(420px, 40vw, 540px);
  object-fit: cover;
  object-position: center 18%;
  display: block;
}

.founder-profile__portrait figcaption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  padding: 44px 22px 18px;
  background: linear-gradient(180deg, transparent, rgba(8, 10, 8, .86));
}
.founder-profile__portrait figcaption strong { color: #fffaf0; }
.founder-profile__portrait figcaption span { color: #e3c68a; font-size: 10.5px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; text-align: right; }

/* founder caption: the role was wrapping to two cramped lines */
.founder-profile__portrait figcaption strong { font-size: clamp(19px, 1.5vw, 23px); }
.founder-profile__portrait figcaption span { max-width: 22ch; line-height: 1.45; text-align: right; }

/* the header lost its right-hand paragraph, so let the heading breathe */
.meet-team__header { display: block; }
.meet-team__header h2 { max-width: 20ch; }

/* ==========================================================================
   ABOUT — visual pass
   ========================================================================== */

/* --- 1. hero principle pills were 8px at 72% opacity with a 0.22 border --- */

.company-about-hero__principles { gap: 12px; }

.company-about-hero__principles span {
  padding: 11px 20px;
  border-radius: 999px;
  color: #fdf6e6;
  border: 1px solid rgba(226, 189, 114, .5);
  background: linear-gradient(150deg, rgba(226, 189, 114, .16), rgba(226, 189, 114, .06));
  box-shadow: inset 0 1px 0 rgba(255, 245, 224, .16);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  transition: transform .26s ease, background .26s ease, border-color .26s ease, box-shadow .26s ease;
}

.company-about-hero__principles span:hover {
  transform: translateY(-2px);
  border-color: rgba(240, 208, 145, .85);
  background: linear-gradient(150deg, rgba(240, 208, 145, .3), rgba(226, 189, 114, .14));
  box-shadow: 0 10px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 250, 240, .25);
}

/* --- 2. the caption was a full-width grey slab across the photo.
       Make it a floating frosted card instead. ---------------------------- */

.company-about-hero__media { position: relative; overflow: hidden; }
.company-about-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; }

.company-about-hero__media figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 16px 22px;
  border-radius: 4px;
  border: 1px solid rgba(255, 248, 235, .16);
  background: rgba(20, 22, 19, .42);
  -webkit-backdrop-filter: blur(14px) saturate(1.2);
  backdrop-filter: blur(14px) saturate(1.2);
  box-shadow: 0 18px 40px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 250, 240, .12);
}

.company-about-hero__media figcaption span {
  color: #fffaf0;
  font-family: var(--font-display);
  font-size: clamp(19px, 1.5vw, 24px);
  font-weight: 400;
  letter-spacing: -.01em;
}

.company-about-hero__media figcaption small {
  color: #ecc888;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  white-space: nowrap;
}

/* --- 3. the story section used THREE separate grids with different column
       widths, so the eyebrow, headline and copy never lined up ------------ */

.company-story__eyebrow,
.company-story__headline,
.company-story__copy {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 3vw, 56px);
  align-items: start;
}

.company-story__eyebrow { margin-bottom: 14px; }
.company-story__headline { margin-bottom: clamp(20px, 2vw, 30px); }
.company-story__headline h2 { margin: 0; max-width: 18ch; line-height: .98; }
.company-story__aside { margin: 0; align-self: end; max-width: 40ch; }
.company-story__copy p { margin: 0; max-width: 46ch; }

@media (max-width: 900px) {
  .company-story__eyebrow,
  .company-story__headline,
  .company-story__copy { grid-template-columns: 1fr; gap: 16px; }
}

/* --- 4. founder section: centring pushed the portrait 118px down and the
       padding added 69 on top of that ------------------------------------ */

.founder-profile {
  align-items: start;
  padding-top: clamp(44px, 4vw, 58px);
}
.founder-profile__portrait { margin-top: 0; }
.founder-profile__story > .section-kicker { margin-top: 0; }
.founder-profile__story h2 { margin-top: 10px; line-height: .98; }

/* --- 5. "why that background matters" cards were transparent and flat ---- */

.founder-relevance-grid { gap: clamp(16px, 1.6vw, 24px); }

.founder-relevance-grid > * {
  position: relative;
  padding: clamp(24px, 2.2vw, 30px);
  border: 1px solid rgba(226, 189, 114, .2);
  border-radius: 3px;
  background: linear-gradient(158deg, rgba(255, 250, 240, .07), rgba(255, 250, 240, .015));
  box-shadow: inset 0 1px 0 rgba(255, 250, 240, .08);
  transition: transform .3s ease, border-color .3s ease, background .3s ease, box-shadow .3s ease;
}

.founder-relevance-grid > *:hover {
  transform: translateY(-3px);
  border-color: rgba(240, 208, 145, .5);
  background: linear-gradient(158deg, rgba(255, 250, 240, .12), rgba(255, 250, 240, .03));
  box-shadow: 0 18px 38px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 250, 240, .16);
}

.founder-relevance-grid i {
  color: #14150f;
  border: 0;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .32);
}

.founder-relevance-grid h3 { color: #fffaf0; }
.founder-relevance-grid p { color: rgba(244, 239, 230, .74); }

/* the copy block had "margin: 34px 0 0 auto", pushing it to the right edge
   while the eyebrow and headline stayed left — the rows never shared an edge */
.company-story__copy {
  width: 100%;
  margin: clamp(6px, 0.8vw, 14px) 0 0 0;
}

/* the heading was wrapping to four lines at 18ch */
.company-story__headline h2 { max-width: 26ch; line-height: .96; }

/* a decorative "V/02" was appended inline after the heading, so it read as
   stray text sitting next to the full stop. Moved to the corner of the row. */
.company-story__headline { position: relative; }
.company-story__headline h2::after {
  position: absolute;
  top: 4px;
  right: 0;
  margin-left: 0;
}

/* the copy column is 514px but the h1 renders at ~80px, so "A clearer point
   of view" wrapped to four lines with "view" orphaned. Give the copy more of
   the row and bring the size down to hold the intended two-line break. */
.company-about-hero {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: clamp(32px, 4vw, 64px);
}
.company-about-hero h1 { font-size: clamp(38px, 4vw, 62px); line-height: 1.0; }
.company-about-hero__copy > p { max-width: 46ch; }

@media (max-width: 980px) {
  .company-about-hero { grid-template-columns: 1fr; }
}

/* ==========================================================================
   REVISION 12
   ========================================================================== */

/* --- 1. the first relevance card had padding-left:0 from a :first-child
       rule, so its icon, heading and copy sat on top of the border.
       Higher specificity so this actually lands. ------------------------- */

.founder-relevance-grid > article,
.founder-relevance-grid > article:first-child,
.founder-relevance-grid > article:last-child {
  padding: clamp(24px, 2.2vw, 30px);
  padding-top: clamp(24px, 2.2vw, 30px);
  border-left: 1px solid rgba(226, 189, 114, .2);
  border-right: 1px solid rgba(226, 189, 114, .2);
}

/* the number was pinned at top:28px/right:18px, ignoring the new padding */
.founder-relevance-grid > article > span {
  top: clamp(24px, 2.2vw, 30px);
  right: clamp(24px, 2.2vw, 30px);
}

/* --- 2. the circle is .founder-relevance-icon (a div). My gradient was
       landing on the 15px <i> instead, which is why the icons were
       unreadable. Paint the circle, keep the glyph dark and larger. ------ */

.founder-relevance-grid i { background: none; box-shadow: none; color: inherit; }

.founder-relevance-icon {
  width: 50px;
  height: 50px;
  margin-bottom: 18px;
  color: #14150f;
  border: 0;
  background: linear-gradient(145deg, #f4d79c, #cfa24d);
  box-shadow: 0 8px 20px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 250, 240, .5);
}

.founder-relevance-icon i { font-size: 20px; line-height: 1; color: #14150f; }

.founder-relevance-grid > article:hover .founder-relevance-icon {
  background: linear-gradient(145deg, #fbe4b4, #dcb15c);
}

/* --- 3. team role cards: neon gold edge -------------------------------- */

.team-role {
  border: 1px solid rgba(198, 154, 74, .55);
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .16),
              0 0 18px rgba(207, 162, 77, .16),
              inset 0 1px 0 rgba(255, 255, 255, .6);
}

.team-role:hover {
  border-color: rgba(226, 180, 92, .95);
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .4),
              0 0 26px rgba(215, 168, 78, .38),
              0 16px 34px rgba(70, 52, 22, .12),
              inset 0 1px 0 rgba(255, 255, 255, .75);
}

.team-role__icon {
  border-color: rgba(198, 154, 74, .55);
  box-shadow: 0 0 14px rgba(207, 162, 77, .2), inset 0 0 0 4px rgba(255, 255, 255, .5);
}

/* --- 4. story: one paragraph left, so drop the two-column grid and pull
       the value cards up ------------------------------------------------- */

.company-story__copy {
  grid-template-columns: 1fr;
  margin-top: clamp(4px, 0.6vw, 10px);
}
.company-story__copy p { max-width: 58ch; font-size: 16px; line-height: 1.72; }
.company-story__headline { margin-bottom: clamp(14px, 1.4vw, 22px); }
.company-values { margin-top: clamp(28px, 2.8vw, 44px); }

/* "Property decisions deserve" is one line in the markup but 26ch forced it
   to break after "decisions" */
.company-story__headline h2 { max-width: min(1000px, 100%); }

/* the headline row was still a 2-column grid, so the h2 only got 606px of
   the 1256 available and broke after "decisions". The second column has no
   content now (the V/02 mark is absolutely positioned). */
.company-story__headline { grid-template-columns: 1fr; }
.company-story__headline h2 { grid-column: 1 / -1; }

/* ==========================================================================
   CAREERS — the apply card was 396x660 with 82px of content in it
   ========================================================================== */

.career-image-open { align-items: center; }

.career-apply {
  align-self: center;
  display: grid;
  gap: 18px;
  padding: clamp(26px, 2.4vw, 34px);
  border: 1px solid rgba(198, 154, 74, .5);
  border-radius: 4px;
  background: linear-gradient(160deg, rgba(255, 255, 255, .78), rgba(248, 243, 234, .55));
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .14),
              0 18px 40px rgba(70, 52, 22, .1),
              inset 0 1px 0 rgba(255, 255, 255, .7);
}

.career-apply__label {
  margin: 0;
  color: #7a5a24;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.career-apply__list { margin: 0; padding: 0; list-style: none; display: grid; gap: 14px; }

.career-apply__list li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(124, 92, 36, .14);
  font-size: 13px;
}
.career-apply__list li:last-child { padding-bottom: 0; border-bottom: 0; }

.career-apply__list i {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #14150f;
  background: linear-gradient(145deg, #f4d79c, #cfa24d);
  font-size: 13px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5);
}

.career-apply__list span { display: grid; gap: 3px; }
.career-apply__list strong { color: #1f2824; font-size: 14px; font-weight: 700; }
.career-apply__list span { color: #5e5447; line-height: 1.55; }

.career-apply__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 20px;
  border-radius: 3px;
  color: #14150f;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: transform .26s ease, box-shadow .26s ease, background .26s ease;
}
.career-apply__cta:hover {
  transform: translateY(-2px);
  background: linear-gradient(145deg, #f8e0ad, #dcb15c);
  box-shadow: 0 14px 30px rgba(120, 88, 30, .3);
}

.career-apply__wa {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 12px 18px;
  border-radius: 3px;
  border: 1px solid rgba(63, 156, 82, .34);
  background: rgba(63, 156, 82, .07);
  color: #2a3d33;
  font-size: 12px;
  font-weight: 700;
  transition: border-color .24s ease, background .24s ease, transform .24s ease;
}
.career-apply__wa i { color: #2f8442; font-size: 16px; }
.career-apply__wa:hover { transform: translateY(-2px); border-color: rgba(63,156,82,.66); background: rgba(63,156,82,.14); }

.career-apply__foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding-top: 16px;
  border-top: 1px solid rgba(124, 92, 36, .16);
}
.career-apply__foot a { display: flex; align-items: center; gap: 9px; color: #4a4235; font-size: 13px; font-weight: 600; }
.career-apply__foot a:hover { color: #7a5a24; }
.career-apply__foot i { color: #7a5a24; font-size: 14px; }
.career-apply__foot small { color: #8a7a5f; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }

/* trim the careers stack a little */
.career-image-hero  { min-height: clamp(520px, 60vh, 640px); }
.career-agent-support { padding-block: clamp(52px, 4.8vw, 70px); }
.career-image-open  { padding-block: clamp(52px, 4.8vw, 70px); }

@media (max-width: 900px) { .career-apply { align-self: stretch; } }

/* ==========================================================================
   CONTACT — the fields were hairline underlines at 22% opacity
   ========================================================================== */

.contact-brief input[type="text"],
.contact-brief input[type="email"],
.contact-brief input[type="tel"],
.contact-brief textarea,
.contact-suite input[type="text"],
.contact-suite input[type="email"],
.contact-suite input[type="tel"],
.contact-suite textarea {
  padding: 14px 16px;
  border: 1px solid rgba(67, 84, 92, .26);
  border-radius: 3px;
  background: rgba(255, 255, 255, .72);
  font-size: 15px;
  transition: border-color .24s ease, background .24s ease, box-shadow .24s ease;
}

.contact-brief input:hover,
.contact-brief textarea:hover,
.contact-suite input:hover,
.contact-suite textarea:hover { border-color: rgba(67, 84, 92, .45); }

.contact-brief input:focus,
.contact-brief textarea:focus,
.contact-suite input:focus,
.contact-suite textarea:focus {
  outline: none;
  border-color: rgba(180, 140, 62, .8);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(207, 162, 77, .16);
}

.contact-brief label,
.contact-suite label,
.contact-brief form > div > span,
.contact-brief .field-label {
  color: #4a5560;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .16em;
}

.contact-intro { padding-top: calc(var(--nav-clear) + 34px); padding-bottom: clamp(40px, 3.8vw, 56px); }
.contact-brief { padding-block: clamp(52px, 4.8vw, 70px); }
.contact-meet  { padding-block: clamp(48px, 4.4vw, 64px); }
/* grid items default to min-width:auto, which let the apply card blow past
   its 396px column */
.career-apply { min-width: 0; max-width: 100%; }
.career-apply__cta,
.career-apply__wa,
.career-apply__foot { min-width: 0; }
.career-apply__foot a span { overflow-wrap: anywhere; }
/* something upstream was computing grid-template-columns: 320px 360px on this
   card, laying its children out in two columns that overflowed the cell */
.career-apply.career-image-open__action {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-flow: row;
  justify-content: stretch;
  align-content: center;
  gap: 18px;
}
.career-apply.career-image-open__action > * { grid-column: 1; width: 100%; }

/* ==========================================================================
   RESPONSIVE — gaps found between the site's own breakpoints
   ========================================================================== */

/* --- 900px: several grids keep fixed px minimums between 820 and 1024, so
       their columns add up to more than the viewport ---------------------- */

@media (max-width: 1024px) {
  .founder-profile,
  .journal-entry,
  .career-image-open,
  .contact-brief__layout,
  .why-proof__layout,
  .why-story__layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .founder-profile__portrait figure { max-height: clamp(360px, 52vw, 460px); }
  .career-apply.career-image-open__action { max-width: 560px; }
}

/* grid and flex children default to min-width:auto, which is what lets them
   push past the viewport instead of shrinking */
.founder-profile > *,
.journal-entry > *,
.career-image-open > *,
.why-resilience > *,
.why-proof > *,
.company-story > *,
.hero > *,
.invest-hero > * { min-width: 0; }

/* the homepage hero media sat 32px wider than the viewport at 900px */
.hero__media,
.hero__media video,
.hero__media img { max-width: 100%; }

/* --- 320px: smallest phones still in use ------------------------------- */

@media (max-width: 359px) {
  :root { --page-pad: 16px; }
  .invest-hero__content { min-width: 0; padding-left: var(--page-pad); padding-right: var(--page-pad); }
  .invest-hero__media img,
  .why-resilience > figure img,
  .why-proof figure img { max-width: 100%; }
  .why-resilience,
  .why-proof__layout { grid-template-columns: minmax(0, 1fr); }
  .invest-hero__frame { inset: 12px; }
  h1 { font-size: clamp(30px, 9vw, 40px); }
}

/* ==========================================================================
   RESPONSIVE — clipped content found at mobile / tablet
   ========================================================================== */

/* the hero accent line is overflow:hidden with a line-height shorter than the
   font size, so the italic descenders in "seen with clarity." were cut off */
.hero-line { overflow: visible; }
.hero-line--accent { padding-bottom: .12em; }

/* the value cards carry a fixed 245px min-height with overflow:hidden, so at
   narrow widths the description was losing its last ~38px */
@media (max-width: 1024px) {
  .company-values article,
  .company-values--boutique article {
    min-height: 0;
    height: auto;
    overflow: visible;
  }
}

/* --- remaining sub-10px labels ----------------------------------------- */

.hero__eyebrow,
.hero__coordinates,
.partners__label,
.scroll-cue,
.guide-hero__content .section-kicker,
.guide-hero__content > p:first-child,
.guide-toc > p:first-child,
.guide-official > p:first-child,
.contact-suite__message > span,
.contact-suite__submit span,
.guide-costs span,
.project-panel__link--wa span { font-size: 11px; letter-spacing: .13em; }

.partner-wordmark small,
.project-logo-wordmark small { font-size: 9.5px; }

@media (max-width: 820px) {
  .hero__eyebrow,
  .hero__coordinates,
  .partners__label,
  .scroll-cue,
  .guide-toc > p:first-child,
  .guide-official > p:first-child { font-size: 11px; }
  .hero__coordinates { display: none; }   /* decorative, and it crowds phones */
}

/* the last of the 7-9px labels */
.about__figure span,
.release-rail__end span,
.release-rail__end,
.newsletter__stamp,
.contact-suite__form-grid > label > span,
.contact-suite__form-grid span,
.contact-suite__message span { font-size: 11px; letter-spacing: .12em; }

@media (max-width: 820px) {
  .about__figure span,
  .release-rail__end,
  .release-rail__end span,
  .newsletter__stamp { font-size: 11px; }
}

/* ==========================================================================
   CONTACT — the page was on a cold blue-grey palette while the rest of the
   site is warm cream + gold. Bring it onto the brand colours.
   ========================================================================== */

.contact-brief__form,
.contact-suite__form {
  background: linear-gradient(168deg, #fdfaf4 0%, #f8f3e9 100%);
  border: 1px solid rgba(150, 118, 62, .2);
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .12),
              0 26px 60px rgba(70, 52, 22, .09);
}

/* labels: warm gold-brown, not slate */
.contact-brief__form label,
.contact-brief__form > span,
.contact-suite__form label,
.contact-interest > p,
.contact-brief__form p:first-child,
.contact-suite__form-grid > label > span,
.contact-suite__form-grid span { color: #7a5a24; }

/* fields */
.contact-brief input[type="text"],
.contact-brief input[type="email"],
.contact-brief input[type="tel"],
.contact-brief textarea,
.contact-suite input[type="text"],
.contact-suite input[type="email"],
.contact-suite input[type="tel"],
.contact-suite textarea {
  border-color: rgba(150, 118, 62, .28);
  background: rgba(255, 253, 249, .9);
  color: #241f16;
}

.contact-brief input::placeholder,
.contact-brief textarea::placeholder,
.contact-suite input::placeholder,
.contact-suite textarea::placeholder { color: #9a8d76; }

.contact-brief input:hover,
.contact-brief textarea:hover,
.contact-suite input:hover,
.contact-suite textarea:hover { border-color: rgba(150, 118, 62, .5); background: #fffdf9; }

.contact-brief input:focus,
.contact-brief textarea:focus,
.contact-suite input:focus,
.contact-suite textarea:focus {
  border-color: #c69a4a;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(207, 162, 77, .2);
}

/* the "what are you looking for" tiles */
.contact-interest label {
  border: 1px solid rgba(150, 118, 62, .24);
  border-radius: 3px;
  background: rgba(255, 253, 249, .72);
  color: #3a332a;
  transition: border-color .24s ease, background .24s ease, transform .24s ease, box-shadow .24s ease;
}
.contact-interest label i { color: #a3803c; transition: color .24s ease; }
.contact-interest label:hover {
  transform: translateY(-2px);
  border-color: rgba(150, 118, 62, .55);
  background: #fffdf8;
  box-shadow: 0 10px 22px rgba(70, 52, 22, .1);
}
.contact-interest input:checked + label,
.contact-interest label:has(input:checked) {
  border-color: #c69a4a;
  background: linear-gradient(150deg, rgba(240, 208, 145, .28), rgba(240, 208, 145, .12));
  box-shadow: 0 0 0 1px rgba(198, 154, 74, .4), 0 10px 24px rgba(120, 88, 30, .14);
}
.contact-interest input:checked + label i,
.contact-interest label:has(input:checked) i { color: #7a5a24; }

/* submit */
.contact-brief button[type="submit"],
.contact-suite__submit {
  background: linear-gradient(145deg, #23291f, #14150f);
  border: 1px solid rgba(240, 208, 145, .28);
  transition: transform .26s ease, box-shadow .26s ease, background .26s ease;
}
.contact-brief button[type="submit"]:hover,
.contact-suite__submit:hover {
  transform: translateY(-2px);
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  color: #14150f;
  box-shadow: 0 16px 34px rgba(120, 88, 30, .3);
}
.contact-brief button[type="submit"]:hover span,
.contact-suite__submit:hover span { color: #14150f; }

/* --- the WhatsApp / Call / Email rows were flat grey ------------------- */

.contact-intro__channels { display: grid; gap: 12px; }

.contact-intro__channels > a {
  padding: 16px 20px;
  border: 1px solid rgba(150, 118, 62, .22);
  border-radius: 4px;
  background: linear-gradient(160deg, rgba(255, 253, 249, .9), rgba(248, 243, 233, .6));
  transition: transform .26s ease, border-color .26s ease, background .26s ease, box-shadow .26s ease;
}
.contact-intro__channels > a:hover {
  transform: translateX(3px);
  border-color: rgba(198, 154, 74, .62);
  background: #fffdf8;
  box-shadow: 0 14px 30px rgba(70, 52, 22, .12);
}

.contact-channel__icon {
  width: 46px;
  height: 46px;
  color: #14150f;
  border: 0;
  background: linear-gradient(145deg, #f4d79c, #cfa24d);
  box-shadow: 0 6px 16px rgba(120, 88, 30, .24), inset 0 1px 0 rgba(255, 255, 255, .5);
}
.contact-intro__channels > a:first-child .contact-channel__icon {
  color: #0d2116;
  background: linear-gradient(145deg, #7fe093, #3f9c52);
}
.contact-channel__icon i { font-size: 18px; }

.contact-intro__channels small { color: #7a5a24; font-weight: 800; letter-spacing: .18em; }
.contact-intro__channels strong { color: #241f16; }
.contact-intro__channels .arrow,
.contact-intro__channels > a > span:last-child { color: #a3803c; }

/* the visible tile is the <span> inside the label, not the label itself */
.contact-interest label span {
  border: 1px solid rgba(150, 118, 62, .24);
  border-radius: 3px;
  background: rgba(255, 253, 249, .8);
  color: #3a332a;
  transition: border-color .24s ease, background .24s ease, transform .24s ease, box-shadow .24s ease;
}
.contact-interest label span i { color: #a3803c; transition: color .24s ease; }

.contact-interest label:hover span {
  transform: translateY(-2px);
  border-color: rgba(150, 118, 62, .55);
  background: #fffdf8;
  box-shadow: 0 10px 22px rgba(70, 52, 22, .1);
}

.contact-interest input:checked + span {
  border-color: #c69a4a;
  background: linear-gradient(150deg, rgba(240, 208, 145, .32), rgba(240, 208, 145, .14));
  box-shadow: 0 0 0 1px rgba(198, 154, 74, .45), 0 10px 24px rgba(120, 88, 30, .16);
}
.contact-interest input:checked + span i { color: #7a5a24; }

.contact-interest input:focus-visible + span {
  outline: 2px solid rgba(198, 154, 74, .7);
  outline-offset: 2px;
}

.contact-interest legend { color: #7a5a24; }

/* the contact headings were on the cold slate blue */
.contact-brief__intro h2 em,
.contact-intro h1 em,
.contact-meet h2 em { color: #8a6524; }

/* the original selected state was white text on a dark slate fill. I changed
   the fill to light gold but left the colour, so selected tiles went white
   on cream. */
.contact-interest input:checked + span { color: #2b2419; }
.contact-interest input:checked + span i { color: #7a5a24; }

/* ==========================================================================
   CONTACT — office address + map  (this section is dark)
   ========================================================================== */

.contact-meet { display: grid; }
.contact-map { grid-column: 1 / -1; }

.contact-office {
  display: grid;
  gap: 4px;
  margin: 22px 0;
  padding: 18px 20px;
  font-style: normal;
  border: 1px solid rgba(230, 192, 120, .26);
  border-left: 3px solid #cfa24d;
  border-radius: 3px;
  background: rgba(255, 250, 240, .06);
}
.contact-office__label {
  margin-bottom: 4px;
  color: #e6c078;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.contact-office strong { color: #fffaf0; font-size: 16px; font-weight: 700; }
.contact-office span:last-child { color: rgba(244, 239, 230, .74); font-size: 13.5px; line-height: 1.6; }

.contact-meet__actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }

.contact-meet__primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 20px;
  border-radius: 3px;
  color: #14150f;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  transition: transform .26s ease, box-shadow .26s ease, background .26s ease;
}
.contact-meet__primary:hover {
  transform: translateY(-2px);
  background: linear-gradient(145deg, #f8e0ad, #dcb15c);
  box-shadow: 0 14px 30px rgba(0, 0, 0, .34);
}
.contact-meet__primary i { font-size: 14px; color: #14150f; }

.contact-map {
  margin-top: clamp(28px, 3vw, 44px);
  height: clamp(280px, 32vw, 400px);
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid rgba(230, 192, 120, .24);
  box-shadow: 0 18px 44px rgba(0, 0, 0, .3);
  background: rgba(255, 250, 240, .04);
}
.contact-map iframe { display: block; width: 100%; height: 100%; filter: grayscale(.18) contrast(1.02); }

@media (max-width: 820px) {
  .contact-meet__actions { flex-direction: column; align-items: stretch; }
  .contact-meet__primary { justify-content: center; }
}

/* founder is known as Raj, so the alias carries the emphasis */
.founder-alias {
  color: #f0d091;
  font-style: normal;
  font-weight: 500;
  letter-spacing: -.01em;
}

/* ==========================================================================
   ABOUT — named team member card (sits alongside the pending role cards)
   ========================================================================== */

.team-member {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(198, 154, 74, .55);
  border-radius: 3px;
  background: linear-gradient(160deg, rgba(255, 255, 255, .82), rgba(248, 243, 234, .6));
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .18),
              0 0 20px rgba(207, 162, 77, .16),
              inset 0 1px 0 rgba(255, 255, 255, .6);
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.team-member:hover {
  transform: translateY(-3px);
  border-color: rgba(226, 180, 92, .95);
  box-shadow: 0 0 0 1px rgba(240, 208, 145, .42),
              0 0 28px rgba(215, 168, 78, .38),
              0 18px 36px rgba(70, 52, 22, .14),
              inset 0 1px 0 rgba(255, 255, 255, .75);
}

.team-member__photo {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #e9e2d5;
}
.team-member__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: transform .5s cubic-bezier(.22, 1, .3, 1);
}
.team-member:hover .team-member__photo img { transform: scale(1.04); }

.team-member__body { position: relative; padding: clamp(20px, 2vw, 26px); }
.team-member__body .team-role__num { top: clamp(20px, 2vw, 26px); right: clamp(20px, 2vw, 26px); }

.team-member h3 {
  margin: 0 0 4px;
  font-size: clamp(18px, 1.35vw, 21px);
  line-height: 1.2;
  letter-spacing: -.01em;
}

.team-member__role {
  margin: 0 0 10px;
  color: #7a5a24;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.team-member__body > p:not(.team-member__role):not(.team-member__langs) {
  margin: 0;
  color: #5e5447;
  font-size: 13.5px;
  line-height: 1.6;
}

.team-member__langs {
  margin: 14px 0 0;
  padding-top: 12px;
  display: flex;
  align-items: center;
  gap: 9px;
  border-top: 1px solid rgba(124, 92, 36, .16);
  color: #4a4235;
  font-size: 12px;
  font-weight: 650;
}
.team-member__langs i { color: #a3803c; font-size: 14px; }

/* the three slots still to be filled read slightly quieter than the real one */
.team-role--pending { opacity: .92; }

/* the named card is taller (it has a photo), so centre the pending cards'
   content instead of leaving them top-aligned in a stretched box */
.meet-team__roles { align-items: stretch; }
.team-role--pending {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.team-role--pending .team-role__num { top: clamp(24px, 2.2vw, 32px); }

/* ==========================================================================
   BRAND MARK — replaces the "VP" text monogram in the nav and footer
   ========================================================================== */

.brand__monogram {
  display: grid;
  place-items: center;
  padding: 6px 7px;
  border: 1px solid rgba(226, 189, 114, .5);
  background: transparent;
  overflow: hidden;
}
.brand__monogram img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 30px;
  object-fit: contain;
}

.vp-footer__monogram {
  display: grid;
  place-items: center;
  padding: 6px 7px;
  border: 1px solid rgba(226, 189, 114, .5);
  background: transparent;
  overflow: hidden;
}
.vp-footer__monogram img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 30px;
  object-fit: contain;
}

@media (max-width: 620px) {
  .brand__monogram img { max-height: 24px; }
}

/* the mark is a detailed skyline, not a two-letter monogram — it needs width
   and it fights the bordered box, so drop the box and let it breathe */
.brand__monogram,
.site-nav[data-scrolled="true"] .brand__monogram,
.vp-footer__monogram {
  width: auto;
  height: auto;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
}
.brand__monogram img,
.site-nav[data-scrolled="true"] .brand__monogram img {
  width: auto;
  max-height: 46px;
  max-width: 74px;
}
.vp-footer__monogram img { width: auto; max-height: 52px; max-width: 84px; }

.brand { gap: 14px; align-items: center; }
.vp-footer__logo { gap: 16px; align-items: center; }

@media (max-width: 820px) {
  .brand__monogram img { max-height: 36px; max-width: 58px; }
  .vp-footer__monogram img { max-height: 42px; max-width: 68px; }
}

/* the contact page nav CTA was white while every other page has the gold
   outline treatment — bring it in line */
.contact-page-premium .site-nav .nav-cta,
.contact-page .site-nav .nav-cta {
  color: #14150f;
  border-color: transparent;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  box-shadow: 0 6px 18px rgba(120, 88, 30, .22);
  transition: transform .26s ease, background .26s ease, box-shadow .26s ease;
}
.contact-page-premium .site-nav .nav-cta:hover,
.contact-page .site-nav .nav-cta:hover {
  transform: translateY(-1px);
  background: linear-gradient(145deg, #f8e0ad, #dcb15c);
  box-shadow: 0 12px 26px rgba(120, 88, 30, .32);
}
.contact-page-premium .site-nav .nav-cta span,
.contact-page-premium .site-nav .nav-cta .arrow,
.contact-page .site-nav .nav-cta span { color: #14150f; }
/* the white fill is scoped with [data-scrolled="false"], which outranks the
   rule above — match that specificity */
.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta {
  color: #14150f;
  border-color: transparent;
  background: linear-gradient(145deg, #f0d091, #cfa24d);
  box-shadow: 0 6px 18px rgba(120, 88, 30, .22);
}
.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta:hover {
  background: linear-gradient(145deg, #f8e0ad, #dcb15c);
  box-shadow: 0 12px 26px rgba(120, 88, 30, .32);
}
.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta span,
.contact-page-premium .site-nav[data-scrolled="false"] .nav-cta .arrow span { color: #14150f; }


/* ==========================================================================
   VANTAGE POINT — APPROVED LOGO PACK NAV MARKS
   Bright Gold on dark/photo headers; Dark Gold on light headers.
   ========================================================================== */
.brand__monogram {
  position: relative;
  width: 74px;
  height: 50px;
  flex: 0 0 74px;
  overflow: visible;
}
.brand__monogram .logo-mark {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
.brand__monogram .logo-mark--dark { display: none; }

/* Projects and Contact start on pale/light navigation surfaces. */
.projects-page .site-nav[data-scrolled="false"] .brand__monogram .logo-mark--bright,
.contact-page-premium .site-nav[data-scrolled="false"] .brand__monogram .logo-mark--bright { display: none; }
.projects-page .site-nav[data-scrolled="false"] .brand__monogram .logo-mark--dark,
.contact-page-premium .site-nav[data-scrolled="false"] .brand__monogram .logo-mark--dark { display: block; }

/* Once those navs scroll onto the dark glass bar, return to Bright Gold. */
.projects-page .site-nav[data-scrolled="true"] .brand__monogram .logo-mark--bright,
.contact-page-premium .site-nav[data-scrolled="true"] .brand__monogram .logo-mark--bright { display: block; }
.projects-page .site-nav[data-scrolled="true"] .brand__monogram .logo-mark--dark,
.contact-page-premium .site-nav[data-scrolled="true"] .brand__monogram .logo-mark--dark { display: none; }

@media (max-width: 820px) {
  .brand__monogram { width: 60px; height: 42px; flex-basis: 60px; }
}
