/* Site specifics - extends tokens.css */
.page-wrap{overflow-x:hidden}
.hero-title{font-family:var(--font-heading);font-size:var(--h1);line-height:0.96;letter-spacing:-0.02em;margin:6px 0 var(--s-2)}
.hero-title small{display:block;font-family:var(--font-body);font-size:0.42em;font-weight:600;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.section h2{font-family:var(--font-heading);font-size:var(--h2);line-height:1.02;margin:0}
.section h2.thesis{font-size:var(--h2-thesis)}
.cards-row .card img{height:170px;width:100%;object-fit:cover;border-radius:10px;margin-bottom:var(--s-2)}
.lead-icon{width:64px;height:64px;border:1.5px solid var(--border-gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);background:rgba(201,154,46,0.08);font-size:1.4rem}
.hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
@media(max-width:1000px){.hub-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hub-grid{grid-template-columns:1fr}}
.hub-card img{height:150px;width:100%;object-fit:cover;border-radius:10px}
.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gutter)}
@media(max-width:1000px){.office-grid{grid-template-columns:1fr}}
.office-card{padding:var(--s-4)}
.leadership-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gutter)}
@media(max-width:900px){.leadership-grid{grid-template-columns:1fr}}
.leader{display:flex;gap:16px;align-items:flex-start}
.leader img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--border-gold);flex-shrink:0}
.leader h4{margin:0;font-size:1rem}
.leader .role{color:var(--gold);font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;margin:2px 0 6px}
.leader p{margin:0;color:var(--silver);font-size:0.92rem;line-height:1.45}
.sustain-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
@media(max-width:1000px){.sustain-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sustain-cards{grid-template-columns:1fr}}
.contact-strip{display:flex;gap:14px;flex-wrap:wrap;font-size:0.9rem}
.contact-strip a{border:1px solid var(--border-gold);padding:8px 14px;border-radius:999px;color:var(--gold);background:rgba(201,154,46,0.08)}
.cover-split{display:grid;grid-template-columns:44% 56%;min-height:72vh}
@media(max-width:900px){.cover-split{grid-template-columns:1fr}}
.cover-left{padding:var(--s-8) var(--safe-x);display:flex;flex-direction:column;justify-content:center;gap:var(--s-2)}
.cover-right{position:relative;overflow:hidden}
.cover-right img{width:100%;height:100%;object-fit:cover}
.disclaimer{margin-top:var(--s-3);padding:10px 14px;border-left:2px solid var(--gold);color:var(--silver-dim);font-size:0.85rem;background:rgba(255,255,255,0.03);border-radius:0 8px 8px 0}
.btn-gold{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy-deep);padding:12px 18px;border-radius:999px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;font-size:0.82rem;border:none;cursor:pointer}
.btn-ghost{border:1px solid var(--border-gold);color:var(--gold);background:transparent;padding:11px 18px;border-radius:999px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;font-size:0.82rem}

/* Mobile hero: put gold phrase on its own line for a clean 3- or 4-line
   rhythm instead of having & STRATEGIC / INVESTMENT split mid-phrase. */
@media(max-width:768px){
  .hero-title .gold{white-space:nowrap}
}

/* Mobile hero typography — scale fluidly, never clip across viewport edge */
@media(max-width:620px){
  .hero-title{
    font-size:clamp(2.35rem,11vw,3.15rem);
    line-height:0.98
  }
}

/* Mobile: stack grid cards vertically where they have inline grid-template-columns */
@media(max-width:620px){
  .card.glass-card[style*="grid-template-columns"]{
    grid-template-columns:1fr !important
  }
}
