:root {
  --ei-ink: #17342d;
  --ei-deep: #0f2722;
  --ei-paper: #f6f5f0;
  --ei-white: #fff;
  --ei-line: #d7d8d1;
  --ei-muted: #65716d;
  --ei-gold: #b79b62;
}

.ei-page { color: var(--ei-deep); background: var(--ei-paper); font-family: Arial, sans-serif; line-height: 1.6; }
.ei-page *, .ei-page *::before, .ei-page *::after { box-sizing: border-box; }
.ei-page a { color: inherit; text-decoration: none; }
.ei-page img { display: block; width: 100%; }
.ei-intro, .ei-featured, .ei-library, .ei-consultation { padding-left: clamp(24px, 6vw, 104px); padding-right: clamp(24px, 6vw, 104px); }
.ei-intro { min-height: 420px; display: grid; grid-template-columns: 1.45fr .55fr; gap: 60px; align-items: end; padding-top: 92px; padding-bottom: 72px; }
.ei-eyebrow { margin: 0 0 20px; color: var(--ei-gold); font-size: 11px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; }
.ei-intro h1, .ei-section-heading h2, .ei-featured h2, .ei-card h3, .ei-consultation h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: 0; }
.ei-intro h1 { margin: 0; font-size: clamp(56px, 8vw, 112px); line-height: .98; }
.ei-intro-copy { max-width: 420px; margin-bottom: 8px; color: var(--ei-muted); font-size: 17px; }
.ei-featured { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(320px, .85fr); min-height: 560px; padding-top: 0; padding-bottom: 0; color: var(--ei-white); background: var(--ei-ink); }
.ei-featured-image { margin-left: calc(clamp(24px, 6vw, 104px) * -1); overflow: hidden; }
.ei-featured-image img { height: 100%; object-fit: cover; transition: transform .6s ease; }
.ei-featured-image:hover img { transform: scale(1.025); }
.ei-featured-copy { display: flex; flex-direction: column; justify-content: center; padding: 64px clamp(0px, 2vw, 36px) 64px clamp(38px, 5vw, 84px); }
.ei-meta { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 24px; color: var(--ei-muted); font-size: 11px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; }
.ei-featured .ei-meta { color: #bcc7c2; }
.ei-featured h2 { margin: 0 0 18px; font-size: clamp(30px, 3.2vw, 48px); line-height: 1.32; }
.ei-featured-copy > p { color: #cbd3cf; font-size: 15px; }
.ei-text-link { width: max-content; margin-top: 20px; padding-bottom: 5px; border-bottom: 1px solid var(--ei-gold); font-size: 13px; }
.ei-text-link span { margin-left: 12px; color: var(--ei-gold); }
.ei-library { padding-top: 112px; padding-bottom: 120px; }
.ei-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 50px; }
.ei-section-heading h2 { margin: 0; font-size: clamp(36px, 4vw, 58px); }
.ei-filters { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ei-filter { min-height: 38px; padding: 0 16px; border: 1px solid var(--ei-line); border-radius: 3px; color: var(--ei-muted); background: transparent; cursor: pointer; font-size: 12px; }
.ei-filter:hover, .ei-filter.is-active { border-color: var(--ei-ink); color: var(--ei-white); background: var(--ei-ink); }
.ei-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 46px 28px; }
.ei-card { min-width: 0; border-bottom: 1px solid var(--ei-line); }
.ei-card[hidden] { display: none; }
.ei-card-image { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #e5e6df; }
.ei-card-image img { height: 100%; object-fit: cover; transition: transform .5s ease; }
.ei-card:hover .ei-card-image img { transform: scale(1.035); }
.ei-image-fallback { height: 100%; display: grid; place-items: center; color: var(--ei-gold); background: var(--ei-ink); font-family: Georgia, serif; }
.ei-card-body { position: relative; min-height: 210px; padding: 25px 48px 28px 0; }
.ei-card-body .ei-meta { margin-bottom: 17px; }
.ei-card h3 { margin: 0; font-size: 21px; line-height: 1.5; }
.ei-card h3 a:hover { color: #517066; }
.ei-arrow { position: absolute; right: 0; bottom: 26px; width: 34px; height: 34px; border: 1px solid var(--ei-line); border-radius: 50%; display: grid; place-items: center; color: var(--ei-gold); }
.ei-arrow:hover { color: var(--ei-white); border-color: var(--ei-ink); background: var(--ei-ink); }
.ei-consultation { padding-top: 92px; padding-bottom: 96px; color: var(--ei-white); background: var(--ei-deep); }
.ei-consultation-content { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; align-items: end; }
.ei-consultation h2 { max-width: 820px; margin: 0; font-size: clamp(40px, 5vw, 68px); line-height: 1.2; }
.ei-consultation-content p { color: #becbc6; }
.ei-light-button { display: inline-flex; justify-content: space-between; align-items: center; min-width: 230px; margin-top: 20px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.42); border-radius: 3px; font-size: 13px; }
.ei-light-button:hover { color: var(--ei-ink); background: var(--ei-white); }

@media (max-width: 920px) {
  .ei-intro { grid-template-columns: 1fr; min-height: 370px; gap: 38px; }
  .ei-intro-copy { max-width: 580px; }
  .ei-featured { grid-template-columns: 1fr; padding: 0; }
  .ei-featured-image { margin: 0; aspect-ratio: 16 / 9; }
  .ei-featured-copy { padding: 54px clamp(24px, 6vw, 104px) 62px; }
  .ei-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ei-consultation-content { grid-template-columns: 1fr; gap: 46px; }
}

@media (max-width: 620px) {
  .ei-intro { min-height: 350px; padding-top: 68px; padding-bottom: 52px; }
  .ei-intro h1 { font-size: 56px; }
  .ei-library { padding-top: 78px; padding-bottom: 84px; }
  .ei-section-heading { align-items: start; flex-direction: column; }
  .ei-filters { justify-content: flex-start; }
  .ei-grid { grid-template-columns: 1fr; }
  .ei-card-body { min-height: 180px; }
  .ei-consultation { padding-top: 70px; padding-bottom: 72px; }
}

