/* Givers Capital design tokens and components. Light by default, .dark flips the surface. */
.gc{
  --navy:#0F2A4A; --navy-700:#0B1E36; --navy-500:#1B4473; --navy-100:#D9E3EF; --navy-50:#EAF0F7;
  --gold:#C9A24A; --gold-700:#8A6A1F; --gold-100:#EFE3C2; --gold-50:#F7F1E1;
  --cream:#F6F4EF; --ink:#1C2430; --ink-2:#5B6470; --ink-3:#8A93A0;
  --line:#E3E6E9; --line-2:#CFD5DC;
  --success:#1E7B4F; --success-50:#E6F4EC; --warning:#B45309; --warning-50:#FBEEDF; --error:#B3261E; --error-50:#FBE7E5;
  --bg:#FFFFFF; --bg-2:#F6F4EF; --surface:#FFFFFF; --surface-2:#F3F5F7; --text:#1C2430; --muted:#5B6470; --faint:#8A93A0; --border:#E3E6E9;
  --primary:#0F2A4A; --primary-text:#FFFFFF; --primary-hover:#0B1E36; --accent:#C9A24A; --accent-text:#7A5C14; --link:#0F2A4A;
  --tint:#EAF0F7; --vetted-bg:#EAF0F7; --vetted-border:#0F2A4A; --vetted-text:#0F2A4A;
  --shadow:0 1px 2px rgba(16,24,40,0.05);
  --mark:#0F2A4A; --roundel-bg:#0F2A4A; --roundel-fg:#FFFFFF; --ring:#8A93A0;
  background:var(--bg); color:var(--text); font-family:Poppins,sans-serif; font-size:15px; line-height:1.5;
}
.gc.dark{
  --bg:#0B1E36; --bg-2:#0F2A4A; --surface:#14304F; --surface-2:#1A3A5E; --text:#FFFFFF; --muted:#B9C3D0; --faint:#8A9BB0; --border:rgba(255,255,255,0.14);
  --primary:#C9A24A; --primary-text:#0B1E36; --primary-hover:#D9B566; --accent:#C9A24A; --accent-text:#E6CF8E; --link:#E6CF8E;
  --tint:rgba(255,255,255,0.08); --vetted-bg:rgba(255,255,255,0.08); --vetted-border:rgba(255,255,255,0.35); --vetted-text:#FFFFFF;
  --success:#4FC38A; --success-50:rgba(79,195,138,0.16); --warning:#F0A24B; --warning-50:rgba(240,162,75,0.16); --error:#F08A80; --error-50:rgba(240,138,128,0.16);
  --shadow:none;
  --mark:#FFFFFF; --roundel-bg:#F6F4EF; --roundel-fg:#0F2A4A; --ring:#8A9BB0;
}
.gc *{box-sizing:border-box}
.gc a{color:var(--link)}
.gc .display{font-family:Fraunces,serif;font-weight:600;letter-spacing:-0.015em;line-height:1.1;margin:0}
.gc .h1{font-size:52px} .gc .h2{font-size:36px} .gc .h3{font-size:26px}
.gc .t-lg{font-size:18px;line-height:1.55} .gc .t-md{font-size:15px} .gc .t-sm{font-size:13px} .gc .t-xs{font-size:11px}
.gc .muted{color:var(--muted)} .gc .faint{color:var(--faint)}
.gc .eyebrow{font-size:12px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}
.gc .wordmark{font-family:Fraunces,serif;font-weight:600;letter-spacing:-0.015em;line-height:1;color:var(--text)}
.gc .container{max-width:1200px;margin:0 auto;padding:0 24px}
.gc .section{padding:72px 0}
.gc .row{display:flex;gap:16px;align-items:center}
.gc .stack{display:flex;flex-direction:column;gap:12px}
.gc .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.gc .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gc .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gc .card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:22px;box-shadow:var(--shadow)}
.gc .card-flat{background:var(--surface-2);border-radius:12px;padding:12px}
.gc .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:10px;font-weight:600;font-size:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;font-family:Poppins,sans-serif;white-space:nowrap}
.gc .btn-primary{background:var(--primary);color:var(--primary-text)}
.gc .btn-secondary{background:transparent;color:var(--text);border-color:var(--text)}
.gc .btn-tertiary{background:transparent;color:var(--link);padding:0 6px;text-decoration:underline;text-underline-offset:3px}
.gc .btn-gold{background:#C9A24A;color:#0B1E36}
.gc .btn-sm{height:36px;padding:0 14px;font-size:13px;border-radius:8px}
.gc .btn-lg{height:52px;padding:0 26px;font-size:16px;border-radius:12px}
.gc .btn-disabled{background:var(--surface-2);color:var(--faint);border-color:transparent}
.gc .field{display:flex;flex-direction:column;gap:6px}
.gc .label{font-size:13px;font-weight:600;color:var(--text)}
.gc .hint{font-size:12px;color:var(--muted)}
.gc .input{height:44px;border:1px solid var(--line-2);border-radius:10px;padding:0 14px;background:var(--surface);color:var(--text);font-family:Poppins,sans-serif;font-size:14px;width:100%}
.gc.dark .input{border-color:var(--border)}
.gc textarea.input{height:auto;min-height:110px;padding:12px 14px;resize:vertical}
.gc .input-focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(15,42,74,0.15)}
.gc.dark .input-focus{border-color:#C9A24A;box-shadow:0 0 0 3px rgba(201,162,74,0.25)}
.gc .input-error{border-color:var(--error)}
.gc .select{display:flex;align-items:center;justify-content:space-between;gap:8px}
.gc .check{display:flex;gap:10px;align-items:flex-start;font-size:14px}
.gc .check .box{width:20px;height:20px;border-radius:5px;border:1.5px solid var(--line-2);flex-shrink:0;margin-top:2px;background:var(--surface)}
.gc .check .box.on{background:var(--navy);border-color:var(--navy)}
.gc.dark .check .box.on{background:#C9A24A;border-color:#C9A24A}
.gc .chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:17px;border:1px solid var(--line-2);background:var(--surface);font-size:13px;font-weight:500;color:var(--text);white-space:nowrap}
.gc.dark .chip{border-color:var(--border)}
.gc .chip.on{background:var(--navy);color:#FFFFFF;border-color:var(--navy)}
.gc.dark .chip.on{background:#FFFFFF;color:#0B1E36;border-color:#FFFFFF}
.gc .tabs{display:flex;gap:4px;border-bottom:1px solid var(--border)}
.gc .tab{padding:12px 16px;font-size:14px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;text-decoration:none}
.gc .tab.on{color:var(--text);border-bottom-color:var(--accent);font-weight:600}
.gc .tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:500;white-space:nowrap}
.gc .tag-navy{background:var(--tint);color:var(--text)}
.gc .tag-success{background:var(--success-50);color:var(--success)}
.gc .tag-warning{background:var(--warning-50);color:var(--warning)}
.gc .tag-error{background:var(--error-50);color:var(--error)}
.gc .vetted{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px 0 4px;border-radius:12px;background:var(--vetted-bg);border:1px solid var(--vetted-border);color:var(--vetted-text);font-size:12px;font-weight:600;white-space:nowrap}
.gc .vetted-solid{background:#0F2A4A;border-color:#0F2A4A;color:#FFFFFF}
.gc.dark .vetted-solid{background:#FFFFFF;border-color:#FFFFFF;color:#0B1E36}
.gc .notvetted{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px 0 4px;border-radius:12px;background:transparent;border:1px solid var(--line-2);color:var(--muted);font-size:12px;font-weight:500;white-space:nowrap}
.gc.dark .notvetted{border-color:var(--border)}
.gc .sponsored{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:4px;border:1px solid var(--line-2);background:transparent;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;white-space:nowrap}
.gc.dark .sponsored{border-color:var(--border);color:var(--muted)}
.gc .alert{display:flex;gap:12px;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-size:14px;align-items:flex-start}
.gc .alert-info{background:var(--tint)}
.gc .alert-success{background:var(--success-50);border-color:transparent}
.gc .alert-warning{background:var(--warning-50);border-color:transparent}
.gc .alert-error{background:var(--error-50);border-color:transparent}
.gc .alert .dot{width:10px;height:10px;border-radius:50%;margin-top:6px;flex-shrink:0}
.gc .table{width:100%;border-collapse:collapse;font-size:14px}
.gc .table th{text-align:left;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);padding:12px 14px;border-bottom:1px solid var(--border)}
.gc .table td{padding:14px;border-bottom:1px solid var(--border);vertical-align:middle}
.gc .table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.gc .stat{display:flex;flex-direction:column;gap:2px}
.gc .stat .k{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);font-weight:600}
.gc .stat .v{font-size:15px;font-weight:600;color:var(--text)}
.gc .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gc .stats .card-flat{padding:10px}
.gc .avatar{width:40px;height:40px;border-radius:50%;background:var(--navy-100);flex-shrink:0}
.gc.dark .avatar{background:rgba(255,255,255,0.16)}
.gc .logo-box{width:48px;height:48px;border-radius:12px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-family:Fraunces,serif;font-weight:600;font-size:18px;color:var(--text);flex-shrink:0}
.gc .divider{height:1px;background:var(--border)}
.gc .nav{display:flex;align-items:center;justify-content:space-between;gap:24px;height:72px;flex-wrap:wrap}
.gc .nav-links{display:flex;gap:4px;flex-wrap:wrap}
.gc .nav-link{padding:8px 12px;font-size:14px;font-weight:500;color:var(--muted);text-decoration:none;border-radius:8px}
.gc .nav-link.on{color:var(--text);background:var(--surface-2)}
.gc .footer{background:var(--bg-2);border-top:1px solid var(--border)}
.gc .hero{padding:88px 0 64px}
.gc .modal-backdrop{background:rgba(11,30,54,0.55);padding:40px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.gc .modal{background:var(--surface);border-radius:20px;padding:28px;width:100%;max-width:520px;box-shadow:0 20px 60px rgba(0,0,0,0.25);border:1px solid var(--border)}
.gc .disclaimer{font-size:12px;line-height:1.6;color:var(--muted)}
.gc .side{flex:0 1 280px;min-width:220px}
.gc .main{flex:999 1 560px;min-width:0}
.gc .two{display:flex;gap:32px;flex-wrap:wrap;align-items:flex-start}
.gc .progress{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}
.gc .progress span{display:block;height:100%;background:var(--accent)}
.gc .show-m{display:none}
.gc .page{min-height:100vh;display:flex;flex-direction:column}
.gc .page-body{flex-grow:1}
.gc .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gc .step-n{width:40px;height:40px;border-radius:50%;background:var(--tint);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--text)}
.gc .kpi{font-size:32px;font-weight:600;letter-spacing:-0.01em;line-height:1.1}
.gc .side-nav{display:flex;flex-direction:column;gap:2px}
.gc .side-nav a{padding:10px 12px;border-radius:8px;font-size:14px;font-weight:500;color:var(--muted);text-decoration:none}
.gc .side-nav a.on{background:var(--tint);color:var(--text);font-weight:600}
@media (max-width:860px){.gc .steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.gc .show-m{display:inline-flex}.gc .steps{grid-template-columns:minmax(0,1fr)}.gc .kpi{font-size:26px}}
@media (max-width:860px){
  .gc .grid-3,.gc .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gc .h1{font-size:38px} .gc .h2{font-size:30px}
  .gc .section{padding:48px 0} .gc .hero{padding:56px 0 40px}
}
@media (max-width:600px){
  .gc .grid-2,.gc .grid-3,.gc .grid-4{grid-template-columns:minmax(0,1fr)}
  .gc .h1{font-size:34px} .gc .h2{font-size:26px} .gc .h3{font-size:22px}
  .gc .nav{height:auto;padding:12px 0}
  .gc .stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gc .hide-m{display:none}
}
