/* About reference, isolated from the shared dark dashboard theme. */
#main-content .vm-about {
  --about-paper: #f3efe4; --about-paper-alt: #ede8da;
  --about-ink: #241e14; --about-body: #5c5344; --about-gold: #956e2e;
  position: relative; font-family: 'Jost', sans-serif; font-weight: 300;
}
#main-content .vm-about img { display: block; max-width: 100%; }
#main-content .vm-about a { text-decoration: none; }
#main-content .vm-about blockquote { margin: 0; }
#main-content .vm-about .vm-about-section-kicker { color: var(--vm-gold); font-size: 11px; font-weight: 400; letter-spacing: 3px; line-height: 1.7; text-transform: uppercase; }

/* Opening story */
#main-content .vm-about-hero { position: relative; overflow: hidden; min-height: 560px; display: flex; background: var(--vm-bg); }
#main-content .vm-about-hero-img-wrap { position: absolute; inset: 0; }
#main-content .vm-about-hero-img-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: 75% 40%; }
#main-content .vm-about-hero-scrim { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8, 7, 17, .97), rgba(8, 7, 17, .9) 38%, rgba(8, 7, 17, .35) 62%, rgba(8, 7, 17, .1)); }
#main-content .vm-about-hero-inner { position: relative; z-index: 2; max-width: 1320px; width: 100%; margin: 0 auto; padding: 80px 32px; display: flex; align-items: center; }
#main-content .vm-about-hero-content { max-width: 560px; }
#main-content .vm-about .vm-about-hero-title { margin: 16px 0 0; font-size: clamp(30px, 4vw, 44px); line-height: 1.25; color: #fbf4e4; }
#main-content .vm-about-hero-title em { color: var(--vm-gold); font-style: italic; }
#main-content .vm-about .vm-about-hero-body { margin-top: 22px; font-size: 14.5px; line-height: 1.85; color: #d8d1bf; }
#main-content .vm-about-hero-rule { width: 40px; height: 1px; background: rgba(212, 175, 106, .4); margin: 26px 0; }
#main-content .vm-about-hero-tagline { font-size: 10.5px; letter-spacing: 2.5px; text-transform: uppercase; color: var(--vm-muted); line-height: 1.8; }
#main-content .vm-about-hero-side-text { position: absolute; right: 36px; top: 50%; transform: translateY(-50%); z-index: 2; }
#main-content .vm-about-hero-side-text span { writing-mode: vertical-rl; font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: rgba(237, 231, 218, .65); }

/* Alternating photographs and narrative */
#main-content .vm-about-split-section { background: var(--about-paper); color: var(--about-ink); color-scheme: light; }
#main-content .vm-about-split-inner { max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; min-height: 460px; }
#main-content .vm-about-split-img { position: relative; overflow: hidden; min-height: 400px; }
#main-content .vm-about-split-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#main-content .vm-about-split-img-decor { position: absolute; left: 24px; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; }
#main-content .vm-about-split-img-decor span { writing-mode: vertical-rl; font-size: 9.5px; letter-spacing: 2.5px; text-transform: uppercase; color: #fff; text-shadow: 0 1px 8px #000; }
#main-content .vm-about-split-img-decor .vm-about-ic { color: var(--vm-gold); font-size: 16px; }
#main-content .vm-about-split-text { padding: 64px 56px; display: flex; flex-direction: column; justify-content: center; }
#main-content .vm-about .vm-about-split-text .vm-about-section-kicker { color: var(--about-gold); }
#main-content .vm-about .vm-about-split-title { margin: 14px 0 0; font-size: clamp(24px, 3vw, 32px); line-height: 1.3; color: var(--about-ink); }
#main-content .vm-about-split-body { margin-top: 18px; font-size: 13.5px; line-height: 1.85; color: var(--about-body); }
#main-content .vm-about .vm-about-split-body p { margin: 0 0 14px; }
#main-content .vm-about .vm-about-split-quote { margin-top: 20px; padding-left: 18px; border-left: 2px solid var(--about-gold); font: italic 15px/1.6 'Cormorant Garamond', Georgia, serif; color: #4a4232; }

/* Centered reflections */
#main-content .vm-about-center-section { background: var(--about-paper-alt); padding: 80px 32px; color-scheme: light; }
#main-content .vm-about-center-light { background: var(--about-paper); }
#main-content .vm-about-center-inner { max-width: 680px; margin: 0 auto; text-align: center; }
#main-content .vm-about .vm-about-center-text .vm-about-section-kicker { color: var(--about-gold); }
#main-content .vm-about .vm-about-center-title { margin: 14px 0 0; font-size: clamp(24px, 3vw, 32px); line-height: 1.3; color: var(--about-ink); }
#main-content .vm-about .vm-about-center-body { margin-top: 18px; font-size: 13.5px; line-height: 1.9; color: var(--about-body); }
#main-content .vm-about .vm-about-center-quote { display: inline-block; margin-top: 26px; text-align: left; font: italic 17px/1.6 'Cormorant Garamond', Georgia, serif; color: #3a3327; border-left: 2px solid var(--about-gold); padding-left: 20px; }

