.strategies h2,
.tax-benefits h2 {
  font-family: "Playfair Display", serif;
  font-size: clamp(2.4rem, 4vw, 4.2rem);
  font-weight: 500;
  letter-spacing: -.035em;
  line-height: 1.08;
  margin: 0;
}

.strategies {
  max-width: var(--max);
  margin: auto;
  padding: 115px 24px;
}

.strategy-heading {
  display: grid;
  grid-template-columns: 1.15fr .55fr;
  gap: 70px;
  align-items: end;
  margin-bottom: 55px;
}

.strategy-heading > p {
  margin: 0 0 8px;
  color: var(--muted);
  font-size: 1.05rem;
}

.strategy-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.strategy-card {
  position: relative;
  padding: 48px;
  background: #fff;
  border: 1px solid var(--lilac);
  overflow: hidden;
}

.strategy-rent { background: var(--pale); }
.strategy-swap { background: #f8f2e8; }

.strategy-index {
  position: absolute;
  right: 28px;
  top: 20px;
  font-family: "Playfair Display", serif;
  font-size: 4.7rem;
  line-height: 1;
  color: #e4dbe2;
}

.strategy-label {
  margin: 0 0 25px;
  color: var(--plum);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.strategy-card h3,
.tax-grid h3 {
  position: relative;
  font-family: "Playfair Display", serif;
  font-size: 2.1rem;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 18px;
  color: var(--plum);
}

.strategy-card > p:not(.strategy-label) {
  color: var(--muted);
  max-width: 500px;
}

.strategy-card ul {
  padding: 18px 0 20px;
  margin: 20px 0 24px;
  border-top: 1px solid var(--lilac);
  border-bottom: 1px solid var(--lilac);
  list-style: none;
}

.strategy-card li {
  padding: 7px 0 7px 24px;
  position: relative;
}

.strategy-card li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--gold);
  font-weight: 700;
}

.strategy-note {
  margin: 22px 0 0;
  color: var(--muted);
  font-size: .82rem;
}

.investment-card > small {
  display: block;
  margin: -12px 0 24px;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.45;
}

.tax-benefits {
  background: var(--plum);
  color: #fff;
  padding: 115px max(24px, calc((100vw - var(--max))/2));
}

.tax-intro {
  display: grid;
  grid-template-columns: .36fr 1fr .72fr;
  gap: 45px;
  align-items: start;
  margin-bottom: 52px;
}

.tax-intro > p:last-child {
  margin: 8px 0 0;
  color: #e6dce3;
}

.tax-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: #78566f;
  border: 1px solid #78566f;
}

.tax-grid article {
  background: var(--deep);
  padding: 38px;
}

.tax-grid h3 {
  color: #fff;
  margin-top: 14px;
  font-size: 1.65rem;
}

.tax-grid p {
  margin: 0;
  color: #d9ced6;
}

.tax-status {
  display: inline-block;
  color: var(--gold);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.tax-status.strong { color: #f0cf94; }

.tax-caution {
  display: grid;
  grid-template-columns: .38fr 1fr;
  gap: 35px;
  margin-top: 30px;
  padding: 28px 32px;
  background: #fff;
  color: var(--ink);
}

.tax-caution strong { color: var(--plum); }
.tax-caution p { margin: 0; color: var(--muted); }

.official-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 28px;
  align-items: center;
  margin-top: 28px;
  font-size: .78rem;
}

.official-links span {
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--gold);
}

.official-links a {
  color: #fff;
  border-bottom: 1px solid #9d8497;
}

.official-links a:hover { color: var(--gold); }

@media (max-width: 900px) {
  .strategy-heading,
  .tax-intro { grid-template-columns: 1fr; gap: 45px; }
  .strategy-grid,
  .tax-grid { grid-template-columns: 1fr; }
  .tax-caution { grid-template-columns: 1fr; gap: 8px; }
}

@media (max-width: 1100px) and (min-width: 901px) {
  .strategy-grid { grid-template-columns: repeat(2, 1fr); }
  .strategy-swap { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
  .strategies,
  .tax-benefits { padding: 75px 20px; }
  .strategy-card,
  .tax-grid article { padding: 30px; }
  .strategy-index { font-size: 3.8rem; }
  .official-links { align-items: flex-start; flex-direction: column; }
}
