.subhero { padding-top: 150px; padding-bottom: 8px; position:relative; overflow:hidden; }
.subhero::before { content:""; position:absolute; top:-280px; right:-160px; width:660px;height:660px; background: radial-gradient(closest-side, color-mix(in oklab,var(--brand-purple) 12%, transparent), transparent 70%); pointer-events:none; }
.subhero .pill { margin-bottom:24px; }
.subhero .lead { max-width:640px; margin-top:24px; }

/* facts */
.facts { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.fact { background:var(--surface); padding:28px clamp(18px,2.4vw,30px); }
.fact .fk{ font-family:var(--mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--brand-blue); }
.fact .fn{ font-weight:700; font-size:18px; margin-top:12px; letter-spacing:-0.01em; }
.fact .fd{ color:var(--ink-2); font-size:14px; margin-top:8px; line-height:1.5; }
@media (max-width:820px){ .facts{ grid-template-columns:1fr 1fr; } }

/* vision/mission */
.vm { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.vmc { border:1px solid var(--line); border-radius:18px; padding:38px; background:var(--surface); position:relative; overflow:hidden; }
.vmc.dark{ background:var(--dark); color:#fff; }
.vmc.dark::before{ content:""; position:absolute; inset:0; background:var(--brand-grad); opacity:.16; }
.vmc.dark > *{ position:relative; }
.vmc .vk{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--brand-blue); }
.vmc.dark .vk{ color:#8db4ff; }
.vmc .vt{ font-size:clamp(22px,2.2vw,28px); font-weight:700; letter-spacing:-0.02em; margin-top:16px; line-height:1.2; }
@media (max-width:720px){ .vm{ grid-template-columns:1fr; } }

/* EPIIC */
.epiic { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; }
.epi { background:var(--surface); padding:30px 24px; transition:background .3s; }
.epi:hover{ background:var(--bg-2); }
.epi .el{ font-size:44px; font-weight:800; letter-spacing:-0.04em; line-height:1; background:var(--brand-grad); -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent; }
.epi .en{ font-family:var(--mono); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink); margin-top:16px; font-weight:600; }
.epi .ed{ color:var(--ink-2); font-size:13.5px; margin-top:10px; line-height:1.5; }
@media (max-width:900px){ .epiic{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .epiic{ grid-template-columns:1fr; } }

/* leadership */
.leaders { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.leader { border:1px solid var(--line); border-radius:16px; padding:26px; background:var(--surface); transition:border-color .3s, transform .3s; }
.leader:hover{ border-color: color-mix(in oklab,var(--brand-blue) 30%,var(--line)); transform:translateY(-3px); }
.leader .lav{ width:54px;height:54px;border-radius:14px; background:var(--brand-grad); color:#fff; display:flex;align-items:center;justify-content:center; font-weight:700; font-size:18px; margin-bottom:18px; overflow:hidden; }
.leader .lav img{ width:100%; height:100%; object-fit:cover; border-radius:inherit; display:block; }
.leader .ln{ font-weight:700; font-size:18px; letter-spacing:-0.01em; }
.leader .lr{ color:var(--brand-blue); font-size:14px; font-weight:600; margin-top:4px; }
.leader .lx{ color:var(--muted); font-size:13.5px; margin-top:10px; font-family:var(--mono); }
@media (max-width:860px){ .leaders{ grid-template-columns:1fr; } }

/* our story: big founders photo + narrative */
.founder-photo { position:relative; width:100%; aspect-ratio:16/9; border-radius:22px; overflow:hidden; border:1px solid var(--line); margin:0; background:linear-gradient(135deg, color-mix(in oklab,var(--brand-blue) 13%, var(--surface)), color-mix(in oklab,var(--brand-purple) 13%, var(--surface))); background-size:cover; background-position:center 28%; box-shadow:0 30px 70px -46px rgba(28,40,90,.4); }
.founder-photo::after { content:""; position:absolute; inset:0; background-image:radial-gradient(circle at 1px 1px, color-mix(in oklab,var(--ink) 7%, transparent) 1px, transparent 0); background-size:22px 22px; opacity:.5; pointer-events:none; }
.founder-photo.has-img::after { display:none; }
.founder-photo .fp-ph { position:absolute; inset:0; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:var(--muted); }
.founder-photo .fp-ph svg { width:46px; height:46px; opacity:.7; }
.founder-photo .fp-ph span { font-family:var(--mono); font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
@media (max-width:700px){ .founder-photo{ aspect-ratio:4/3; } }

.story { max-width:760px; margin:clamp(34px,4.5vw,56px) auto 0; }
.story p { color:var(--ink-2); font-size:clamp(16px,1.25vw,17.5px); line-height:1.78; margin:0 0 20px; text-wrap:pretty; }
.story p:last-of-type { margin-bottom:0; }
.story p strong { color:var(--ink); font-weight:700; }
.story p em { font-style:italic; color:var(--ink); }
.story .story-lede { font-size:clamp(19px,1.7vw,23px); line-height:1.55; letter-spacing:-0.01em; color:var(--ink); font-weight:500; margin-bottom:24px; text-wrap:balance; }
.story .founder-credits { display:flex; flex-wrap:wrap; gap:10px 26px; margin:30px 0 0; padding-top:24px; border-top:1px solid var(--line); }
.story .founder-credits span { font-size:14px; color:var(--muted); }
.story .founder-credits span b { color:var(--ink); font-weight:700; }
.story .story-team { font-size:13.5px; color:var(--muted); margin-top:16px; }

.backers { margin-top:30px; border-top:1px solid var(--line); padding-top:28px; display:flex; align-items:center; gap:28px; flex-wrap:wrap; }
.backers .bl{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--faint); }
.backers .bi{ font-weight:600; font-size:16px; color:var(--ink-2); }

/* contact */
.contact { display:grid; grid-template-columns: 0.9fr 1.1fr; gap:clamp(28px,5vw,64px); }
.contact-info .ci-row{ display:flex; gap:14px; align-items:flex-start; padding:18px 0; border-top:1px solid var(--line); }
.contact-info .ci-row:first-of-type{ border-top:none; }
.contact-info .ci-ic{ width:38px;height:38px;border-radius:10px; background:var(--bg-2); display:flex;align-items:center;justify-content:center; flex-shrink:0; }
.contact-info .ci-ic svg{ width:18px;height:18px;stroke:var(--brand-blue);fill:none;stroke-width:1.8; }
.contact-info .ci-k{ font-family:var(--mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.contact-info .ci-v{ font-weight:600; font-size:16px; margin-top:3px; }
.cform { background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:clamp(24px,3vw,36px); }
.cform .frow{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.field{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px; }
.field label{ font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.field input, .field textarea, .field select{
  font-family:var(--sans); font-size:15px; color:var(--ink); background:var(--bg);
  border:1px solid var(--line); border-radius:10px; padding:12px 14px; width:100%; transition:border-color .2s, box-shadow .2s;
}
.field input:focus, .field textarea:focus, .field select:focus{ outline:none; border-color:var(--brand-blue); box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-blue) 14%,transparent); }
.field textarea{ resize:vertical; min-height:96px; }
.cform .btn{ width:100%; justify-content:center; }
.cform-done{ display:none; text-align:center; padding:30px 10px; }
.cform-done.show{ display:block; }
.cform-done .cd-ic{ width:56px;height:56px;border-radius:50%; background:color-mix(in oklab,#16b364 16%,transparent); display:flex;align-items:center;justify-content:center; margin:0 auto 18px; }
.cform-done .cd-ic svg{ width:28px;height:28px;stroke:#16b364;fill:none;stroke-width:2.4; }
@media (max-width:820px){ .contact{ grid-template-columns:1fr; } .cform .frow{ grid-template-columns:1fr; } }
