/* Final review: layout, readability, navigation and source-faithful financial diagram.
   This stylesheet is intentionally small and loaded after the retained site design. */
:root { --muted:#536477; --gold-ink:#765018; }
html { scroll-padding-top:110px; }
body { overflow-wrap:break-word; }
main,section,article,figure,.container,.container > div { min-width:0; }
main:focus { outline:none; }
h1,h2,h3 { text-wrap:balance; }
h4 { font:750 1.08rem/1.35 var(--sans); margin:0 0 .65rem; color:var(--navy); }
figure { max-width:100%; }
img { height:auto; }
[hidden] { display:none!important; }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #b77923; outline-offset:4px; }
:where(input,select,textarea) { min-width:0; }
:where(a) { text-underline-offset:.2em; }
.button { color:var(--navy); min-height:44px; line-height:1.3; text-align:center; }
.button:hover { color:var(--navy); background:var(--gold-bright); }
.button-outline-light { color:#fff; }
.button-outline-light:hover { color:var(--navy); }
.button-secondary:hover { color:#fff; }
.section { padding-block:80px; }
.page-hero { padding-block:76px; }
.page-hero h1 { font-size:clamp(2.65rem,4.6vw,4.6rem); line-height:1.08; }
.page-hero p { margin-bottom:0; }
.section-heading { margin-bottom:36px; }
.section-heading.split { gap:40px; }
.section-heading h2 { font-size:clamp(2.15rem,3.6vw,3.45rem); line-height:1.1; }
.section-follow-link { margin:28px 0 0; }
.page-jump-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.page-jump-links a { padding:10px 16px; border:1px solid #667e95; border-radius:999px; text-decoration:none; font-size:.88rem; font-weight:650; color:#fff; }
.page-jump-links a:hover { background:#fff; color:var(--navy); }
/* Navigation stays usable with and without JavaScript. */
.nav-shell { gap:14px; height:86px; }
.brand { flex-shrink:0; }
.brand-mark { flex-shrink:0; }
.brand-mark img,.footer-logo img { object-fit:contain; }
.brand-copy strong { font-size:1.03rem; }
.primary-nav { gap:0; }
.primary-nav a { padding:.7rem .54rem; font-size:.81rem; }
.primary-nav a[aria-current="page"] { color:var(--navy); background:#f0f4f5; box-shadow:inset 0 -2px #aa792d; }
.nav-cta { font-size:.8rem; padding:.65rem .95rem; margin-left:2px; }
.menu-toggle { min-width:44px; min-height:44px; cursor:pointer; }
/* Remove absolute sizing from the hero overview: nothing is clipped. */
.hero-grid { min-height:0; padding-block:78px; gap:48px; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
.hero-copy h1 { font-size:clamp(3.15rem,5.3vw,5.15rem); line-height:1.04; }
.hero-copy > p { font-size:1.04rem; }
.hero .eyebrow { color:var(--gold-bright); }
.home-glance-stage { min-height:0!important; }
.home-glance-card { position:relative!important; inset:auto!important; width:100%!important; padding:28px; overflow:visible; min-height:0; }
.home-glance-card:after { display:none; }
.dashboard-top { gap:14px; margin-bottom:22px; flex-wrap:wrap; }
.dashboard-title { font-size:1.65rem; line-height:1.15; max-width:280px; }
.dashboard-label { color:#becbda; font-size:.72rem; }
.status-chip { white-space:nowrap; }
.glance-cycle { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:6px; }
.glance-cycle > div { min-height:76px; padding:12px 8px; margin:0!important; }
.glance-cycle > b { display:grid!important; place-items:center; transform:none!important; height:auto!important; }
.home-glance-meta { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:12px; }
.home-glance-meta strong { font-size:.95rem; line-height:1.25; }
.home-glance-meta span { font-size:.76rem; color:#c0cede; line-height:1.45; }
.glance-note { color:#c4d1df; font-size:.91rem; }
.home-proof { padding-bottom:0; }
.proof-shell { border-top-left-radius:0; border-top-right-radius:0; }
.proof-intro { padding:30px; }
.proof-item { padding:26px 20px; }
.proof-item span { font-size:.82rem; }
/* A readable cycle plus a separate, proportionate interest allocation. */
.capital-motion-section { padding-block:82px; background:linear-gradient(180deg,#fff,#f6f8f9); overflow:visible; }
.capital-cycle-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; list-style:none; padding:0; margin:0; }
.capital-cycle-grid > li { position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid #dbe4e9; border-radius:20px; padding:24px; min-width:0; box-shadow:0 10px 28px #071a3309; }
.capital-cycle-grid > li:not(:last-child):after { content:'→'; position:absolute; right:-17px; top:38px; z-index:2; color:#98691f; background:#f8fafb; font-size:1.25rem; line-height:1; }
.cycle-number { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; font-weight:800; font-size:.8rem; color:#fff; background:var(--navy-2); margin-bottom:18px; }
.capital-cycle-grid h3 { font-size:1.38rem; line-height:1.15; margin:0 0 12px; }
.cycle-value { font-size:1rem; line-height:1.4; color:#7c561d; margin-bottom:10px; }
.capital-cycle-grid p { font-size:.93rem; color:var(--muted); line-height:1.6; }
.cycle-foot { display:block; margin-top:auto; border-top:1px solid var(--line); padding-top:12px; font-size:.8rem; line-height:1.5; color:#38546b; }
.capital-return { display:flex; align-items:center; justify-content:center; gap:14px; background:var(--navy-2); color:#fff; border-radius:14px; padding:15px 24px; margin:18px 0 30px; }
.capital-return > span { color:var(--gold-bright); font-size:1.8rem; line-height:1; }
.capital-return p { margin:0; font-size:.95rem; }
.capital-return strong { margin-right:5px; }
.interest-distribution { padding:30px; border:1px solid #e1d6ba; border-radius:22px; background:#fffcf5; }
.interest-heading { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.interest-heading h3 { font-size:1.8rem; margin:0 0 8px; }
.interest-heading .eyebrow { margin-bottom:10px; }
.interest-heading p { color:#576273; margin:0; }
.interest-total { font:750 2.35rem/1 var(--sans); color:var(--navy); text-align:right; flex-shrink:0; }
.interest-total small { display:block; font:500 .77rem/1.4 var(--sans); color:#5d6472; margin-top:7px; }
.interest-bar { display:flex; height:44px; margin:24px 0; border-radius:10px; overflow:hidden; }
.interest-bar span { display:grid; place-items:center; font-weight:750; font-size:.94rem; }
.interest-bar span:nth-child(1) { width:30%; background:#123958; color:#fff; }
.interest-bar span:nth-child(2) { width:20%; background:#d4ad5c; color:#112d44; }
.interest-bar span:nth-child(3) { width:50%; background:#21654f; color:#fff; }
.interest-recipient-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.interest-recipient-grid article { padding-left:16px; border-left:3px solid #123958; }
.interest-recipient-grid article:nth-child(2) { border-color:#d4ad5c; }
.interest-recipient-grid article:nth-child(3) { border-color:#21654f; }
.interest-percentage { display:block; font-size:1.4rem; font-weight:800; color:var(--navy); margin-bottom:8px; }
.interest-recipient-grid p { color:var(--muted); font-size:.92rem; line-height:1.6; margin:0; }
.capital-terms { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-top:26px; }
.capital-terms p { font-size:.85rem; line-height:1.65; color:var(--muted); margin:0; }
.capital-terms strong { display:block; color:var(--navy); margin-bottom:4px; }
.capital-detail-link { text-align:center; margin:28px 0 0; font-size:.95rem; }
/* Members: large, uncropped portraits alongside comfortably sized text. */
.members-hero { position:relative; background:linear-gradient(125deg,#071a33,#143e5c); color:#fff; padding:64px 0; }
.members-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:60px; }
.members-hero-copy h1 { font-size:clamp(2.65rem,4.4vw,4.4rem); color:#fff; line-height:1.08; }
.members-hero-copy > p { font-size:1.04rem; color:#d3dfe9; max-width:650px; }
.members-hero-trust { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.members-hero-trust span { padding:7px 12px; border:1px solid #638097; border-radius:999px; font-size:.8rem; font-weight:650; }
.members-hero-visual { margin:0; }
.members-hero-visual img { width:100%; height:auto; border-radius:24px; }
.members-hero-visual figcaption { color:#c0cfdb; font-size:.78rem; margin-top:10px; text-align:right; }
.members-leadership-section { background:linear-gradient(180deg,#f2f9f5,#fff); }
.members-section-heading { text-align:center; max-width:800px; margin:0 auto 38px; }
.members-section-heading h2 { font-size:clamp(2rem,3.35vw,3rem); line-height:1.15; }
.members-section-heading p { color:var(--muted); }
.members-profile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:stretch; }
.member-profile-card { min-width:0; display:grid; grid-template-columns:minmax(0,44%) minmax(0,1fr); gap:22px; padding:18px; border:1px solid #d9e5e3; border-radius:22px; background:#fff; box-shadow:0 10px 35px #08263208; align-items:start; }
.member-profile-card:last-child { grid-column:1/-1; width:calc(50% - 12px); justify-self:center; }
.member-profile-photo { width:100%; height:300px; border-radius:16px; overflow:hidden; background:#eef2f4; }
.member-profile-photo img { display:block; width:100%; height:100%; min-width:0; min-height:0; max-height:none; max-width:none; object-fit:contain; object-position:center; }
.member-profile-body { min-width:0; display:flex; flex-direction:column; height:100%; padding:6px 0; }
.member-role { display:block; font-size:.77rem; line-height:1.45; font-weight:800; color:#21624c; letter-spacing:.035em; text-transform:uppercase; }
.member-profile-body h3 { font-size:1.45rem; line-height:1.18; margin:8px 0 12px; }
.member-profile-body p { font-size:.92rem; line-height:1.62; color:var(--muted); margin:0 0 18px; }
.member-profile-meta { margin-top:auto; border-top:1px solid #e3e8e9; padding-top:14px; display:flex; flex-direction:column; gap:8px; }
.member-profile-meta span { color:#79551e; font-size:.72rem; line-height:1.5; font-weight:750; letter-spacing:.02em; text-transform:uppercase; }
.member-profile-meta a { font-size:.84rem; font-weight:700; }
.members-placeholder-note { color:var(--muted); text-align:center; font-size:.9rem; margin:30px 0 0; }
.members-principles-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.members-principles-grid article { border:1px solid var(--line); border-radius:20px; background:#fff; padding:26px; }
.members-principles-grid article > span { display:grid; place-items:center; background:var(--navy); color:var(--gold-bright); width:36px; height:36px; border-radius:50%; font-size:.8rem; margin-bottom:18px; }
.members-principles-grid h3 { font-size:1.3rem; }
.members-principles-grid p { color:var(--muted); font-size:.94rem; margin:0; }
.members-bottom-cta { padding:38px 0 72px; }
.members-bottom-cta-inner { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:24px; padding:30px; border:1px solid #e1e7dc; border-radius:22px; background:linear-gradient(110deg,#edf7f1,#faf5e7); }
.members-cta-icon { width:64px; height:64px; border-radius:50%; background:var(--navy); color:var(--gold-bright); display:grid; place-items:center; font-weight:750; }
.members-bottom-cta h2 { font-size:1.6rem; line-height:1.18; }
.members-bottom-cta p { color:var(--muted); margin:0; }
/* Forms and supporting page details */
.enquiry-shell { gap:40px; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); }
.enquiry-form { padding:30px; }
.enquiry-form input,.enquiry-form select,.enquiry-form textarea { font-size:1rem; min-width:0; }
.enquiry-form label { font-size:.9rem; }
.enquiry-form .honeypot { display:none; }
.form-feedback { display:none; border-radius:12px; padding:16px; font-size:.94rem; margin-top:18px; }
.form-feedback:not(:empty) { display:block; }
.form-feedback[data-state="success"] { background:#edf7f1; border:1px solid #a3c8b2; color:#174e38; }
.form-feedback[data-state="error"] { background:#fff2f0; border:1px solid #efb6af; color:#842c21; }
.form-feedback[data-state="sending"] { background:#edf2f7; color:var(--navy); }
.enquiry-form [aria-invalid="true"] { border-color:#a62b21; }
.enquiry-form .form-note { font-size:.84rem; line-height:1.65; }
.enquiry-form button:disabled { opacity:.72; cursor:wait; transform:none; }
.contact-quick-icon { font-family:var(--sans); }
.payment-verification { grid-column:1/-1; font-size:.9rem; margin:0; padding-top:20px; border-top:1px solid #536779; }
.payment-card dd { overflow-wrap:anywhere; }
.micro-note { font-size:.83rem; line-height:1.65; }
.resource-card > span,.resource-card .document-meta { font-size:.77rem; color:#73511d; }
.resource-card .resource-file-meta { display:block; font-size:.78rem; color:#5b6878; margin-top:12px; }
.resource-grid { align-items:stretch; }
.document-callout { min-width:0; }
.photo-placeholder figcaption { font-size:.79rem; color:var(--muted); }
.cta-band { color:var(--navy); }
.cta-band h2,.cta-band p,.cta-band .eyebrow { color:var(--navy); }
.cta-band .button-outline-light { color:var(--navy); border-color:#314153; }
.cta-band h2 { line-height:1.13; }
/* Consistent footer and social colours for pointer and keyboard users */
.footer-grid { grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) minmax(0,.7fr) minmax(252px,1fr); gap:30px; }
.site-footer .social-links,.social-links { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.site-footer .social-icon,.social-icon,.contact-follow-row .social-icon { display:inline-flex; flex:0 0 44px; width:44px; height:44px; padding:0; margin:0; justify-content:center; align-items:center; }
.social-icon svg { width:20px; height:20px; display:block; fill:currentColor; }
.social-icon:is(:hover,:focus-visible) { transform:translateY(-2px); }
.social-icon.social-facebook:is(:hover,:focus-visible) { background:#1877f2; border-color:#1877f2; color:#fff; }
.social-icon.social-linkedin:is(:hover,:focus-visible) { background:#0a66c2; border-color:#0a66c2; color:#fff; }
.social-icon.social-instagram:is(:hover,:focus-visible) { background:#c82e65; border-color:#c82e65; color:#fff; }
.social-icon.social-youtube:is(:hover,:focus-visible) { background:#d90000; border-color:#d90000; color:#fff; }
.social-icon.social-whatsapp:is(:hover,:focus-visible) { background:#25d366; border-color:#25d366; color:#063d23; }
.site-footer .social-note { color:#aebed0; font-size:.8rem; }
.site-footer h3 { font-size:.78rem; }
.footer-bottom { gap:24px; flex-wrap:wrap; }
.back-to-top { right:max(16px,env(safe-area-inset-right)); bottom:max(16px,env(safe-area-inset-bottom)); }
/* No hidden-on-load content, even when a visitor blocks JavaScript. */
.reveal { animation:none; opacity:1; transform:none; }
@media(max-width:1150px) {
 .nav-shell { height:auto; min-height:78px; flex-wrap:wrap; padding-block:10px; }
 .nav-cta { display:none; }
 .primary-nav { display:flex; position:static; flex-direction:row; flex-wrap:wrap; width:100%; flex-basis:100%; box-shadow:none; padding:8px 0; border:0; background:#fff; }
 .menu-toggle { display:none; }
 .js .menu-toggle { display:block; }
 .js .primary-nav { display:none; position:absolute; top:100%; left:20px; right:20px; width:auto; max-height:calc(100dvh - 115px); overflow:auto; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); padding:12px; flex-direction:column; }
 .js .primary-nav.open { display:flex; }
 .primary-nav a { padding:.75rem 1rem; font-size:.95rem; }
 .footer-grid { grid-template-columns:minmax(0,1.4fr) 1fr 1fr; }
 .footer-grid > div:last-child { grid-column:1/-1; }
 .hero-grid { grid-template-columns:1fr; padding-block:60px; }
 .hero-panel { width:100%; max-width:720px; }
 .home-glance-card { max-width:100%; }
 .members-profile-grid { gap:20px; }
 .member-profile-card { grid-template-columns:minmax(0,42%) minmax(0,1fr); gap:16px; padding:16px; }
 .member-profile-photo { height:280px; }
 .member-profile-card:last-child { width:calc(50% - 10px); }
 .members-hero-grid { gap:32px; }
 .members-hero-copy h1 { font-size:3.2rem; }
}
@media(max-width:900px) {
 .capital-cycle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .capital-cycle-grid > li:after { display:none; }
 .members-profile-grid { grid-template-columns:1fr; max-width:700px; margin-inline:auto; }
 .member-profile-card,.member-profile-card:last-child { grid-column:auto; width:100%; grid-template-columns:minmax(0,40%) minmax(0,1fr); gap:24px; padding:20px; }
 .member-profile-photo { height:310px; }
 .members-hero-grid { grid-template-columns:1fr; }
 .members-hero-visual { max-width:520px; }
 .members-principles-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .members-bottom-cta-inner { grid-template-columns:auto 1fr; }
 .members-bottom-cta-inner > .button { grid-column:2; justify-self:start; }
 .enquiry-shell { grid-template-columns:1fr; }
 .enquiry-intro { position:static; }
 .interest-recipient-grid { gap:18px; }
 .capital-terms { gap:20px; }
}
@media(max-width:680px) {
 html { scroll-padding-top:90px; }
 .container { width:calc(100% - 36px); }
 .section,.capital-motion-section { padding-block:54px; }
 .page-hero,.members-hero { padding-block:46px; }
 .page-hero h1,.members-hero-copy h1 { font-size:clamp(2.5rem,8.5vw,3.45rem); }
 .page-hero p { font-size:1rem; }
 .nav-shell { min-height:74px; }
 .brand { gap:8px; }
 .brand-copy strong { font-size:.94rem; }
 .brand-copy small { font-size:.53rem; letter-spacing:.1em; }
 .hero-grid { padding-block:48px; gap:32px; }
 .hero-copy h1 { font-size:clamp(3rem,11.5vw,4.1rem); }
 .home-glance-card { padding:22px 18px; }
 .home-glance-meta { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
 .home-glance-meta strong { font-size:.83rem; }
 .home-glance-meta span { font-size:.72rem; }
 .glance-cycle { grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:4px; }
 .glance-cycle > div { padding:10px 3px; min-height:64px; }
 .glance-cycle > div strong { font-size:.78rem; }
 .glance-cycle > b { font-size:.8rem; }
 .home-proof { padding-bottom:0; }
 .proof-grid { grid-template-columns:1fr; }
 .proof-item { border-right:0; border-bottom:1px solid var(--line); padding:20px 26px; }
 .proof-item:last-child { border-bottom:0; }
 .proof-item strong { font-size:1.5rem; }
 .proof-item span { font-size:.85rem; }
 .capital-cycle-grid { grid-template-columns:1fr; gap:18px; }
 .capital-cycle-grid > li { padding:24px; }
 .capital-cycle-grid > li:not(:last-child):after { display:block; content:'↓'; top:auto; bottom:-17px; left:50%; right:auto; transform:translateX(-50%); }
 .capital-return { padding:18px; align-items:flex-start; }
 .capital-return strong { display:block; }
 .interest-distribution { padding:24px 20px; }
 .interest-heading { flex-wrap:wrap; gap:16px; }
 .interest-total { font-size:1.7rem; text-align:left; }
 .interest-heading h3 { font-size:1.65rem; }
 .interest-recipient-grid,.capital-terms { grid-template-columns:1fr; gap:24px; }
 .capital-terms p { font-size:.91rem; }
 .interest-recipient-grid article { padding-left:18px; }
 .capital-detail-link { text-align:left; }
 .timeline { grid-template-columns:1fr; }
 .members-section-heading { margin-bottom:28px; }
 .members-principles-grid { grid-template-columns:1fr; }
 .enquiry-form { padding:24px 20px; }
 .field-row { grid-template-columns:1fr; gap:0; }
 .footer-grid { grid-template-columns:1fr 1fr; gap:30px; }
 .footer-grid .footer-brand,.footer-grid > div:last-child { grid-column:1/-1; }
 .footer-bottom { flex-direction:column; font-size:.8rem; }
 .cta-band h2 { font-size:2rem; }
 .cta-band { padding-block:46px; }
 .contact-follow-row { gap:18px; }
 .contact-quick-card { grid-template-columns:44px minmax(0,1fr); gap:14px; }
 .contact-quick-icon { width:44px; height:44px; }
}
@media(max-width:520px) {
 .member-profile-card,.member-profile-card:last-child { grid-template-columns:1fr; gap:20px; padding:18px; }
 .member-profile-photo { height:auto; aspect-ratio:4/5; }
 .member-profile-body h3 { font-size:1.65rem; }
 .member-profile-body p { font-size:1rem; }
 .member-profile-meta a { font-size:.92rem; }
 .members-bottom-cta-inner { grid-template-columns:1fr; padding:26px; }
 .members-bottom-cta-inner > .button { grid-column:auto; width:100%; }
 .members-hero-trust span { font-size:.73rem; }
 .dashboard-title { font-size:1.5rem; }
 .brand-copy strong { font-size:.9rem; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto!important; }
 *,*::before,*::after { animation:none!important; transition:none!important; }
}
@media print {
 .topbar,.site-header,.site-footer,.back-to-top,.cta-band,.members-bottom-cta { display:none!important; }
 .container { width:100%; }
 .section,.page-hero,.members-hero { padding:20px 0!important; background:#fff!important; color:#152235!important; }
 .page-hero h1,.page-hero p,.members-hero h1,.members-hero p { color:#152235!important; }
 .member-profile-card { break-inside:avoid; }
}

/* Keep values and contact marks readable on narrow screens. */
.values-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}
.values-grid>div{min-width:0}
.contact-quick-icon svg{width:27px;height:27px;fill:currentColor;display:block}
@media(max-width:420px){.values-grid{grid-template-columns:1fr}}
