/* Below-hero layout studies A, B, C. Loaded after site.css; the hero and header come from site.css unchanged. */

/* Comparison switcher (prototype only) */
.switcher { position: fixed; z-index: 60; inset-inline-start: 16px; bottom: 16px; display: flex; gap: 2px; padding: 4px; background: rgba(16,19,24,.92); backdrop-filter: blur(8px); font: 500 12px/1 "IBM Plex Sans", sans-serif; letter-spacing: .04em; }
.switcher span { color: #a9adb3; padding: 9px 10px 9px 8px; }
.switcher a { color: #f5f3ee; text-decoration: none; padding: 9px 12px; }
.switcher a[aria-current] { background: #f5f3ee; color: #101318; }

.star { display: inline-block; width: 10px; height: 10px; vertical-align: middle; }
.cap { font: 500 11px/1.4 var(--sans); letter-spacing: .16em; text-transform: uppercase; }
figure { margin: 0; }
.img { position: relative; overflow: hidden; background: #1a1f24; }
.img img { width: 100%; height: 100%; object-fit: cover; }

/* =====================================================================
   A. Private bank: dark continuous field, brass hairlines, sticky imagery
   ===================================================================== */
.la {
  --a-bg: #0c1012; --a-bg-2: #12181b; --a-ivory: #ece6da; --a-mute: #9a9a92; --a-brass: #b48e5a;
  --a-rule: rgba(236, 230, 218, .14); --a-serif: "Cormorant Garamond", "Newsreader", Georgia, serif;
  background: var(--a-bg); color: var(--a-ivory);
}
.la .site-header.is-solid { background: rgba(12,16,18,.94); color: var(--a-ivory); border-bottom-color: var(--a-rule); backdrop-filter: blur(10px); }
.la .site-header.is-solid .nav .btn:hover { background: var(--a-ivory); color: var(--a-bg); }
.la .site-header.menu-open, .la .nav { background: var(--a-bg); color: var(--a-ivory); }
.la .nav a { border-color: var(--a-rule); }
.la ::selection { background: var(--a-brass); color: var(--a-bg); }

.la .a-sec { padding-block: clamp(96px, 13vw, 184px); }
.la .a-eyebrow { display: flex; align-items: center; gap: 14px; color: var(--a-brass); margin-bottom: 48px; }
.la .a-eyebrow::after { content: ""; flex: 0 0 56px; height: 1px; background: var(--a-brass); opacity: .6; }
.la h2.a-h { font: 300 clamp(40px, 5.6vw, 84px)/1.02 var(--a-serif); letter-spacing: -.01em; margin: 0; }
.la h2.a-h em { font-style: italic; color: var(--a-brass); }
.la h3 { font-family: var(--a-serif); font-weight: 400; }

.a-firm { display: grid; grid-template-columns: 8fr 4fr; gap: clamp(32px, 6vw, 112px); align-items: end; }
.a-firm p { color: var(--a-mute); font-size: 16px; line-height: 1.75; }
.a-tenets { margin-top: clamp(72px, 9vw, 128px); display: grid; grid-template-columns: repeat(3, 1fr); }
.a-tenet { padding: 8px 40px 8px 0; }
.a-tenet + .a-tenet { padding-inline-start: 40px; border-inline-start: 1px solid var(--a-rule); }
.a-tenet .rn { font: italic 400 22px/1 var(--a-serif); color: var(--a-brass); display: block; margin-bottom: 20px; }
.a-tenet h4 { font: 400 26px/1.15 var(--a-serif); margin: 0 0 12px; }
.a-tenet p { color: var(--a-mute); font-size: 15px; margin: 0; max-width: 32ch; }
@media (max-width: 860px) {
  .a-firm { grid-template-columns: 1fr; }
  .a-tenets { grid-template-columns: 1fr; }
  .a-tenet, .a-tenet + .a-tenet { padding: 28px 0; border-inline-start: 0; border-top: 1px solid var(--a-rule); }
}

.a-band { position: relative; height: clamp(320px, 62vh, 640px); }
.a-band img { position: absolute; inset: -8% 0; width: 100%; height: 116%; object-fit: cover; filter: saturate(.75) contrast(1.05); }
.a-band::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, var(--a-bg) 0%, rgba(12,16,18,.15) 30%, rgba(12,16,18,.15) 70%, var(--a-bg) 100%); }
.a-band figcaption { position: absolute; z-index: 1; bottom: 32px; inset-inline-start: var(--gutter); color: var(--a-ivory); }

.a-mandate-head { display: grid; grid-template-columns: 8fr 4fr; gap: clamp(32px, 6vw, 112px); align-items: end; margin-bottom: clamp(56px, 7vw, 104px); }
.a-mandate-head p { color: var(--a-mute); margin: 0; }
.a-split { display: grid; grid-template-columns: 5fr 7fr; gap: clamp(32px, 6vw, 96px); }
.a-sticky { position: sticky; top: calc(var(--header-h) + 32px); align-self: start; aspect-ratio: 4 / 5; }
.a-sticky .img { position: absolute; inset: 0; opacity: 0; transition: opacity .9s ease; }
.a-sticky .img.on { opacity: 1; }
.a-sticky .img img { filter: saturate(.7); }
.a-sticky .img figcaption { position: absolute; bottom: 16px; inset-inline-start: 16px; color: var(--a-ivory); text-shadow: 0 1px 12px rgba(0,0,0,.6); }
.a-sticky .frame { position: absolute; inset: 12px; border: 1px solid rgba(236,230,218,.35); pointer-events: none; z-index: 2; }
.a-strat { padding-bottom: clamp(72px, 10vw, 144px); min-height: 60vh; }
.a-strat .letter { font: italic 400 20px/1 var(--a-serif); color: var(--a-brass); }
.a-strat .primary { margin-inline-start: 14px; color: var(--a-brass); border: 1px solid rgba(180,142,90,.5); padding: 6px 9px; }
.a-strat h3 { font-size: clamp(36px, 3.8vw, 56px); line-height: 1.05; margin: 20px 0 20px; }
.a-strat > p { color: var(--a-mute); font-size: 17px; line-height: 1.7; max-width: 52ch; margin-bottom: 36px; }
.a-terms { border-top: 1px solid var(--a-brass); margin: 0; }
.a-terms > div { display: grid; grid-template-columns: minmax(130px, 3fr) 7fr; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--a-rule); }
.a-terms dt { color: var(--a-mute); font-size: 13px; letter-spacing: .04em; }
.a-terms dd { margin: 0; font-size: 16px; }
.a-terms dd.big { font: 400 26px/1.1 var(--a-serif); }
.a-sub { margin: 40px 0 0; color: var(--a-brass); }
.a-strat .go { margin-top: 36px; display: inline-flex; gap: 12px; align-items: center; color: var(--a-ivory); text-decoration: none; padding-bottom: 6px; border-bottom: 1px solid var(--a-brass); font-size: 14px; letter-spacing: .04em; }
.a-strat .go:hover .arrow { transform: translateX(4px); }
.a-strat .go + .go { margin-inline-start: 28px; }
@media (max-width: 860px) {
  .a-mandate-head { grid-template-columns: 1fr; }
  .a-split { grid-template-columns: 1fr; }
  .a-sticky { display: none; }
  .a-strat { min-height: 0; }
  .a-terms > div { grid-template-columns: 1fr; gap: 4px; }
}
.a-inline-img { display: none; aspect-ratio: 16/10; margin-bottom: 28px; }
@media (max-width: 860px) { .a-inline-img { display: block; } }

.a-markets { padding-block: clamp(56px, 7vw, 88px); border-block: 1px solid var(--a-rule); background: var(--a-bg-2); text-align: center; }
.a-markets .cap { color: var(--a-mute); margin-bottom: 24px; display: block; }
.a-markets p { font: 300 clamp(26px, 3.2vw, 44px)/1.5 var(--a-serif); margin: 0; }
.a-markets .star { color: var(--a-brass); margin-inline: .5em; width: 12px; height: 12px; }

.a-platform-card { position: relative; border: 1px solid rgba(180,142,90,.45); padding: clamp(32px, 6vw, 96px); overflow: hidden; }
.a-platform-card::before, .a-platform-card::after { content: ""; position: absolute; width: 18px; height: 18px; border: 1px solid var(--a-brass); }
.a-platform-card::before { top: 10px; inset-inline-start: 10px; border-right: 0; border-bottom: 0; }
.a-platform-card::after { bottom: 10px; inset-inline-end: 10px; border-left: 0; border-top: 0; }
.a-platform-card .platform-lattice { opacity: .06; color: var(--a-brass); }
.a-platform-grid { position: relative; display: grid; grid-template-columns: 6fr 6fr; gap: clamp(32px, 6vw, 96px); }
.a-platform-grid p { color: var(--a-mute); line-height: 1.75; }
.a-services { list-style: none; margin: 0; padding: 0; columns: 1; }
.a-services li { padding: 20px 0; border-bottom: 1px solid var(--a-rule); }
.a-services li:first-child { border-top: 1px solid var(--a-rule); }
.a-services strong { display: block; font: 400 22px/1.2 var(--a-serif); margin-bottom: 4px; }
.a-services span { color: var(--a-mute); font-size: 14px; }
.la .btn-brass { border-color: var(--a-brass); color: var(--a-ivory); }
.la .btn-brass:hover { background: var(--a-brass); color: var(--a-bg); }
@media (max-width: 860px) { .a-platform-grid { grid-template-columns: 1fr; } }

.a-offices { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--a-brass); }
.a-office { padding: 32px 32px 0 0; }
.a-office + .a-office { padding-inline-start: 32px; border-inline-start: 1px solid var(--a-rule); }
.a-office .cap { color: var(--a-brass); }
.a-office h3 { font-size: 34px; margin: 14px 0 12px; }
.a-office address { font-style: normal; color: var(--a-mute); font-size: 14px; line-height: 1.7; }
.a-contact { margin-top: 64px; display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; }
.a-contact a.mail { font: 300 clamp(26px, 3vw, 40px)/1.2 var(--a-serif); text-decoration: none; overflow-wrap: anywhere; }
.a-contact a.mail:hover { color: var(--a-brass); }
@media (max-width: 860px) {
  .a-offices { grid-template-columns: 1fr; }
  .a-office, .a-office + .a-office { padding: 24px 0; border-inline-start: 0; border-bottom: 1px solid var(--a-rule); }
}
.la .a-excl { color: var(--a-mute); font-size: 13px; padding-block: 0 56px; max-width: 90ch; }
.la .site-footer { background: #080b0c; border-top: 1px solid var(--a-rule); }

/* =====================================================================
   B. Annual report: warm paper, editorial spreads with figure captions
   ===================================================================== */
.lb {
  /* Palette taken from study C: sandstone, deep green, copper. --b-indigo now holds the green. */
  --b-paper: #ece4d6; --b-ink: #13201c; --b-mute: #6b675d; --b-rule: #cfc3ad; --b-indigo: #12241f; --b-oxide: #9b6b43;
  --b-serif: var(--serif); --b-text: var(--sans);
  /* Shared site.css tokens follow the same palette, so forms and buttons match. */
  --paper: #ece4d6; --paper-2: #e2d7c4; --ink: #13201c; --ink-2: #2c3a35; --mute: #6b675d; --rule: #cfc3ad; --accent: #9b6b43;
  background: var(--b-paper); color: var(--b-ink);
}
.lb .site-header.is-solid { background: var(--b-paper); border-bottom-color: var(--b-rule); }
.lb .b-sec { padding-block: clamp(88px, 12vw, 168px); }
.lb .b-folio { display: grid; grid-template-columns: 3fr 9fr; gap: clamp(24px, 4vw, 64px); border-top: 2px solid var(--b-ink); padding-top: 18px; margin-bottom: clamp(48px, 6vw, 88px); }
.lb .b-folio .cap { color: var(--b-ink); }
.lb .b-folio .cap + .cap { color: var(--b-mute); }
/* Large section title sitting above the rule (The Firm). */
.lb .b-title { font: 300 clamp(32px, 3.2vw, 46px)/1.05 var(--serif); letter-spacing: -0.01em; color: var(--b-ink); margin: 0 0 clamp(28px, 3vw, 44px); padding-bottom: clamp(14px, 1.6vw, 22px); border-bottom: 2px solid #3a6a58; }
.lb #firm { padding-block: clamp(48px, 6vw, 88px) clamp(40px, 4.5vw, 64px); }
.b-lead { font: 400 clamp(30px, 3.6vw, 52px)/1.22 var(--b-serif); letter-spacing: -.005em; margin: 0; max-width: 26ch; }
.b-lead span { color: var(--b-oxide); }
.b-firm { display: grid; grid-template-columns: 6fr 5fr; gap: clamp(32px, 5vw, 80px); align-items: start; }
#firm .b-lead { font: 300 clamp(24px, 2.4vw, 34px)/1.25 var(--serif); max-width: none; }
.b-firm-body { display: grid; gap: 16px; padding-top: 6px; }
.b-firm-body p { font: 400 clamp(15.5px, 1.2vw, 17px)/1.75 var(--sans); color: #3a3a37; margin: 0; }
.b-firm-body strong { font-weight: 600; color: var(--b-ink); }
/* Closing line of The Firm: the section's last word, set large between green rules. */
.b-coda { font: 400 clamp(19px, 1.9vw, 27px)/1.3 var(--b-serif); color: var(--b-ink); margin: clamp(28px, 3vw, 44px) 0 0; padding: clamp(12px, 1.3vw, 18px) clamp(18px, 2.2vw, 30px); background: #e3d8c4; }
.b-coda em { color: #3a6a58; }
/* The first spread follows a section title, which already draws the rule. */
.lb .b-title + .b-spread { border-top: 0; padding-top: 0; }
.b-notes { margin-top: 72px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.b-notes div { border-top: 1px solid var(--b-rule); padding-top: 16px; }
.b-notes sup { color: var(--b-oxide); font: 500 12px/1 var(--sans); margin-inline-end: 8px; }
.b-notes h4 { display: inline; font: 500 15px/1.3 var(--sans); }
.b-notes p { color: var(--b-mute); font-size: 14px; margin: 8px 0 0; }
@media (max-width: 860px) {
  .lb .b-folio, .b-firm { grid-template-columns: 1fr; }
  .b-firm-body, .b-notes { grid-template-columns: 1fr; }
}

.b-spread { display: grid; grid-template-columns: 7fr 5fr; gap: clamp(32px, 5vw, 80px); align-items: start; padding-block: clamp(48px, 6vw, 96px); border-top: 1px solid var(--b-rule); }
.b-spread.flip { grid-template-columns: 5fr 7fr; }
.b-spread.flip figure { order: 2; }
.b-spread figure .img { aspect-ratio: 4 / 3; }
.b-spread figcaption { display: flex; gap: 14px; margin-top: 12px; font-size: 13px; color: var(--b-mute); }
.b-spread figcaption b { font-weight: 500; color: var(--b-ink); }
.b-spread .k { font: 500 12px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--b-oxide); }
.b-spread h3 { font: 300 clamp(28px, 2.6vw, 38px)/1.1 var(--serif); margin: 12px 0 16px; }
.b-spread .intro { font: 400 16px/1.7 var(--b-text); color: #3a3a37; margin-bottom: 28px; }
.b-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.b-table th, .b-table td { text-align: start; vertical-align: top; padding: 12px 0; border-bottom: 1px solid var(--b-rule); }
.b-table th { font-weight: 400; color: var(--b-mute); width: 38%; padding-inline-end: 16px; }
.b-table caption { text-align: start; font: 500 11px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--b-mute); padding: 20px 0 10px; border-bottom: 1px solid var(--b-ink); }
.b-table td.num { font: 400 22px/1 var(--serif); }
.b-link { display: inline-flex; gap: 10px; margin-top: 24px; margin-inline-end: 24px; color: var(--b-ink); text-decoration: none; font-weight: 500; font-size: 14px; border-bottom: 1px solid var(--b-oxide); padding-bottom: 4px; }
.b-sectors { columns: 2; column-gap: 32px; list-style: none; margin: 0; padding: 0; }
.b-sectors li { font: 400 clamp(22px, 2vw, 28px)/1.2 var(--b-serif); padding: 10px 0; border-bottom: 1px solid var(--b-rule); break-inside: avoid; }
.b-venture-panel { aspect-ratio: 4 / 3; background: var(--b-indigo); color: var(--b-paper); padding: clamp(24px, 4vw, 48px); display: flex; flex-direction: column; justify-content: space-between; }
.b-venture-panel .big { font: 400 clamp(44px, 6vw, 96px)/.95 var(--b-serif); }
.b-venture-panel .big span { display: block; color: #c8b9a0; font-size: .5em; margin-top: 12px; }
@media (max-width: 860px) {
  .b-spread, .b-spread.flip { grid-template-columns: 1fr; }
  .b-spread.flip figure { order: 0; }
}

/* Investment Criteria: map beside the mandate summary, then the four classes in a 2 x 2 grid. */
.b-overview { display: grid; grid-template-columns: 7fr 5fr; gap: clamp(32px, 4vw, 64px); align-items: center; margin-bottom: clamp(36px, 4vw, 56px); }
.b-map { margin: 0; }
.b-map img { display: block; width: 100%; height: auto; }
.b-map figcaption { margin-top: 14px; font: 500 11px/1.7 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--b-mute); }
.b-map svg { display: block; width: 100%; height: auto; overflow: visible; }
.b-map .wm-mk { cursor: default; outline: none; }
.b-map .wm-mk path, .b-map .wm-mk circle { transition: fill .2s ease, stroke .2s ease; }
.b-map .wm-mk.is-hot path, .b-map .wm-mk.is-hot circle:not(.wm-ring) { fill: var(--b-oxide); }
.b-map .wm-mk.is-hot .wm-ring { stroke: var(--b-oxide); }
.b-map figcaption span { transition: color .2s ease; cursor: default; }
.b-map figcaption span.is-hot { color: var(--b-ink); font-weight: 700; }
.b-mandate h3 { font: 300 clamp(24px, 2.2vw, 32px)/1.15 var(--serif); margin: 0 0 14px; }
.b-mandate ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid #3a6a58; }
.b-mandate li a { display: grid; grid-template-columns: 26px 1fr; column-gap: 10px; padding: 12px 0; border-bottom: 1px solid var(--b-rule); color: inherit; text-decoration: none; }
.b-mandate .n { grid-row: span 2; font: 500 12px/1.9 var(--sans); color: var(--b-oxide); }
.b-mandate .t { font: 400 clamp(19px, 1.6vw, 23px)/1.2 var(--serif); }
.b-mandate .d { margin-top: 3px; font: 400 13.5px/1.5 var(--sans); color: var(--b-mute); }
.b-mandate li a:hover .t { color: #3a6a58; }
.b-classes { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(36px, 4vw, 56px) clamp(32px, 5vw, 80px); padding-top: clamp(28px, 3vw, 40px); border-top: 1px solid var(--b-rule); }
.b-class .k { font: 600 12px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--b-oxide); }
.b-class h3 { font: 300 clamp(26px, 2.3vw, 34px)/1.1 var(--serif); margin: 10px 0 12px; }
.b-class .intro { font: 400 15.5px/1.7 var(--sans); color: #3a3a37; margin: 0 0 16px; }
.b-class .b-sectors li { font: 300 clamp(18px, 1.5vw, 22px)/1.2 var(--serif); padding: 8px 0; }
.b-class .b-link { margin-top: 18px; }
@media (max-width: 860px) {
  .b-overview, .b-classes { grid-template-columns: 1fr; }
}

.b-markets { display: grid; grid-template-columns: 3fr 9fr; gap: clamp(24px, 4vw, 64px); }
.b-markets table { width: 100%; border-collapse: collapse; }
.b-markets td { padding: 16px 0; border-bottom: 1px solid var(--b-rule); vertical-align: baseline; }
.b-markets td:first-child { font: 400 clamp(22px, 2.2vw, 30px)/1.2 var(--b-serif); }
.b-markets td:last-child { text-align: end; color: var(--b-mute); font-size: 13px; }
.b-markets tr:first-child td { border-top: 2px solid var(--b-ink); }
@media (max-width: 860px) { .b-markets { grid-template-columns: 1fr; } }

.b-platform { background: var(--b-indigo); color: #ece4d6; }
.b-platform .b-folio { border-top-color: #ece4d6; }
.lb .b-platform { padding-block: clamp(56px, 6vw, 88px); }
.lb .b-platform .b-title { color: #ece4d6; border-bottom-color: #7fa592; margin-bottom: clamp(20px, 2.4vw, 32px); }
.b-platform .k { display: block; font: 500 12px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: #c8b9a0; margin-bottom: 14px; }
.lb #criteria { padding-bottom: clamp(56px, 6vw, 88px); }
.b-platform .b-folio .cap { color: #ece4d6; }
.b-platform .b-folio .cap + .cap { color: #a8b3ab; }
.b-quote { font: 300 clamp(24px, 2.4vw, 34px)/1.25 var(--serif); margin: 0 0 clamp(24px, 3vw, 40px); }
@media (min-width: 1000px) { .b-quote { white-space: nowrap; } }
.b-quote i { color: #c9a77c; }
.b-plat-grid { display: grid; grid-template-columns: 6fr 5fr; gap: clamp(32px, 5vw, 80px); align-items: start; }
.b-plat-grid .btn { margin-top: 8px; }
.b-plat-grid p { font: 400 15.5px/1.7 var(--sans); color: rgba(236,228,214,.82); margin: 0 0 16px; }
.b-plat-grid ol { margin: 0; padding: 0; list-style: none; counter-reset: s; }
.b-plat-grid ol { border-top: 1px solid #7fa592; }
.b-plat-grid li { counter-increment: s; padding: 12px 0; border-bottom: 1px solid rgba(236,228,214,.16); display: grid; grid-template-columns: 26px 1fr; column-gap: 10px; font: 300 clamp(19px, 1.6vw, 23px)/1.2 var(--serif); }
.b-plat-grid li::before { content: counter(s); font: 500 12px/1.9 var(--sans); color: #c9a77c; }
.b-plat-grid li span { display: block; margin-top: 3px; font: 400 13.5px/1.5 var(--sans); color: #a8b3ab; }
.lb .btn-paper { background: #ece4d6; color: var(--b-indigo); border-color: #ece4d6; }
.lb .btn-paper:hover { background: transparent; color: #ece4d6; }
@media (max-width: 960px) { .b-plat-grid { grid-template-columns: 1fr; } }

.b-offices { display: grid; grid-template-columns: 3fr 9fr; gap: clamp(24px, 4vw, 64px); }
.b-office-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.b-office-row div { border-top: 2px solid var(--b-ink); padding-top: 16px; }
.b-office-row h3 { font: 400 30px/1.1 var(--b-serif); margin: 10px 0; }
.b-office-row .cap { color: var(--b-oxide); }
.b-office-row address { font-style: normal; color: var(--b-mute); font-size: 14px; }
.b-mail { margin-top: 56px; font: 400 clamp(26px, 3vw, 40px)/1.2 var(--b-serif); display: inline-block; color: var(--b-ink); text-decoration: none; border-bottom: 1px solid var(--b-oxide); overflow-wrap: anywhere; }
@media (max-width: 860px) { .b-offices, .b-office-row { grid-template-columns: 1fr; } }
.lb .site-footer { background: #0b1714; }
.lb ::selection { background: var(--b-indigo); color: var(--b-paper); }
/* Exclusions, closing Investment Criteria. */
.b-note { display: grid; grid-template-columns: auto 1fr; gap: 8px clamp(16px, 2vw, 28px); align-items: baseline; margin: clamp(32px, 4vw, 48px) 0 0; padding: clamp(16px, 1.8vw, 22px) clamp(18px, 2.2vw, 28px); background: #e3d8c4; border-inline-start: 3px solid #3a6a58; font: 400 15px/1.65 var(--sans); color: var(--b-ink); }
.b-note b { font: 600 12px/1.6 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--b-oxide); white-space: nowrap; }
@media (max-width: 600px) { .b-note { grid-template-columns: 1fr; } }

/* =====================================================================
   C. Arch: sandstone and deep green, images set in pointed-arch windows
   ===================================================================== */
.lc {
  --c-sand: #ece4d6; --c-sand-2: #e2d7c4; --c-ink: #13201c; --c-green: #12241f; --c-mute: #6b675d; --c-rule: #cfc3ad; --c-copper: #9b6b43;
  --c-serif: "Newsreader", Georgia, serif;
  background: var(--c-sand); color: var(--c-ink);
}
.lc .site-header.is-solid { background: var(--c-sand); color: var(--c-ink); border-bottom-color: var(--c-rule); }
.lc .c-sec { padding-block: clamp(96px, 12vw, 176px); }
.c-rosette { display: block; margin: 0 auto 28px; width: 28px; height: 28px; color: var(--c-copper); }
.c-center { text-align: center; max-width: 900px; margin-inline: auto; }
.c-center .cap { color: var(--c-copper); display: block; margin-bottom: 28px; }
.lc h2 { font: 300 clamp(38px, 5vw, 72px)/1.04 var(--c-serif); letter-spacing: -.015em; }
.c-center p.lede { font-size: 18px; line-height: 1.7; color: #3c4440; max-width: 56ch; margin: 32px auto 0; }
.c-tenets { margin-top: clamp(64px, 8vw, 112px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.c-tenet { text-align: center; padding: 8px 32px; }
.c-tenet + .c-tenet { border-inline-start: 1px solid var(--c-rule); }
.c-tenet h4 { font: 400 24px/1.2 var(--c-serif); margin: 0 0 10px; }
.c-tenet p { color: var(--c-mute); font-size: 15px; margin: 0 auto; max-width: 30ch; }
@media (max-width: 860px) { .c-tenets { grid-template-columns: 1fr; } .c-tenet + .c-tenet { border-inline-start: 0; border-top: 1px solid var(--c-rule); padding-top: 28px; margin-top: 20px; } }

.arch { clip-path: url(#arch-clip); }
.arch-frame { position: relative; }
.arch-frame svg.outline { position: absolute; inset: -10px; width: calc(100% + 20px); height: calc(100% + 10px); color: var(--c-copper); pointer-events: none; overflow: visible; }

.c-cards { margin-top: clamp(56px, 7vw, 96px); display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 3vw, 48px); }
.c-card .arch-frame { aspect-ratio: 3 / 4; }
.c-card .img { width: 100%; height: 100%; }
.c-card .img img { transition: transform 1.2s ease; filter: saturate(.85); }
.c-card:hover .img img { transform: scale(1.04); }
.c-card .k { display: flex; justify-content: space-between; align-items: baseline; margin-top: 28px; color: var(--c-copper); }
.c-card h3 { font: 400 clamp(28px, 2.6vw, 38px)/1.1 var(--c-serif); margin: 12px 0 12px; }
.c-card p { color: var(--c-mute); font-size: 15px; }
.c-card dl { margin: 20px 0 0; border-top: 1px solid var(--c-ink); }
.c-card dl div { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--c-rule); font-size: 14px; }
.c-card dt { color: var(--c-mute); }
.c-card dd { margin: 0; text-align: end; }
.c-card .go { display: inline-flex; gap: 10px; margin-top: 20px; font-weight: 500; font-size: 14px; color: var(--c-ink); text-decoration: none; border-bottom: 1px solid var(--c-copper); padding-bottom: 4px; }
.c-card.venture-card .arch-frame { background: var(--c-green); }
.c-venture-inner { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 28px; color: var(--c-sand); }
.c-venture-inner ul { list-style: none; margin: 0; padding: 0; }
.c-venture-inner li { font: 300 clamp(18px, 1.6vw, 22px)/1.5 var(--c-serif); border-bottom: 1px solid rgba(236,228,214,.18); padding: 4px 0; }
@media (max-width: 960px) { .c-cards { grid-template-columns: 1fr; max-width: 520px; margin-inline: auto; } }

.c-detail { margin-top: clamp(64px, 8vw, 112px); border-top: 1px solid var(--c-ink); }
.c-detail summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--c-rule); font: 400 22px/1.2 var(--c-serif); }
.c-detail summary::-webkit-details-marker { display: none; }
.c-detail summary::after { content: "+"; font: 300 26px/1 var(--sans); color: var(--c-copper); }
.c-detail details[open] summary::after { content: "\2212"; }
.c-detail .body { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding: 24px 0 40px; border-bottom: 1px solid var(--c-rule); }
.c-detail .body p { color: #3c4440; margin: 0; }
@media (max-width: 760px) { .c-detail .body { grid-template-columns: 1fr; } }

.c-markets { background: var(--c-sand-2); padding-block: clamp(56px, 7vw, 88px); text-align: center; border-block: 1px solid var(--c-rule); }
.c-markets .cap { color: var(--c-copper); }
.c-markets ul { list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 0; }
.c-markets li { font: 300 clamp(24px, 2.8vw, 38px)/1.3 var(--c-serif); display: flex; align-items: center; }
.c-markets li + li::before { content: ""; width: 9px; height: 9px; margin-inline: 22px; background: var(--c-copper); transform: rotate(45deg); box-shadow: 0 0 0 0 transparent; }

.c-platform { background: var(--c-green); color: var(--c-sand); overflow: hidden; }
.c-platform .platform-lattice { opacity: .07; color: #d9c7a6; }
.c-plat-grid { position: relative; display: grid; grid-template-columns: 5fr 7fr; gap: clamp(32px, 6vw, 96px); align-items: center; }
.c-plat-window { aspect-ratio: 3 / 4; position: relative; }
.c-plat-window .arch { position: absolute; inset: 0; background: linear-gradient(180deg, #1c3a32, #0e1d19); display: flex; align-items: center; justify-content: center; }
.c-plat-window .arch svg { width: 46%; color: #d9c7a6; opacity: .9; }
.c-plat-window .outline { color: #b98d5e !important; }
.c-platform .cap { color: #c9a77c; }
.c-platform h2 { margin: 20px 0 28px; max-width: 14ch; }
.c-platform p { color: rgba(236,228,214,.78); line-height: 1.75; max-width: 50ch; }
.c-platform ul { list-style: none; margin: 32px 0 40px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; }
.c-platform li { padding: 14px 0; border-bottom: 1px solid rgba(236,228,214,.16); font-size: 15px; }
.lc .btn-sand { background: var(--c-sand); color: var(--c-green); border-color: var(--c-sand); }
.lc .btn-sand:hover { background: transparent; color: var(--c-sand); }
@media (max-width: 860px) { .c-plat-grid { grid-template-columns: 1fr; } .c-plat-window { max-width: 320px; } .c-platform ul { grid-template-columns: 1fr; } }

.c-offices { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 3vw, 48px); margin-top: clamp(48px, 6vw, 88px); }
.c-office { text-align: center; padding: 40px 24px 32px; border: 1px solid var(--c-rule); border-radius: 999px 999px 0 0; background: rgba(255,255,255,.25); }
.c-office .cap { color: var(--c-copper); }
.c-office h3 { font: 400 30px/1.1 var(--c-serif); margin: 14px 0 12px; }
.c-office address { font-style: normal; color: var(--c-mute); font-size: 14px; line-height: 1.7; }
.c-mail { display: block; text-align: center; margin-top: 56px; font: 300 clamp(26px, 3vw, 40px)/1.2 var(--c-serif); color: var(--c-ink); text-decoration: none; overflow-wrap: anywhere; }
.c-mail:hover { color: var(--c-copper); }
@media (max-width: 860px) { .c-offices { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; } }
.lc .c-excl { color: var(--c-mute); font-size: 13px; padding-bottom: 56px; text-align: center; max-width: 90ch; margin-inline: auto; }
.lc .site-footer { background: #0b1714; }
