@import url('https://fonts.googleapis.com/css2?family=Newsreader:opsz,wght@6..72,400;6..72,500&family=Nunito:wght@400;600;700;800&display=swap');
:root { --bg0:#fff; --bg1:#fafafa; --surface:#fff; --surface2:#f4f4f5; --ink:#303033; --ink2:#737378; --concrete:#2b313b; --line:rgba(48,48,51,.10); --purple:#6540d4; --purple2:#7758ec; --serif:"Newsreader",Georgia,"Times New Roman",serif; --sans:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif; --r:22px; --shadow:0 1px 2px rgba(80,80,80,.05),0 14px 30px rgba(80,80,80,.10); }
* { box-sizing:border-box; }
body { margin:0; background:linear-gradient(180deg,var(--bg0),var(--bg1)); color:var(--ink); font-family:var(--sans); -webkit-font-smoothing:antialiased; }
a { color:inherit; }
.topbar, main, footer { width:min(1180px,calc(100% - 48px)); margin:auto; }
.topbar { height:70px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; gap:9px; align-items:center; color:var(--ink); font:500 21px/1 var(--serif); letter-spacing:-.012em; text-decoration:none; }
.brand-green { color:#20a66a; }
.brand-mark { display:block; width:30px; height:30px; flex:none; }
.beta-tag { padding:4px 8px; color:var(--ink2); background:var(--surface2); border:1px solid var(--line); border-radius:999px; font:800 .58rem/1 var(--sans); letter-spacing:.1em; text-transform:uppercase; }
.topbar nav { display:flex; align-items:center; gap:4px; color:var(--ink2); font-size:13.5px; }
.topbar nav a { padding:9px 14px; border-radius:999px; text-decoration:none; font-weight:600; } .topbar nav a:hover,.text-link:hover { color:var(--ink); background:var(--surface2); } .nav-quiet { color:var(--ink); }
.hero { min-height:600px; display:grid; grid-template-columns:1fr .88fr; align-items:center; gap:72px; padding:80px 0 108px; }
.kicker { display:flex; align-items:center; gap:9px; margin:0 0 18px; color:var(--ink2); font:800 10.5px/1 var(--sans); letter-spacing:.12em; text-transform:uppercase; }
.dot { width:8px; height:8px; border-radius:50%; background:#6b6b70; box-shadow:0 0 0 4px rgba(107,107,112,.14); }
h1,h2,h3 { font-family:var(--serif); font-weight:400; letter-spacing:-.016em; } h1 { margin:0 0 23px; font-size:clamp(48px,5.8vw,72px); line-height:1.02; } h1 em { color:var(--ink); font-style:italic; }
.lede { max-width:465px; margin:0 0 29px; color:var(--ink2); font:17px/1.55 var(--serif); }
.actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.btn { display:inline-flex; align-items:center; gap:18px; padding:13px 22px; border-radius:999px; background:linear-gradient(140deg,var(--purple2),var(--purple)); color:#fff; font:700 13.5px var(--sans); text-decoration:none; box-shadow:0 2px 5px rgba(70,60,90,.08),0 16px 32px rgba(70,60,90,.22); }
.btn b { font-size:18px; font-weight:400; } .btn-small { padding:8px 14px; font-size:12px; } .text-link { padding:12px 10px; border-radius:999px; color:var(--purple); font:700 13.5px var(--sans); text-decoration:none; } .note { margin:27px 0 0; color:#9a9a9f; font-size:11px; }
.goal-cloud { position:relative; min-height:430px; overflow:hidden; border:1px solid var(--line); border-radius:var(--r); background:radial-gradient(circle at 50% 48%,#fff 0,#faf9ff 44%,#f3f1ff 100%); box-shadow:var(--shadow); transform:rotate(1deg); } .goal-cloud::before,.goal-cloud::after { content:""; position:absolute; border:1px solid rgba(101,64,212,.16); border-radius:50%; } .goal-cloud::before { width:300px; height:300px; left:calc(50% - 150px); top:65px; } .goal-cloud::after { width:180px; height:180px; left:calc(50% - 90px); top:125px; } .goal-cloud > p { position:absolute; top:18px; left:20px; margin:0; color:var(--ink2); font:800 10px var(--sans); letter-spacing:.1em; text-transform:uppercase; } .goal-examples { --orbit-radius:120px; position:absolute; inset:0; } .goal-examples div { position:absolute; z-index:1; top:calc(50% - 60px); left:calc(50% - 60px); display:flex; width:120px; height:120px; align-items:center; justify-content:center; flex-direction:column; gap:5px; padding:13px; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.96); box-shadow:var(--shadow); color:var(--ink); text-align:center; font:500 14px/1.1 var(--serif); animation:goal-orbit 36s linear infinite; } .goal-examples div:nth-child(1) { --c:#f05846; } .goal-examples div:nth-child(2) { --c:#f3c530; animation-delay:-7.2s; } .goal-examples div:nth-child(3) { --c:#72c436; animation-delay:-14.4s; } .goal-examples div:nth-child(4) { --c:#0096e2; animation-delay:-21.6s; } .goal-examples div:nth-child(5) { --c:#e141aa; animation-delay:-28.8s; } .goal-examples small { color:var(--ink2); font:800 8px/1.15 var(--sans); letter-spacing:.05em; text-transform:uppercase; } .goal-examples .goal-tag { display:inline-block; padding:3px 8px 2px; border-radius:999px; background:var(--c,#6540d4); color:#fff; font:800 8px/1 var(--sans); letter-spacing:.08em; text-transform:uppercase; } @keyframes goal-orbit { from { transform:rotate(0deg) translateX(var(--orbit-radius)) rotate(0deg); } to { transform:rotate(360deg) translateX(var(--orbit-radius)) rotate(-360deg); } }
.how { padding:94px 0 112px; border-top:1px solid var(--line); display:grid; grid-template-columns:.82fr 1.18fr; gap:90px; } h2 { margin:0; font-size:clamp(36px,4vw,55px); line-height:1.08; } .steps { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; } .steps article { padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:var(--shadow); } .steps b { display:block; margin:0 0 25px; color:var(--purple); font:14px var(--serif); } h3 { margin:0 0 10px; font-size:22px; } .steps p { margin:0; color:var(--ink2); font-size:13px; line-height:1.6; }
.mentors { padding:0 0 112px; display:grid; grid-template-columns:.72fr 1.28fr; gap:78px; align-items:center; } .mentor-heading > p:not(.kicker) { max-width:330px; margin:18px 0 22px; color:var(--ink2); font-size:14px; line-height:1.6; } .mentor-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; } .mentor-grid article { padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:var(--shadow); } .face { width:100%; aspect-ratio:1; margin-bottom:16px; border-radius:50%; background-image:url('./fireplace.jpeg?v=c9d65ad'); background-size:300% auto; border:6px solid var(--surface2); box-shadow:0 0 0 1px var(--line); } .face-one { background-position:4% 47%; } .face-two { background-position:50% 45%; } .face-three { background-position:96% 45%; } .mentor-grid h3 { font-size:19px; } .mentor-grid p { margin:0; color:var(--ink2); font-size:12px; line-height:1.5; }
.closing { margin-bottom:42px; padding:72px 30px; border:1px solid var(--line); border-radius:var(--r); background:linear-gradient(158deg,var(--surface2),var(--surface) 62%); text-align:center; box-shadow:var(--shadow); } .closing .kicker { justify-content:center; } .closing h2 { max-width:550px; margin:0 auto 26px; } footer { display:flex; justify-content:space-between; padding:0 0 30px; color:#a1a1aa; font-size:11px; }
@media (max-width:800px) { .topbar,main,footer { width:min(100% - 32px,1180px); } .topbar nav a:not(.nav-quiet):not(.btn) { display:none; } .hero { grid-template-columns:1fr; gap:45px; padding:65px 0 80px; } h1 { font-size:clamp(50px,14vw,72px); } .goal-cloud { max-width:520px; min-height:380px; transform:none; } .goal-examples { --orbit-radius:88px; } .goal-examples div { width:94px; height:94px; top:calc(50% - 47px); left:calc(50% - 47px); padding:7px; font-size:11px; } .goal-examples small { font-size:7px; } .goal-examples .goal-tag { font-size:6px; padding:2px 6px 1px; } .how { grid-template-columns:1fr; gap:44px; padding:72px 0 84px; } .steps { grid-template-columns:1fr; gap:28px; } .mentors { grid-template-columns:1fr; gap:38px; padding-bottom:84px; } .mentor-grid { gap:10px; } .mentor-grid article { padding:12px; } .mentor-grid h3 { font-size:16px; } }
@media (prefers-reduced-motion:reduce) { .goal-examples div { animation:none; } }
:is(a,button):focus-visible { outline:2px solid var(--purple); outline-offset:2px; border-radius:8px; }
.site-footer { display:block; width:100%; margin:0; padding:0; background:var(--concrete); color:rgba(255,255,255,.85); font-size:inherit; }
.site-footer .footer-inner, .site-footer .footer-bottom { width:min(1180px,calc(100% - 48px)); margin:auto; }
.footer-inner { display:grid; grid-template-columns:1.3fr 2fr; gap:64px; padding:64px 0 46px; }
.footer-brand { max-width:350px; }
.footer-logo { display:inline-flex; align-items:center; gap:9px; color:#fff; font:500 21px/1 var(--serif); letter-spacing:-.012em; text-decoration:none; }
.footer-logo img { display:block; width:30px; height:30px; filter:brightness(1.7) saturate(1.05); }
.footer-green { color:#8fe3b0; }
.footer-blurb { margin:16px 0 16px; color:rgba(255,255,255,.82); font-size:13px; line-height:1.6; }
.footer-beta { display:inline-block; padding:4px 8px; border:1px solid rgba(255,255,255,.38); border-radius:999px; color:rgba(255,255,255,.92); font:800 .58rem/1 var(--sans); letter-spacing:.1em; text-transform:uppercase; }
.footer-cols { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.footer-col h4 { margin:0 0 14px; color:rgba(255,255,255,.74); font:800 11px/1 var(--sans); letter-spacing:.1em; text-transform:uppercase; }
.footer-col a { display:block; padding:5px 0; color:rgba(255,255,255,.94); font-size:13.5px; font-weight:600; text-decoration:none; transition:color .15s ease; }
.footer-col a:hover { color:#fff; }
.site-footer :is(a,button):focus-visible { outline-color:#fff; }
.footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; padding:22px 0 30px; border-top:1px solid rgba(255,255,255,.24); }
.footer-bottom p { margin:0; color:rgba(255,255,255,.82); font-size:11.5px; line-height:1.5; }
.footer-note { max-width:540px; }
.legal { max-width:760px; padding:24px 0 72px; }
.legal h1 { margin:0 0 10px; font-size:clamp(34px,4.6vw,52px); }
.legal-updated { margin:0 0 22px; color:var(--ink2); font-size:12px; font-weight:600; }
.legal h2 { margin:38px 0 10px; font-family:var(--serif); font-weight:500; font-size:24px; letter-spacing:-.01em; }
.legal h3 { margin:24px 0 8px; font-family:var(--serif); font-size:19px; }
.legal p, .legal li { color:var(--ink2); font-size:14.5px; line-height:1.7; }
.legal .lede { max-width:none; font-family:inherit; font-size:15.5px; }
.legal ul { margin:10px 0; padding-left:22px; }
.legal li { margin:0 0 6px; }
.legal a { color:var(--purple); }
.legal .legal-note { margin-top:12px; padding:14px 16px; border:1px solid var(--line); border-radius:16px; background:var(--surface2); font-size:13px; }
@media (max-width:800px) { .site-footer .footer-inner, .site-footer .footer-bottom { width:min(100% - 32px,1180px); } .footer-inner { grid-template-columns:1fr; gap:38px; padding:48px 0 34px; } .footer-cols { grid-template-columns:1fr 1fr; gap:26px 20px; } .footer-brand { max-width:none; } }
.hiw-intro { max-width:820px; padding:76px 0 8px; }
.hiw-intro h1 { margin:0 0 24px; }
.hiw-intro .lede { max-width:620px; margin-bottom:28px; }
.path { display:grid; gap:16px; padding:56px 0 8px; }
.path-step { display:grid; grid-template-columns:96px 1fr; gap:24px; align-items:start; padding:28px 30px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); box-shadow:var(--shadow); }
.path-step > b { color:var(--purple); font:400 38px/1 var(--serif); }
.path-step h3 { margin:0 0 8px; font-size:23px; }
.path-step p { max-width:64ch; margin:0; color:var(--ink2); font-size:14px; line-height:1.65; }
.inside { display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:center; padding:76px 0 8px; }
.inside h2 { margin:0; }
.inside-list { display:grid; gap:20px; margin-top:26px; }
.inside-list h3 { margin:0 0 5px; font-family:var(--serif); font-size:18px; }
.inside-list p { max-width:52ch; margin:0; color:var(--ink2); font-size:13.5px; line-height:1.6; }
.inside-media { overflow:hidden; margin:0; border:1px solid var(--line); border-radius:var(--r); box-shadow:var(--shadow); }
.inside-media img { display:block; width:100%; height:100%; aspect-ratio:1; object-fit:cover; }
@media (prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
@media (max-width:800px) { .hiw-intro { padding:48px 0 4px; } .path { padding:40px 0 4px; } .path-step { grid-template-columns:1fr; gap:10px; padding:22px; } .path-step > b { font-size:28px; } .inside { grid-template-columns:1fr; gap:32px; padding:52px 0 4px; } .inside-media { order:-1; } }
.legal a, .footer-col a { background-image:linear-gradient(currentColor,currentColor); background-repeat:no-repeat; background-position:0 100%; background-size:0 1.5px; transition:background-size .28s cubic-bezier(.16,1,.3,1),color .18s ease,transform .18s ease; }
.legal a:hover, .footer-col a:hover { background-size:100% 1.5px; }
.footer-col a { width:fit-content; }
.footer-col a:hover { transform:translateX(3px); }
.topbar nav a, .text-link { transition:background-color .2s ease,color .2s ease,transform .2s ease; }
.topbar nav a:hover, .text-link:hover { transform:translateY(-1px); }
.brand, .footer-logo { transition:opacity .2s ease; }
.brand:hover, .footer-logo:hover { opacity:.88; }
.btn { transition:transform .18s ease,box-shadow .22s ease,filter .2s ease; }
.btn:hover { transform:translateY(-2px); filter:brightness(1.05); box-shadow:0 4px 10px rgba(70,60,90,.10),0 22px 42px rgba(70,60,90,.28); }
.btn:active { transform:translateY(0) scale(.99); }
@media (prefers-reduced-motion:reduce) { .legal a, .footer-col a, .topbar nav a, .text-link, .brand, .footer-logo, .btn { transition:none; } .footer-col a:hover, .topbar nav a:hover, .text-link:hover, .btn:hover, .btn:active { transform:none; } }