/* Four reasons */
#main-content .vm-about-why-section { background: var(--about-paper); padding: 70px 32px 90px; text-align: center; color-scheme: light; }
#main-content .vm-about .vm-about-why-kicker { font-family: 'Jost', sans-serif; font-size: 11px; font-weight: 400; letter-spacing: 3px; text-transform: uppercase; color: var(--about-gold); line-height: 1.7; }
#main-content .vm-about-why-grid { max-width: 1100px; margin: 36px auto 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px; }
#main-content .vm-about-why-icon { font-size: 26px; color: var(--about-gold); }
#main-content .vm-about-why-title { margin-top: 14px; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; color: var(--about-ink); font-weight: 500; }
#main-content .vm-about-why-desc { margin-top: 8px; font-size: 12.5px; color: var(--about-body); line-height: 1.6; }

/* Closing invitation */
#main-content .vm-about-cta-band { position: relative; overflow: hidden; min-height: 420px; display: flex; align-items: center; justify-content: center; text-align: center; }
#main-content .vm-about-cta-band-bg { position: absolute; inset: 0; }
#main-content .vm-about-cta-band-bg img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
#main-content .vm-about-cta-band-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8, 7, 17, .55), rgba(8, 7, 17, .75) 60%, rgba(8, 7, 17, .9)); }
#main-content .vm-about-cta-band-inner { position: relative; max-width: 640px; padding: 48px 32px; }
#main-content .vm-about .vm-about-cta-band-title { margin: 14px 0 26px; font-size: clamp(28px, 4vw, 42px); line-height: 1.25; color: #fbf4e4; }
#main-content .vm-about-cta-band-tagline { margin-top: 24px; font: italic 14.5px/1.6 'Cormorant Garamond', Georgia, serif; color: var(--vm-muted); }
#main-content .vm-about .vm-about-btn-gold {
  display: inline-flex; align-items: center; justify-content: center; min-height: 52px;
  padding: 17px 34px; border: 1px solid rgba(96, 68, 24, .55); border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .4), transparent 42%), repeating-linear-gradient(115deg, rgba(255, 255, 255, .1) 0 1px, rgba(60, 40, 0, .06) 2px 3px), linear-gradient(135deg, #f0d493, #e0bd79 28%, #c79a50 52%, #eac988 76%, #d4af6a);
  color: #2b1e0b; font: 600 15px/1.4 'Cormorant Garamond', Georgia, serif;
  font-variant: small-caps; letter-spacing: 1.2px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .35), inset 0 1px 0 rgba(255, 255, 255, .55);
  transition: transform .15s ease, box-shadow .15s ease;
}
#main-content .vm-about-btn-gold:hover { transform: translateY(-1px); box-shadow: 0 9px 22px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(255, 255, 255, .65); }
#main-content .vm-about :is(a, button):focus-visible { outline: 2px solid var(--vm-gold-hover); outline-offset: 4px; }
#main-content .vm-about-footer-links { max-width: 1320px; margin: 0 auto; padding: 60px 32px 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; border-top: 1px solid var(--vm-line); }
#main-content .vm-about .vm-about-footer-col-title { font-size: 19px; margin: 0 0 18px; }
#main-content .vm-about-footer-links a { display: block; width: fit-content; padding: 5px 0; margin-bottom: 7px; color: var(--vm-muted); font-size: 13.5px; text-decoration: underline; text-decoration-color: rgba(167, 158, 140, .3); text-underline-offset: 3px; }
#main-content .vm-about-footer-links a:hover { color: var(--vm-gold-hover); }

@media (max-width: 1100px) {
  #main-content .vm-about-split-text { padding: 48px 32px; }
  #main-content .vm-about-hero-content { max-width: 510px; }
}
@media (max-width: 900px) {
  #main-content .vm-about-split-inner { grid-template-columns: minmax(0, 1fr); }
  #main-content .vm-about-split-img { min-height: 280px; }
  #main-content .vm-about-split-img:last-child { grid-row: 1; }
  #main-content .vm-about-why-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #main-content .vm-about-hero-side-text { display: none; }
}
@media (max-width: 600px) {
    #main-content .vm-about-hero-inner { padding: 80px 24px 56px; }
  #main-content .vm-about-hero-scrim { background: linear-gradient(90deg, rgba(8, 7, 17, .94), rgba(8, 7, 17, .7)); }
  #main-content .vm-about-split-text { padding: 40px 24px; }
  #main-content .vm-about-center-section { padding: 56px 24px; }
  #main-content .vm-about-why-section { padding: 40px 24px 56px; }
  #main-content .vm-about-why-grid { gap: 28px 20px; }
  #main-content .vm-about-cta-band-inner { padding: 48px 24px; }
  #main-content .vm-about-footer-links { grid-template-columns: 1fr; padding: 40px 24px; gap: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  #main-content .vm-about-btn-gold { transition: none; }
  #main-content .vm-about-btn-gold:hover { transform: none; }
}
