/* Rocky Founder Authority Page — V2.2.10 visual-fidelity hotfix, page-scoped. */
.gdl-founder-page {
    --fd-ink:#071a3e;
    --fd-muted:#526681;
    --fd-blue:#0874f9;
    --fd-teal:#10a9ae;
    --fd-line:#dce8f4;
    --fd-pale:#eef7ff;
    --fd-soft:#f7fbff;
}
.gdl-founder-page .gdl-founder-site,
.gdl-founder-page .gdl-founder-site * { box-sizing:border-box; }
.gdl-founder-page .gdl-founder-site { overflow:hidden; color:var(--fd-ink); background:#fff; }
.gdl-founder-page .gdl-founder-container { width:min(100% - 48px,1240px); margin-inline:auto; }
.gdl-founder-page .gdl-founder-section { padding-block:clamp(64px,5.5vw,90px); }
.gdl-founder-page .gdl-founder-eyebrow,
.gdl-founder-page .gdl-founder-kicker { margin:0 0 11px; color:var(--fd-blue); font-size:.74rem; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.gdl-founder-page .gdl-founder-kicker b { margin-right:10px; color:var(--fd-teal); }
.gdl-founder-page .gdl-founder-section h2,
.gdl-founder-page .gdl-founder-final h2 { max-width:780px; margin:0 0 14px; font-size:clamp(2rem,2.65vw,2.75rem); line-height:1.16; letter-spacing:-.04em; }
.gdl-founder-page .gdl-founder-section-lead,
.gdl-founder-page .gdl-founder-section-heading p,
.gdl-founder-page .gdl-founder-philosophy-grid > div > p { max-width:790px; margin:0; color:var(--fd-muted); font-size:.97rem; line-height:1.68; }

/* Hero */
.gdl-founder-page .gdl-founder-hero { background:linear-gradient(110deg,#f2f9ff 0%,#fff 55%,#eef8ff 100%); }
.gdl-founder-page .gdl-founder-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(470px,.92fr); min-height:570px; padding-right:0; align-items:stretch; }
.gdl-founder-page .gdl-founder-hero-copy { position:relative; z-index:2; display:flex; padding:48px 48px 42px 0; flex-direction:column; justify-content:center; }
.gdl-founder-page .gdl-founder-hero h1 { margin:0; font-size:clamp(3.35rem,4.45vw,4.55rem); font-weight:830; line-height:1; letter-spacing:-.055em; }
.gdl-founder-page .gdl-founder-role { margin:12px 0 10px; font-size:clamp(1.65rem,2.3vw,2.2rem); font-weight:800; line-height:1.18; letter-spacing:-.035em; }
.gdl-founder-page .gdl-founder-lead { max-width:620px; margin:0; color:var(--fd-muted); font-size:1rem; line-height:1.68; }
.gdl-founder-page .gdl-founder-traits { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:25px 0 0; padding:0; list-style:none; }
.gdl-founder-page .gdl-founder-traits li { display:grid; min-width:0; grid-template-columns:34px minmax(0,1fr); grid-template-rows:auto auto; column-gap:9px; align-items:center; }
.gdl-founder-page .gdl-founder-traits li > span { display:grid; width:34px; height:34px; margin:0; grid-row:1 / 3; place-items:center; border-radius:50%; background:#e2f2ff; color:var(--fd-blue); font-size:.65rem; font-weight:900; }
.gdl-founder-page .gdl-founder-traits strong,
.gdl-founder-page .gdl-founder-traits small { display:block; min-width:0; }
.gdl-founder-page .gdl-founder-traits strong { font-size:.82rem; line-height:1.25; }
.gdl-founder-page .gdl-founder-traits small { margin-top:2px; overflow:hidden; color:#718098; font-size:.59rem; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.gdl-founder-page .gdl-founder-quote { max-width:670px; margin:24px 0 0; padding:17px 23px 15px 38px; border:1px solid var(--fd-line); border-radius:12px; background:rgba(255,255,255,.94); box-shadow:0 13px 32px rgba(25,68,120,.075); font-size:.93rem; font-weight:680; line-height:1.62; }
.gdl-founder-page .gdl-founder-quote cite,
.gdl-founder-page .gdl-founder-authority blockquote cite { display:block; margin-top:5px; color:var(--fd-blue); font-family:Georgia,serif; font-size:.96rem; text-align:right; }
.gdl-founder-page .gdl-founder-hero-media { position:relative; min-height:570px; margin:0; overflow:hidden; }
.gdl-founder-page .gdl-founder-hero-media::after { position:absolute; inset:0; background:linear-gradient(90deg,rgba(241,248,255,.2),transparent 22%); content:""; pointer-events:none; }
.gdl-founder-page .gdl-founder-hero-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:56% center; }

/* Profile */
.gdl-founder-page .gdl-founder-profile { background:#fff; }
.gdl-founder-page .gdl-founder-profile-grid { display:grid; grid-template-columns:minmax(0,1.75fr) minmax(285px,.68fr); gap:clamp(38px,4.5vw,62px); align-items:start; }
.gdl-founder-page .gdl-founder-intro { max-width:780px; margin:0 0 24px; color:var(--fd-muted); font-size:.97rem; line-height:1.72; }
.gdl-founder-page .gdl-founder-timeline { display:grid; gap:0; margin:0; }
.gdl-founder-page .gdl-founder-timeline > div { display:grid; grid-template-columns:150px 1fr; gap:20px; padding:17px 0; border-top:1px solid var(--fd-line); }
.gdl-founder-page .gdl-founder-timeline dt { font-weight:800; }
.gdl-founder-page .gdl-founder-timeline dt span { display:inline-grid; width:30px; height:30px; margin-right:9px; place-items:center; border-radius:50%; background:var(--fd-pale); color:var(--fd-blue); font-size:.64rem; }
.gdl-founder-page .gdl-founder-timeline dd { margin:0; color:#415873; font-size:.92rem; line-height:1.58; }
.gdl-founder-page .gdl-founder-authority { display:grid; gap:0; align-content:start; }
.gdl-founder-page .gdl-founder-authority > div { display:grid; min-height:68px; padding:12px 18px; grid-template-columns:112px 1fr; align-items:center; border:1px solid var(--fd-line); border-bottom:0; background:#fff; }
.gdl-founder-page .gdl-founder-authority > div:first-child { border-radius:14px 14px 0 0; }
.gdl-founder-page .gdl-founder-authority > div:nth-child(4) { border-bottom:1px solid var(--fd-line); border-radius:0 0 14px 14px; }
.gdl-founder-page .gdl-founder-authority strong { color:var(--fd-blue); font-size:1.18rem; }
.gdl-founder-page .gdl-founder-authority span { color:var(--fd-muted); font-size:.81rem; }
.gdl-founder-page .gdl-founder-authority blockquote { margin:17px 0 0; padding:19px 21px; border:0; border-radius:14px; background:#edf7ff; color:#46617e; font-size:.87rem; line-height:1.62; }

/* Field photos: fixed landscape crop prevents portrait assets from expanding the page. */
.gdl-founder-page .gdl-founder-field { border-block:1px solid #e6eef7; background:var(--fd-soft); }
.gdl-founder-page .gdl-founder-section-heading { display:flex; margin-bottom:28px; gap:32px; align-items:end; justify-content:space-between; }
.gdl-founder-page .gdl-founder-section-heading > div { flex:1; }
.gdl-founder-page .gdl-founder-section-heading > a { flex:none; padding-bottom:4px; color:var(--fd-blue); font-size:.9rem; font-weight:780; text-decoration:none; }
.gdl-founder-page .gdl-founder-photo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.gdl-founder-page .gdl-founder-photo-grid article { min-width:0; overflow:hidden; border:1px solid var(--fd-line); border-radius:13px; background:#fff; box-shadow:0 10px 28px rgba(17,52,95,.055); }
.gdl-founder-page .gdl-founder-photo-grid img { display:block; width:100%; height:clamp(126px,11.5vw,166px); max-height:166px; object-fit:cover; }
.gdl-founder-page .gdl-founder-photo-grid article:first-child img { object-position:58% center; }
.gdl-founder-page .gdl-founder-photo-grid article:nth-child(2) img { object-position:center 42%; }
.gdl-founder-page .gdl-founder-photo-grid article:nth-child(3) img { object-position:52% center; }
.gdl-founder-page .gdl-founder-photo-grid article:nth-child(4) img { object-position:center 48%; }
.gdl-founder-page .gdl-founder-photo-grid article > div { padding:14px 15px 16px; }
.gdl-founder-page .gdl-founder-photo-grid strong { font-size:.94rem; }
.gdl-founder-page .gdl-founder-photo-grid p { margin:6px 0 0; color:var(--fd-muted); font-size:.78rem; line-height:1.52; }

/* Expertise / Impact / Philosophy */
.gdl-founder-page .gdl-founder-capabilities { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:28px; }
.gdl-founder-page .gdl-founder-capabilities article { display:grid; min-height:124px; padding:19px; grid-template-columns:42px minmax(0,1fr); grid-template-rows:auto auto; column-gap:12px; align-content:center; border:1px solid var(--fd-line); border-radius:14px; background:#fff; box-shadow:0 9px 25px rgba(17,52,95,.04); }
.gdl-founder-page .gdl-founder-capabilities span { display:grid; width:42px; height:42px; margin:0; grid-row:1 / 3; place-items:center; border-radius:50%; background:var(--fd-pale); color:var(--fd-blue); font-size:.69rem; font-weight:850; }
.gdl-founder-page .gdl-founder-capabilities h3 { margin:0 0 5px; font-size:1rem; line-height:1.3; }
.gdl-founder-page .gdl-founder-capabilities p { margin:0; color:var(--fd-muted); font-size:.82rem; line-height:1.55; }
.gdl-founder-page .gdl-founder-impact { background:linear-gradient(180deg,#fff,#f7fbff); }
.gdl-founder-page .gdl-founder-logo-strip { display:flex; margin-top:27px; gap:8px; align-items:stretch; }
.gdl-founder-page .gdl-founder-logo-strip span { display:grid; min-width:0; min-height:68px; padding:14px 17px; flex:1; place-items:center; border:1px solid transparent; border-radius:11px; color:#17345f; font-size:clamp(.9rem,1.25vw,1.13rem); font-weight:830; letter-spacing:-.025em; text-align:center; }
.gdl-founder-page .gdl-founder-logo-strip span:hover { border-color:var(--fd-line); background:#fff; }
.gdl-founder-page .gdl-founder-philosophy { border-block:1px solid #e4edf6; background:var(--fd-soft); }
.gdl-founder-page .gdl-founder-philosophy-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(560px,1.05fr); gap:55px; align-items:center; }
.gdl-founder-page .gdl-founder-values { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.gdl-founder-page .gdl-founder-values article { min-height:116px; padding:18px 13px; border:1px solid var(--fd-line); border-radius:13px; background:#fff; text-align:center; }
.gdl-founder-page .gdl-founder-values span,
.gdl-founder-page .gdl-founder-values strong,
.gdl-founder-page .gdl-founder-values small { display:block; }
.gdl-founder-page .gdl-founder-values span { margin-bottom:10px; color:var(--fd-blue); font-size:.67rem; font-weight:850; }
.gdl-founder-page .gdl-founder-values strong { font-size:.96rem; }
.gdl-founder-page .gdl-founder-values small { margin-top:6px; color:var(--fd-muted); font-size:.76rem; line-height:1.45; }

/* Final */
.gdl-founder-page .gdl-founder-final { padding-block:52px; background:radial-gradient(circle at 82% 25%,rgba(48,157,231,.18),transparent 34%),linear-gradient(135deg,#e9f5ff,#f5f9ff); }
.gdl-founder-page .gdl-founder-final-grid { display:grid; grid-template-columns:minmax(0,1.3fr) auto minmax(170px,.38fr); gap:30px; align-items:center; }
.gdl-founder-page .gdl-founder-final h2 { max-width:650px; color:var(--fd-blue); }
.gdl-founder-page .gdl-founder-final h2 + p { max-width:690px; margin:0; color:var(--fd-muted); font-size:.9rem; line-height:1.62; }
.gdl-founder-page .gdl-founder-actions { display:flex; gap:10px; }
.gdl-founder-page .gdl-founder-button { display:inline-flex; width:auto; min-height:49px; padding:12px 21px; align-items:center; justify-content:center; border:1px solid transparent; border-radius:8px; font-size:.9rem; font-weight:800; text-decoration:none; }
.gdl-founder-page .gdl-founder-button.is-primary { background:var(--fd-blue); box-shadow:0 10px 24px rgba(8,108,240,.18); color:#fff; }
.gdl-founder-page .gdl-founder-button.is-secondary { border-color:#c7d7ea; background:#fff; color:var(--fd-ink); }
.gdl-founder-page .gdl-founder-signature { margin:0; color:#2871c8; font-family:Georgia,serif; font-size:1rem; font-style:italic; line-height:1.5; transform:rotate(-4deg); }

@media (max-width:1100px) {
    .gdl-founder-page .gdl-founder-hero-grid { grid-template-columns:minmax(0,1fr) minmax(410px,.84fr); }
    .gdl-founder-page .gdl-founder-hero-copy { padding-right:30px; }
    .gdl-founder-page .gdl-founder-traits { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .gdl-founder-page .gdl-founder-philosophy-grid { grid-template-columns:1fr; }
}
@media (max-width:900px) {
    .gdl-founder-page .gdl-founder-hero-grid,
    .gdl-founder-page .gdl-founder-profile-grid { grid-template-columns:1fr; }
    .gdl-founder-page .gdl-founder-hero-copy { padding:58px 0 42px; }
    .gdl-founder-page .gdl-founder-hero-media { min-height:470px; }
    .gdl-founder-page .gdl-founder-photo-grid,
    .gdl-founder-page .gdl-founder-capabilities { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .gdl-founder-page .gdl-founder-photo-grid img { height:auto; max-height:none; aspect-ratio:16 / 9; }
    .gdl-founder-page .gdl-founder-logo-strip { display:grid; grid-template-columns:repeat(3,1fr); }
    .gdl-founder-page .gdl-founder-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .gdl-founder-page .gdl-founder-final-grid { grid-template-columns:1fr; }
    .gdl-founder-page .gdl-founder-signature { justify-self:end; }
}
@media (max-width:600px) {
    .gdl-founder-page .gdl-founder-container { width:min(100% - 32px,1240px); }
    .gdl-founder-page .gdl-founder-section { padding-block:58px; }
    .gdl-founder-page .gdl-founder-hero h1 { font-size:3.15rem; }
    .gdl-founder-page .gdl-founder-role { font-size:1.75rem; }
    .gdl-founder-page .gdl-founder-traits { grid-template-columns:1fr 1fr; }
    .gdl-founder-page .gdl-founder-quote { padding:18px; }
    .gdl-founder-page .gdl-founder-hero-media { min-height:360px; }
    .gdl-founder-page .gdl-founder-section h2 { font-size:1.9rem; }
    .gdl-founder-page .gdl-founder-timeline > div { grid-template-columns:1fr; gap:8px; }
    .gdl-founder-page .gdl-founder-section-heading { display:block; }
    .gdl-founder-page .gdl-founder-section-heading > a { display:inline-block; margin-top:16px; }
    .gdl-founder-page .gdl-founder-photo-grid,
    .gdl-founder-page .gdl-founder-capabilities,
    .gdl-founder-page .gdl-founder-values { grid-template-columns:1fr; }
    .gdl-founder-page .gdl-founder-logo-strip { grid-template-columns:1fr 1fr; }
    .gdl-founder-page .gdl-founder-actions { width:100%; flex-direction:column; }
    .gdl-founder-page .gdl-founder-button { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
    .gdl-founder-page .gdl-founder-button { transition:none; }
}
