.site-header nav { gap: clamp(14px, 2vw, 28px); }
.risk-link { color: var(--ink); text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 3px; }
.risk-link:hover, .risk-link:focus-visible { color: #8b6b35; }

.market-story {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  background: var(--ink);
  color: #d6e2e5;
  position: relative;
}

.market-image { min-height: 650px; overflow: hidden; }
.market-image img { width: 100%; height: 100%; object-fit: cover; }
.market-copy { padding: 105px clamp(28px, 7vw, 110px); }
.market-copy h2 {
  font-family: "DM Serif Display", serif;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 400;
  line-height: 1.05;
  color: #fff;
  margin: 24px 0;
}
.market-copy .lead { color: #fff; }
.market-checks { border-top: 1px solid rgba(255,255,255,.2); margin-top: 38px; }
.market-checks div { display: grid; grid-template-columns: 125px 1fr; gap: 18px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.market-checks b { color: #fff; }
.market-checks span { font-size: 14px; }

.tenant-gallery {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 18px;
  padding: 42px clamp(24px, 8vw, 128px) 46px;
  background: #fff;
  color: var(--text);
}
.tenant-card { grid-column: span 3; margin: 0; position: relative; min-height: 330px; overflow: hidden; background: var(--ink); }
.tenant-card-wide { grid-column: span 3; }
.tenant-card img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; transition: transform .5s ease; }
.tenant-card:hover img { transform: scale(1.025); }
.tenant-card::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(1,30,40,.88)); pointer-events: none; }
.tenant-card figcaption { position: absolute; z-index: 1; left: 24px; right: 24px; bottom: 20px; color: #fff; display: flex; flex-direction: column; }
.tenant-card figcaption b { font-family: "DM Serif Display", serif; font-size: 24px; font-weight: 400; }
.tenant-card figcaption span { font-size: 12px; color: #d5e1e3; }
.tenant-disclaimer { grid-column: 1 / -1; font-size: 12px; line-height: 1.55; color: #687c81; margin: 0; }

.aif-explainer {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(45px, 8vw, 120px);
  background: #edf0ed;
}
.aif-intro h2 {
  font-family: "DM Serif Display", serif;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 400;
  line-height: 1.05;
  color: var(--ink);
  margin: 24px 0;
}
.aif-steps article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.aif-steps article:first-child { border-top: 1px solid var(--line); }
.aif-steps span { font-family: "DM Serif Display", serif; font-size: 28px; color: var(--gold); }
.aif-steps h3 { font-family: "DM Serif Display", serif; font-size: 25px; font-weight: 400; color: var(--ink); margin: 0 0 5px; }
.aif-steps p { font-size: 14px; margin: 0; }
.aif-note { grid-column: 1 / -1; background: #fff; border-left: 4px solid var(--gold); padding: 25px 30px; display: grid; grid-template-columns: 180px 1fr; gap: 28px; }
.aif-note b { color: var(--ink); }
.aif-note p { margin: 0; font-size: 14px; }

@media (max-width: 1120px) {
  .site-header { padding-left: 24px; padding-right: 24px; }
  .site-header nav { gap: 15px; }
  .site-header nav a { font-size: 12px; }
}

@media (max-width: 960px) {
  .market-story, .aif-explainer { grid-template-columns: 1fr; }
  .market-image { min-height: 460px; max-height: 600px; }
  .market-copy { padding: 78px clamp(24px, 8vw, 70px); }
  .aif-note { grid-column: auto; }
}

@media (max-width: 620px) {
  .market-image { min-height: 350px; }
  .market-copy { padding: 70px 24px; }
  .market-checks div { grid-template-columns: 1fr; gap: 4px; }
  .tenant-gallery { grid-template-columns: 1fr; padding: 24px; gap: 14px; }
  .tenant-card, .tenant-card-wide { grid-column: auto; min-height: 245px; }
  .tenant-card img { min-height: 245px; }
  .aif-note { grid-template-columns: 1fr; gap: 8px; padding: 24px; }
}
