/* ------------------------------------------------------------------
   VLX Travel — advisor profile pages (sits on top of styles.css)
   ------------------------------------------------------------------ */
.nav--solid { mix-blend-mode: normal; color: var(--ink); background: rgba(251, 249, 244, 0.9); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.nav--solid .btn--line:hover { color: var(--ivory); }

.a-back { font-size: 13px; color: var(--stone); display: inline-flex; gap: 10px; align-items: center; }
.a-back:hover { color: var(--ink); }

/* opening */
.a-hero { background: var(--paper); min-height: 100vh; display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(40px, 6vw, 110px); align-items: center; padding: calc(var(--nav-h) + 40px) var(--gutter) 80px; }
.a-hero__img { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); max-height: 82vh; }
.a-hero__img img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.a-hero__copy { display: grid; gap: 24px; align-content: center; }
.a-name { font-family: var(--serif); font-weight: 300; font-size: clamp(3.2rem, 7vw, 6.4rem); line-height: 0.95; letter-spacing: -0.01em; }
.a-role { font-size: 14px; color: var(--stone); letter-spacing: 0.02em; }
.a-honor { font-family: var(--serif); font-style: italic; font-size: 22px; color: var(--clay); }
.a-lead { font-family: var(--serif); font-size: clamp(1.4rem, 2.2vw, 1.9rem); line-height: 1.3; max-width: 30ch; color: var(--ink-soft); }
.a-actions { display: flex; flex-wrap: wrap; gap: 14px 28px; align-items: center; margin-top: 8px; }

/* facts */
.a-facts { background: var(--navy); color: var(--ivory); display: grid; grid-template-columns: repeat(3, 1fr); padding: clamp(56px, 7vw, 96px) var(--gutter); gap: 40px; }
.a-fact { display: grid; gap: 8px; border-left: 1px solid rgba(244, 239, 230, 0.18); padding-left: 28px; }
.a-fact strong { font-family: var(--serif); font-weight: 300; font-size: clamp(2.2rem, 4vw, 3.4rem); line-height: 1; }
.a-fact span { font-size: 14px; color: rgba(244, 239, 230, 0.7); max-width: 26ch; }

/* about */
.a-about { background: var(--ivory); padding: clamp(110px, 13vw, 190px) var(--gutter); display: grid; grid-template-columns: 1fr 1.4fr; gap: clamp(40px, 7vw, 120px); }
.a-about__text { display: grid; gap: 22px; font-size: 16px; color: var(--ink-soft); max-width: 62ch; }
.a-about__text p:first-child::first-letter { font-family: var(--serif); float: left; font-size: 4.6em; line-height: 0.85; padding: 6px 12px 0 0; color: var(--clay); }

/* specialties */
.a-spec { background: var(--paper); padding: clamp(110px, 13vw, 190px) var(--gutter); }
.a-spec__head { margin-bottom: clamp(50px, 6vw, 80px); max-width: 40ch; }
.a-spec__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 2.4vw, 36px); }
.a-card { display: grid; gap: 16px; align-content: start; }
.a-card__img { aspect-ratio: 4 / 5; overflow: hidden; }
.a-card__img img { width: 100%; height: 116%; object-fit: cover; }
.a-card h3 { font-family: var(--serif); font-weight: 400; font-size: 28px; line-height: 1.1; }
.a-card p { font-size: 15px; color: var(--ink-soft); max-width: 36ch; }

/* quote */
.a-quote { background: var(--ivory); padding: clamp(110px, 14vw, 200px) var(--gutter); text-align: center; display: grid; justify-items: center; gap: 28px; }
.a-quote blockquote { font-family: var(--serif); font-weight: 300; font-size: clamp(1.9rem, 3.6vw, 3.2rem); line-height: 1.2; max-width: 26ch; }
.a-quote cite { font-style: normal; font-size: 13px; color: var(--stone); letter-spacing: 0.04em; }

/* writing */
.a-writing { background: var(--paper); padding: clamp(110px, 13vw, 190px) var(--gutter); }

/* closing */
.a-cta { background: var(--navy); color: var(--ivory); text-align: center; padding: clamp(110px, 14vw, 200px) var(--gutter); display: grid; justify-items: center; gap: 28px; border-bottom: 1px solid rgba(244, 239, 230, 0.12); }
.a-cta h2 { font-family: var(--serif); font-weight: 300; font-size: clamp(2.6rem, 5.4vw, 4.8rem); line-height: 1.02; }
.a-cta h2 em { color: #e3b18f; }
.a-cta p { max-width: 46ch; color: rgba(244, 239, 230, 0.75); }

@media (max-width: 1100px) {
  .a-spec__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
  .a-hero { grid-template-columns: 1fr; padding-top: calc(var(--nav-h) + 16px); min-height: 0; }
  .a-hero__img { max-height: none; }
  .a-facts { grid-template-columns: 1fr; gap: 28px; }
  .a-about { grid-template-columns: 1fr; }
  .a-spec__grid { grid-template-columns: 1fr; }
}

/* text-only specialty cards (advisors without extra photos) */
.a-spec__grid--text .a-card { border-top: 1px solid var(--sand); padding-top: 28px; gap: 14px; }
.a-card__num { font-family: var(--serif); color: var(--clay); font-size: 16px; }
.a-facts--2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 900px) { .a-facts--2 { grid-template-columns: 1fr; } }
