/* Founder and firm-story blocks: Our Firm spotlight, Leadership feature, credentials, Our Story timeline. */
.fdr-k { display: inline-flex; align-items: center; gap: 10px; font: 700 .72rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--az-ink, #1F55C4); }
.fdr-k::before { content: ""; width: 9px; height: 9px; background: var(--az, #5B9BFF); transform: rotate(45deg); }

/* Our Firm: founder spotlight */
.fdr-spot { background: #F6F4EF; padding-block: clamp(56px, 7vw, 104px); }
.fdr-spot__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.fdr-spot__pic { position: relative; margin: 0; border-radius: 22px; overflow: hidden; aspect-ratio: 4 / 5; box-shadow: 0 40px 80px -40px rgba(5,11,26,.45); }
.fdr-spot__pic img { width: 100%; height: 100%; object-fit: cover; }
.fdr-spot__pic::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 58%, rgba(5,11,26,.82)); }
.fdr-spot__pic figcaption { position: absolute; left: 22px; right: 22px; bottom: 20px; z-index: 1; display: grid; gap: 4px; color: #fff; }
.fdr-spot__pic figcaption b { font: 700 1.3rem/1.1 var(--sans); letter-spacing: -.02em; }
.fdr-spot__pic figcaption span { font-size: .85rem; letter-spacing: .06em; opacity: .8; }
.fdr-spot__body { display: grid; gap: 22px; }
.fdr-spot__body h2 { font: 400 clamp(1.7rem, 3vw, 2.6rem)/1.18 var(--accent); letter-spacing: -.01em; color: var(--ink); }
.fdr-spot__body h2 em { color: var(--az-ink, #1F55C4); }
.fdr-spot__body p { font-size: 1.08rem; max-width: 60ch; }
.fdr-spot .btns { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }

/* Leadership: founder feature */
.fdr { background: linear-gradient(180deg, #F6F4EF, #FFFFFF); padding-block: clamp(64px, 8vw, 120px); }
.fdr__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(36px, 6vw, 100px); align-items: start; }
.fdr__pics { position: relative; padding: 0 0 18% 0; }
.fdr__pics figure { margin: 0; overflow: hidden; border-radius: 22px; }
.fdr__pics img { width: 100%; height: 100%; object-fit: cover; }
.fdr__a { width: 78%; aspect-ratio: 3 / 4; box-shadow: 0 50px 90px -45px rgba(5,11,26,.55); }
.fdr__b { position: absolute; right: 0; bottom: 0; width: 44%; aspect-ratio: 3 / 4; border: 8px solid #fff; box-shadow: 0 30px 60px -30px rgba(5,11,26,.5); }
.fdr__badge { position: absolute; left: 6%; bottom: 6%; display: flex; gap: 8px; }
.fdr__badge b { padding: 10px 14px; border-radius: 999px; background: #050B1A; color: #fff; font: 700 .78rem/1 var(--sans); letter-spacing: .14em; box-shadow: 0 0 0 4px rgba(91,155,255,.35); }
.fdr__body { display: grid; gap: 18px; position: sticky; top: calc(var(--hdr-h) + 24px); }
.fdr__body h2 { display: grid; gap: 10px; font: 700 clamp(2.2rem, 4.4vw, 3.6rem)/1 var(--sans); letter-spacing: -.04em; color: var(--ink); }
.fdr__body h2 small { font: 600 .9rem/1 var(--sans); letter-spacing: .22em; color: var(--az-ink, #1F55C4); }
.fdr__lead { font: 400 clamp(1.2rem, 1.7vw, 1.45rem)/1.5 var(--accent); color: var(--ink); }
.fdr__body p { max-width: 62ch; }
.fdr__body .btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }

.fdr-pr { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.fdr-pr > div { display: grid; gap: 10px; align-content: start; padding: 26px; border-radius: 18px; border: 1px solid rgba(255,255,255,.12); background: linear-gradient(180deg, rgba(91,155,255,.08), rgba(255,255,255,.02)); }
.fdr-pr .mono { color: var(--az, #5B9BFF); }
.fdr-pr strong { font-size: 1.12rem; line-height: 1.25; color: #fff; }
.fdr-pr p { font-size: .95rem; color: var(--on-dark-2); }

/* Expertise: CISA / CISM */
.fdr-cred { background: #F6F4EF; padding-block: clamp(56px, 7vw, 100px); }
.fdr-cred__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.fdr-cred__grid > div:first-child { display: grid; gap: 18px; justify-items: start; }
.fdr-cred h2 { font: 700 clamp(2rem, 3.6vw, 3rem)/1.05 var(--sans); letter-spacing: -.035em; color: var(--ink); }
.fdr-cred h2 em { font-family: var(--accent); font-weight: 400; color: var(--az-ink, #1F55C4); }
.fdr-cred__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.fdr-cred__cards > div { display: grid; gap: 10px; align-content: start; padding: 28px; border-radius: 20px; background: #fff; border: 1px solid #DEDAD1; box-shadow: 0 24px 50px -36px rgba(5,11,26,.4); }
.fdr-cred__cards b { font: 800 2.4rem/1 var(--sans); letter-spacing: -.04em; color: #050B1A; }
.fdr-cred__cards b::after { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 8px; background: var(--az, #5B9BFF); transform: rotate(45deg); }
.fdr-cred__cards strong { font-size: 1rem; color: var(--ink); }
.fdr-cred__cards p { font-size: .94rem; }

/* Our Story: timeline */
.fdr-tl { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 16px; margin-top: 8px; }
.fdr-tl li { display: grid; grid-template-columns: auto 1fr; gap: 18px; padding: 24px; border-radius: 18px; border: 1px solid var(--line); background: var(--white); }
.fdr-tl__y { font: 800 1.5rem/1 var(--sans); letter-spacing: -.03em; color: var(--az, #5B9BFF); }
.fdr-tl h3 { font-size: 1.08rem; margin-bottom: 6px; color: var(--ink); }
.fdr-tl p { font-size: .94rem; }
.fdr-tl li:last-child { background: linear-gradient(135deg, rgba(91,155,255,.18), rgba(91,155,255,.04)); border-color: rgba(91,155,255,.45); }

/* Contact: founder office card + social row */
.fdr-office { display: grid; grid-template-columns: 120px 1fr; gap: 20px; align-items: center; padding: 20px; border-radius: 18px; border: 1px solid var(--line); background: var(--white); }
.fdr-office img { width: 120px; height: 120px; object-fit: cover; object-position: 50% 15%; border-radius: 14px; }
.fdr-office b { display: block; font-size: 1.05rem; color: var(--ink); }
.fdr-office span { display: block; font-size: .9rem; color: var(--muted); margin: 4px 0 8px; }
.fdr-office a { font-weight: 600; }
.fdr-soc { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.fdr-soc a { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 999px; border: 1px solid var(--line-2); font-size: .88rem; font-weight: 600; text-decoration: none; color: var(--ink); transition: background .2s, border-color .2s, color .2s; }
.fdr-soc a:hover { background: var(--az, #5B9BFF); border-color: var(--az, #5B9BFF); color: #04122E; }

@media (max-width: 1000px) {
  .fdr-spot__grid, .fdr__grid, .fdr-cred__grid { grid-template-columns: 1fr; }
  .fdr__body { position: static; }
  .fdr-pr { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .fdr-pr, .fdr-cred__cards { grid-template-columns: 1fr; }
  .fdr-spot__pic { aspect-ratio: 4 / 4.6; }
  .fdr-office { grid-template-columns: 84px 1fr; }
  .fdr-office img { width: 84px; height: 84px; }
}
