/* Homepage branding aligned with the FSD product story. */
body.home-connection{
 --navy:#152346;--navy-rgb:21,35,70;--navy-deep:#111d39;
 --harbor:#335df4;--harbor-rgb:51,93,244;--harbor-deep:#2449d1;
 --ivory:#f6f7fb;--ivory-rgb:246,247,251;--ivory-2:#eef2fa;
 --paper:#fff;--paper-rgb:255,255,255;--panel:#fff;
 --teal-tint:#e9efff;--tint-rgb:233,239,255;
 --ochre:#c3b9e9;--ochre-tint:#eeebf7;--ochre-rgb:195,185,233;--ochre-deep:#625286;
 --slate:#46546d;--muted:#52617b;
 --f-display:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --f-body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --f-accent:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 background:#fff;color:var(--navy)
}
.home-connection .site-header{background:#ffffffeb;border-bottom:1px solid #15234616}
.home-connection .site-header .nav-trigger{font-size:16px;font-weight:600;color:#34445f}
.home-connection .site-header .nav-feature{font-size:15px;font-weight:600}
.home-connection .btn-primary{background:#335df4;border-color:#335df4;color:#fff}
.home-connection .btn-primary:hover{background:#2449d1;border-color:#2449d1}
.home-connection .hero h1 .hero-accent,.home-connection .hero h1 em{color:#335df4;font-style:normal}
.home-connection .hero .lede{color:#34445f!important;font-size:19px!important;line-height:1.7}
.home-connection h2 em,.home-connection h3 em{font-style:normal}
.home-connection .section-intro p:not(.eyebrow){color:#46546d;font-size:19px}
.home-connection .impact-section{background:#f6f7fb}
.home-connection .impact-chip:nth-child(3),.home-connection .community-tile,.home-connection .contact-tile,.home-connection .sector-tile:nth-child(3),.home-connection .tool-tile:nth-child(2){--slate:#46546d;--muted:#52617b}
.connection-story{background:#fff;color:#152346}
.connection-wrap{width:min(1120px,calc(100% - 80px));margin-inline:auto}
.connection-intro{padding:90px 0 56px;text-align:center}
.connection-story .connection-eyebrow{font:600 13px/1.6 var(--f-body);letter-spacing:.11em;text-transform:uppercase;color:#43597c;margin:0 0 22px}
.connection-story h2{font:650 clamp(38px,4.4vw,64px)/1.08 var(--f-display);letter-spacing:-.052em;margin:0}
.connection-intro h2 span{background:linear-gradient(110deg,#3158df,#756cc4 65%,#ae7da3);background-clip:text;-webkit-background-clip:text;color:transparent}
.connection-intro>p:last-child{font-size:20px;line-height:1.75;color:#46546d;margin:25px auto 0;max-width:850px}
.connection-feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap);align-items:center;padding:0 0 var(--grid-gap)}
.connection-feature figure{margin:0;overflow:hidden;border-radius:28px;aspect-ratio:1/1.05;background:#eff2f6}
.connection-feature img{width:100%;height:100%;object-fit:cover;object-position:48% center;display:block}
.connection-story h3{font:650 clamp(31px,3.3vw,46px)/1.12 var(--f-display);letter-spacing:-.046em}
.connection-feature-copy>p:not(.connection-eyebrow){font-size:18px;line-height:1.8;color:#46546d;margin-top:23px}
.connection-link{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#3155cb;text-decoration:none;line-height:1.6}
.connection-link:hover{text-decoration:underline;text-underline-offset:5px}
.connection-feature-copy .connection-link{margin-top:26px}
.connection-chapters{display:grid;grid-template-columns:1fr 1fr;gap:var(--grid-gap);padding-bottom:88px}
.connection-chapters article{background:#f5f6fb;border-radius:28px;overflow:hidden}
.connection-photo{aspect-ratio:1.55;background:#e9eef6;overflow:hidden}
.connection-photo img{width:100%;height:100%;object-fit:cover;display:block}
.connection-chapter-copy{padding:35px 38px 40px}
.connection-chapter-copy h3{font-size:34px}
.connection-chapter-copy>p:last-child{font-size:18px;line-height:1.8;color:#46546d;margin-top:22px}
.connection-purpose{background:radial-gradient(ellipse at 0 100%,#d5e4ff,transparent 65%),radial-gradient(ellipse at 100% 0,#ebddeb,transparent 60%),#f2f4fc;text-align:center;padding:82px 0 86px}
.connection-purpose h2{font-size:clamp(37px,4.5vw,65px);line-height:1.09}
.connection-purpose h2 span{color:#5373cf}
.connection-purpose p:not(.connection-eyebrow){max-width:720px;margin:28px auto 0;font-size:21px;line-height:1.7;color:#405575}
.connection-purpose p.connection-purpose-close{font-size:19px;color:#233859}
.connection-actions{display:flex;justify-content:center;align-items:center;gap:27px;flex-wrap:wrap;margin-top:30px}
.connection-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:13px 25px;min-height:48px;background:#335df4;color:#fff;border-radius:99px;font-size:16px;font-weight:600;text-decoration:none;transition:background .2s}
.connection-button:hover{background:#2449d1}
@media(max-width:1100px){.connection-feature{gap:var(--grid-gap)}.connection-feature-copy>p:not(.connection-eyebrow){font-size:17px}.connection-feature figure{aspect-ratio:1/1.2}.connection-chapter-copy{padding:28px}.home-connection .site-header .nav-trigger{font-size:14px}}
@media(max-width:760px){
 .connection-wrap{width:calc(100% - 36px)}.connection-intro{padding:58px 6px 35px}.connection-story .connection-eyebrow{font-size:12px;margin-bottom:18px}
 .connection-story h2{font-size:39px}.connection-intro>p:last-child{font-size:18px;margin-top:23px}.connection-desktop-break{display:none}
 .connection-feature{grid-template-columns:1fr;gap:var(--grid-gap);padding-bottom:var(--grid-gap)}.connection-feature figure{aspect-ratio:1.2;border-radius:22px}
 .connection-feature-copy{padding:0 10px}.connection-story h3{font-size:36px}.connection-feature-copy>p:not(.connection-eyebrow){font-size:18px;margin-top:19px}
 .connection-feature-copy .connection-link{font-size:15px}.connection-chapters{grid-template-columns:1fr;gap:var(--grid-gap);padding-bottom:52px}
 .connection-chapters article{border-radius:23px}.connection-photo{aspect-ratio:1.4}.connection-chapter-copy{padding:28px}.connection-chapter-copy h3{font-size:31px}
 .connection-chapter-copy>p:last-child{font-size:17px;margin-top:20px}.connection-purpose{padding:58px 0}.connection-purpose h2{font-size:38px}
 .connection-purpose p:not(.connection-eyebrow){font-size:19px;padding-inline:8px}.connection-purpose p.connection-purpose-close{font-size:17px}
 .connection-actions{gap:20px}.connection-actions .connection-link{font-size:14px}.home-connection .hero .lede{font-size:18px!important}
}
@media(prefers-reduced-motion:reduce){.connection-button{transition:none}}
@media print{.connection-feature,.connection-chapters article{break-inside:avoid}.connection-purpose{background:#fff}.connection-intro h2 span{color:#3158e2}}

/* A personal aside alongside the homepage purpose introduction. */
.connection-intro-row{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(32px,5vw,72px);align-items:center;padding:82px 0 58px}
.connection-intro-row .connection-intro{padding:0;text-align:left}
.connection-intro-row .connection-intro h2{font-size:clamp(38px,4.1vw,56px)}
.connection-intro-row .connection-intro>p:last-child{max-width:650px;margin-left:0}
.founder-note{border-left:1px solid #cbd2e6;padding:8px 0 8px 28px}
.connection-story .founder-note .connection-eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:14px;color:#625286}
.connection-story .founder-note h3{font-size:28px;line-height:1.15;letter-spacing:-.035em;margin:0 0 14px}
.founder-note>p:not(.connection-eyebrow){font-size:15px;line-height:1.75;color:#46546d;margin:0}
.founder-story-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;min-height:44px;color:#3155cb;font-size:14px;font-weight:600;line-height:1.55;text-decoration:none}
.founder-story-arrow{display:grid;place-items:center;flex:0 0 38px;height:38px;border:1px solid #cbd2e6;border-radius:50%;font-size:22px;transition:background .2s,color .2s}
.founder-story-link:hover .founder-story-arrow{background:#335df4;color:#fff;border-color:#335df4}
.founder-story-link:hover>span:first-child{text-decoration:underline;text-underline-offset:4px}
.founder-story-link:focus-visible{outline:3px solid #335df4;outline-offset:6px;border-radius:3px}
@media(max-width:900px){
 .connection-intro-row{grid-template-columns:minmax(0,1fr) 240px;gap:28px}
 .connection-intro-row .connection-intro h2{font-size:40px}
 .founder-note{padding-left:22px}
}
@media(max-width:760px){
 .connection-intro-row{grid-template-columns:1fr;padding:58px 6px 38px;gap:30px}
 .connection-intro-row .connection-intro h2{font-size:39px}
 .founder-note{border-left:0;border-top:1px solid #cbd2e6;padding:24px 0 0;max-width:440px}
 .connection-story .founder-note h3{font-size:27px}
 .founder-story-link{max-width:320px;margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.founder-story-arrow{transition:none}}

.home-journal{padding:78px 0 88px;background:#fff;color:#152346}
.home-journal-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}
.home-journal .connection-eyebrow{font:600 12px/1.6 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:#465775;margin:0 0 18px}
.home-journal h2{font:650 clamp(34px,3.8vw,52px)/1.1 var(--f-display);letter-spacing:-.05em;margin:0}
.home-journal-heading>.connection-link{margin-bottom:5px;white-space:nowrap}
.home-journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.home-journal-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-journal-card{min-width:0;border-bottom:1px solid #dce2ed;padding-bottom:25px}
.home-journal-image{display:block;border-radius:24px;overflow:hidden}
.home-journal-image img{display:block;width:100%;aspect-ratio:1.75;height:auto;object-fit:cover;transition:transform .25s}
.home-journal-card:hover img{transform:scale(1.025)}
.home-journal-copy{padding:22px 2px 0}
.home-journal-copy p.home-journal-meta{font-size:12px;font-weight:600;color:#485979;margin:0 0 14px;line-height:1.5}
.home-journal-meta span{padding:0 6px}
.home-journal h3{font:650 clamp(25px,2.6vw,32px)/1.2 var(--f-display);letter-spacing:-.035em;margin:0}
.home-journal h3 a{text-decoration:none;color:inherit}
.home-journal h3 a:hover{color:#3155cb}
.home-journal h3 span{color:#3155cb;font-size:23px}
.home-journal-copy>p:last-child{font-size:16px;line-height:1.75;color:#46546d;margin:16px 0 0}
.home-journal a:focus-visible{outline:3px solid #335df4;outline-offset:5px}
@media(max-width:760px){.home-journal{padding:52px 0}.home-journal-heading{align-items:start;flex-direction:column;gap:22px;margin-bottom:28px}.home-journal-grid,.home-journal-grid[data-count="3"]{grid-template-columns:1fr;gap:32px}.home-journal h2{font-size:37px}.home-journal h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.home-journal-image img{transition:none}}

.fsd-home{padding:76px 46px 44px;border-radius:30px;overflow:hidden;background:radial-gradient(ellipse at 15% 55%,#dfe9ff99,transparent 55%),radial-gradient(ellipse at 90% 45%,#f0e1f280,transparent 55%),#f7f8fc;color:#152346}
.fsd-home-copy{text-align:center;max-width:850px;margin:auto}
.fsd-home .eyebrow{color:#485979;font-size:12px;letter-spacing:.12em;margin-bottom:22px}
.fsd-home h2{font:650 clamp(42px,5.3vw,76px)/1.05 var(--f-display);letter-spacing:-.055em;margin:0}
.fsd-home h2>span{background:linear-gradient(110deg,#3158df,#756cc4 65%,#ae7da3);background-clip:text;-webkit-background-clip:text;color:transparent}
.fsd-home-lede{font-size:25px;line-height:1.4;font-weight:500;letter-spacing:-.025em;margin:24px 0 12px}
.fsd-home-description{font-size:18px;line-height:1.7;color:#46546d;max-width:640px;margin:0 auto}
.fsd-home-actions{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin-top:27px}
.fsd-home-preview{max-width:1100px;margin:48px auto 0}
.fsd-home-screen{padding:8px;border-radius:21px;background:#111d39;box-shadow:0 26px 55px -23px #20376360}
.fsd-home-screenbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 10px 11px;font-size:10px;color:#d3daee;letter-spacing:.06em;text-transform:uppercase}
.fsd-home-dots{font-size:10px;color:#a4b1cc}
.fsd-home-screen img{display:block;width:100%;height:auto;border-radius:12px}
.fsd-home-preview figcaption{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:20px;font-size:12px;line-height:1.6;color:#46546d}
.fsd-home-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;max-width:1100px;margin:40px auto 0;padding-top:28px;border-top:1px solid #d6ddeb}
.fsd-home-pillars>div>span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#485979;font-weight:600}
.fsd-home-pillars h3{font-size:23px;line-height:1.2;letter-spacing:-.03em;margin:13px 0 10px}
.fsd-home-pillars p{font-size:15px;line-height:1.7;color:#46546d;margin:0}
.fsd-home a:focus-visible{outline:3px solid #335df4;outline-offset:6px}
@media(max-width:760px){.fsd-home{padding:46px 20px 30px;border-radius:24px}.fsd-home h2{font-size:44px}.fsd-home-lede{font-size:21px}.fsd-home-description{font-size:17px}.fsd-home-actions{gap:20px}.fsd-home-actions .connection-link{font-size:14px}.fsd-home-preview{margin-top:35px}.fsd-home-screen{padding:5px;border-radius:13px}.fsd-home-screenbar{font-size:7px;padding:3px 5px 7px;gap:6px}.fsd-home-screen img{border-radius:8px}.fsd-home-preview figcaption{font-size:11px;gap:6px}.fsd-home-pillars{grid-template-columns:1fr;gap:25px;margin-top:28px}.fsd-home-pillars h3{font-size:25px}}

/* The mission connects our personal purpose with the standard we build toward. */
.home-mission{background:linear-gradient(115deg,#e9efff,#eeebf7 65%,#e6f1eb);padding:68px 0;color:#152346}
.mission-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.home-mission h2{font-size:clamp(32px,3.8vw,51px);line-height:1.12;letter-spacing:-.04em;margin:18px 0 0}
.home-mission h2 span{color:#3155bd}
.mission-copy p{font-size:17px;line-height:1.75;color:#46536b;margin:0 0 19px}
.mission-copy p.mission-lead{font-size:20px;line-height:1.6;color:#152346}
.mission-copy .connection-link{display:inline-flex;margin-top:8px;font-size:15px}
@media(max-width:760px){.home-mission{padding:48px 0}.mission-layout{grid-template-columns:1fr;gap:28px}.home-mission h2{font-size:35px}.mission-copy p.mission-lead{font-size:19px}.mission-copy p{font-size:16px}}

.mission-showcase{width:100%;max-width:460px;margin:34px 0 0;overflow:hidden;mask-image:radial-gradient(ellipse 65% 65% at 50% 50%,#000 50%,transparent 95%);-webkit-mask-image:radial-gradient(ellipse 65% 65% at 50% 50%,#000 50%,transparent 95%)}
.mission-showcase img{display:block;width:100%;height:auto}
@media(max-width:760px){.mission-showcase{max-width:400px;margin:24px auto 0}}

.mission-showcase{overflow:visible;mask-image:none;-webkit-mask-image:none}.mission-showcase img{filter:drop-shadow(0 12px 12px rgba(21,35,70,.13))}
