@import"https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap";:root{--bg:#0d0f0e;--surface:#151916;--ink:#f2f0e8;--muted:#a4a89f;--line:rgba(242,240,232,.18);--teal:#5be5cf;--blue:#91a8ff;--gold:#f1ce63}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}.site-header{position:fixed;z-index:10;top:0;width:100%;height:74px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(20px,4vw,72px);background:#0d0f0edb;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600}.brand span{display:block;width:auto;height:auto;border:0;border-radius:0;font:600 11px/1 monospace;letter-spacing:-.12em;color:var(--teal)}.site-header nav{display:flex;gap:25px;font-size:12px}.site-header nav a:hover,.resume-cta:hover,.socials a:hover{color:var(--teal)}.resume-cta{justify-self:end;display:flex;align-items:center;gap:13px;padding:10px 13px;border:1px solid var(--line);font-size:11px;font-weight:600}.resume-cta span{color:var(--teal)}main{display:flex;flex-direction:column}.home{order:0}.about{order:1}.projects{order:2}.contact{order:3}#resume{display:none}.section{position:relative;padding:clamp(100px,12vw,160px) clamp(24px,8vw,130px);overflow:hidden}.eyebrow{margin:0 0 20px;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}h1,h2,h3{margin:0;font-family:"Instrument Serif",serif;font-weight:400;letter-spacing:-.055em}h1{font-size:clamp(95px,14vw,205px);line-height:.72}h2{font-size:clamp(58px,7.5vw,110px);line-height:.85}h1 em,h2 em{color:var(--teal)}.home{min-height:100svh;display:grid;grid-template-columns:1fr minmax(300px,.63fr);gap:clamp(45px,9vw,150px);align-items:center}.intro{position:relative;z-index:1}.intro>p:not(.eyebrow){margin:38px 0;color:var(--muted);font-size:clamp(17px,1.7vw,22px)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 20px;border:0;background:var(--ink);color:var(--bg);font:600 12px DM Sans,sans-serif;cursor:pointer;transition:transform .2s}.button:hover{transform:translateY(-3px)}.portrait{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#29342e,#121614);border:1px solid var(--line)}.portrait:before,.portrait:after{content:"";position:absolute;border:1px solid rgba(91,229,207,.46);border-radius:50%}.portrait:before{width:76%;aspect-ratio:1}.portrait:after{width:46%;aspect-ratio:1;border-color:#91a8ffb3}.portrait span{z-index:1;padding:9px 12px;background:#0d0f0edd;border:1px solid var(--line);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.home-photo{min-height:500px;transform:rotate(3deg)}.home-glow{position:absolute;width:620px;height:450px;right:-220px;top:140px;border-radius:50%;background:radial-gradient(ellipse,var(--blue),transparent 68%);filter:blur(55px);opacity:.36}.section-banner{height:105px;margin:-20px 0 60px;display:flex;align-items:flex-end;padding:20px 25px;border:1px solid var(--line);font:11px monospace;color:var(--muted);letter-spacing:.12em;background:#1b231f;overflow:hidden}.projects{background:#111411}.projects-banner{background:radial-gradient(circle at 20% 50%,#25584f,transparent 25%),repeating-linear-gradient(90deg,#141b18 0 52px,#25312c 53px 54px)}.about{background:var(--surface)}.about-banner{background:linear-gradient(110deg,#17221f 0 48%,transparent 48%),radial-gradient(circle at 76% 50%,#536bb1,transparent 20%)}.contact{background:var(--teal);color:#0d0f0e}.contact-banner{border-color:#0d0f0e61;color:#29433c;background:radial-gradient(circle at 78% 60%,#f0eeea 0 3%,transparent 3.5%),repeating-linear-gradient(45deg,transparent 0 20px,rgba(13,15,14,.12) 21px 22px)}.section-heading{max-width:900px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:70px}.project-card{min-height:430px;padding:18px;border:1px solid var(--line);background:#171c19;transition:transform .25s,border-color .25s}.project-card:hover{transform:translateY(-8px);border-color:var(--teal)}.project-image{height:255px;position:relative;margin-bottom:28px;overflow:hidden;background:#26322d}.project-image:before{content:"";position:absolute;top:50%;left:50%;width:120px;height:120px;border:34px solid var(--teal);border-radius:50%;transform:translate(-50%,-50%)}.blue .project-image:before{border:0;border-radius:0;background:var(--blue);transform:translate(-50%,-50%) rotate(45deg)}.gold .project-image:before{width:160px;height:82px;border:0;border-radius:100% 0;background:var(--gold);transform:translate(-50%,-50%) rotate(-25deg)}.project-image span{position:absolute;z-index:1;top:14px;left:14px;font:11px monospace}.project-card h3{font-size:43px;line-height:.9}.project-link{display:block;margin-top:35px;color:var(--teal);font-size:12px;font-weight:600}.about-grid{display:grid;grid-template-columns:minmax(280px,.75fr) 1.25fr;gap:clamp(45px,10vw,160px);align-items:center}.about-photo{min-height:520px;transform:rotate(-2deg)}.about-grid>div:last-child>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:18px;line-height:1.75}.contact-grid{display:grid;grid-template-columns:1fr minmax(320px,.7fr);gap:clamp(45px,10vw,160px);align-items:center}.contact .eyebrow{color:#29433c}.contact h2 em{color:#f2f0e8}.contact-grid>div>p:not(.eyebrow){max-width:330px;color:#29433c;line-height:1.6}.socials{display:flex;gap:18px;margin-top:32px;font-size:13px}.socials a{border-bottom:1px solid rgba(13,15,14,.45);padding-bottom:4px}form{display:grid;gap:19px}label{display:grid;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}input,textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid rgba(13,15,14,.42);border-radius:0;outline:none;background:transparent;color:#0d0f0e;font:16px DM Sans,sans-serif;resize:vertical}textarea{min-height:120px}input:focus,textarea:focus{border-color:#0d0f0e}form .button{margin-top:12px;justify-self:start}footer{display:flex;justify-content:space-between;align-items:center;padding:28px clamp(24px,4vw,72px);background:#080a09;color:var(--muted);font-size:11px}@media(max-width:850px){.site-header{grid-template-columns:1fr auto;height:68px}.site-header nav{display:none}.home,.about-grid,.contact-grid{grid-template-columns:1fr}.home{padding-top:115px}.home-photo{min-height:330px}.section-banner{margin-bottom:42px}.project-grid{grid-template-columns:1fr;gap:16px;margin-top:45px}.project-card{min-height:0}.project-image{height:220px}.about-photo{min-height:350px}.contact-grid{gap:55px}.section{padding-left:22px;padding-right:22px}}@media(max-width:480px){.resume-cta{font-size:10px}.home-photo{min-height:280px}.section-banner{height:85px}}.home{min-height:100svh;display:block;padding:0;background:#050706;isolation:isolate}.flow-art{position:absolute;z-index:-1;inset:0 0 auto;width:100%;height:75svh;object-fit:cover;object-position:center;opacity:.84}.home:after{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:75svh;background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 60%),linear-gradient(0deg,rgba(5,7,6,.72),transparent 40%)}.home .intro{position:absolute;z-index:1;top:29svh;left:50%;width:min(620px,75vw);transform:translate(-50%);text-align:center}.home .intro .eyebrow{color:#d7ded8}.home .intro h1{font-size:clamp(100px,13vw,205px);text-shadow:0 5px 30px rgba(0,0,0,.48)}.home-photo{position:absolute;z-index:2;right:clamp(28px,9vw,150px);bottom:15svh;width:clamp(150px,17vw,270px);min-height:clamp(200px,26vw,390px);transform:rotate(3deg);background:#0c110fe6;backdrop-filter:blur(12px)}.scroll-work{position:absolute;z-index:2;bottom:7vh;left:50%;transform:translate(-50%);padding:12px 0;border-bottom:1px solid var(--teal);color:var(--ink);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.scroll-work span{margin-left:12px;color:var(--teal)}@media(max-width:850px){.flow-art,.home:after{height:70svh}.home .intro{top:23svh}.home-photo{right:7vw;bottom:18svh;width:145px;min-height:190px}.scroll-work{bottom:7vh}}@media(max-width:520px){.flow-art,.home:after{height:67svh}.home .intro{top:23svh;width:90vw}.home-photo{right:7vw;bottom:18svh;width:110px;min-height:145px}.home .intro h1{font-size:clamp(82px,24vw,128px)}}.brand .brand-mark{width:38px;height:30px;display:grid;place-items:center;padding:0;border:1px solid var(--teal);font:600 9px/1 monospace;letter-spacing:.12em;color:var(--teal);transform:skew(-12deg)}.home{--portrait-width: clamp(260px, 29vw, 480px)}.flow-art{left:var(--portrait-width);width:calc(100% - var(--portrait-width));height:75svh;object-position:center}.home:after{left:var(--portrait-width);width:calc(100% - var(--portrait-width));height:75svh}.home-photo{inset:0 auto auto 0;width:var(--portrait-width);height:75svh;min-height:0;transform:none;border-width:0 1px 0 0;background:linear-gradient(145deg,#1b2521,#090b0a)}.home .intro{top:28svh;left:calc(var(--portrait-width) + (100% - var(--portrait-width)) / 2);width:min(630px,calc((100vw - var(--portrait-width)) * .82))}.home .intro .eyebrow{margin:28px 0 0;color:#e0e5df}.scroll-work{left:calc(var(--portrait-width) + (100% - var(--portrait-width)) / 2)}@media(max-width:850px){.home{--portrait-width: clamp(145px, 27vw, 250px)}.flow-art,.home:after{height:70svh}.home-photo{height:70svh}.home .intro{top:24svh}}@media(max-width:520px){.home{--portrait-width: 105px}.flow-art,.home:after{height:67svh}.home-photo{height:67svh}.home .intro{top:23svh}.brand .brand-mark{width:26px;height:26px}}.home{--portrait-width: 0px}.flow-art{inset:0;width:100%;height:100svh;object-position:center}.home:after{inset:0;width:100%;height:100svh;background:linear-gradient(90deg,rgba(0,0,0,.3),transparent 55%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 58%)}.home .intro{top:31svh;left:50%;width:min(1000px,86vw)}.home .intro h1{white-space:nowrap;font-size:clamp(78px,11vw,190px)}.home-photo{inset:0 0 auto;width:100%;height:100svh;min-height:0;border:0;background:#050706c2;transform:none}.home-photo:before{width:34%;aspect-ratio:1}.home-photo:after{width:16%;aspect-ratio:1}.home .intro{z-index:3}.scroll-work{bottom:7svh;left:50%}@media(max-width:850px){.flow-art,.home:after{height:100svh}.home .intro{top:27svh}.home-photo{height:100svh}.scroll-work{bottom:7svh}}@media(max-width:520px){.flow-art,.home:after{height:100svh}.home .intro{top:26svh}.home .intro h1{font-size:clamp(55px,16vw,92px)}.home-photo{height:100svh}.scroll-work{bottom:7svh}}.home-photo:before,.home-photo:after,.home-photo span{display:none}.home-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:brightness(.65) saturate(.92)}.section-arrow{position:absolute;z-index:4;bottom:6vh;left:50%;display:grid;place-items:center;width:34px;height:34px;transform:translate(-50%);border:1px solid rgba(242,240,232,.6);border-radius:50%;color:var(--ink);font-size:18px;line-height:1;transition:transform .2s,background .2s}.section-arrow:hover{transform:translate(-50%) translateY(4px);background:#f2f0e829}.section-arrow-dark{left:50%;right:auto;bottom:42px;transform:translate(-50%)}.section-arrow-dark:hover{transform:translate(-50%) translateY(4px)}.contact .section-arrow{display:none}.home-photo>img{position:absolute;inset:0;z-index:0}.home-photo:before,.home-photo:after{display:none}.aero-overlay{position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none;color:var(--teal)}.aero-overlay:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(91,229,207,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(91,229,207,.13) 1px,transparent 1px);background-size:64px 64px;mix-blend-mode:screen}.aero-orbit{position:absolute;width:min(54vw,790px);aspect-ratio:1.5;right:-7vw;top:15%;border:1px solid rgba(145,168,255,.8);border-radius:50%;transform:rotate(-18deg)}.aero-orbit:before{content:"";position:absolute;width:8px;height:8px;top:5%;left:23%;border-radius:50%;background:var(--teal);box-shadow:0 0 16px var(--teal)}.aero-path{position:absolute;width:92%;top:55%;left:-8%;border-top:1px dashed rgba(91,229,207,.9);transform:rotate(-12deg)}.aero-path:after{content:"";position:absolute;right:1%;top:-5px;width:9px;height:9px;border:1px solid var(--teal);border-radius:50%;background:#0d0f0e}.aero-label{position:absolute;right:7%;bottom:13%;padding:8px 10px;border:1px solid rgba(91,229,207,.52);background:#050706b8;font:10px/1.2 monospace;letter-spacing:.1em}.aero-satellite{position:absolute;left:12%;top:23%;width:18px;height:12px;border:1px solid var(--teal);background:#050706b3;transform:rotate(-18deg)}.aero-satellite:before,.aero-satellite:after{content:"";position:absolute;top:2px;width:18px;height:6px;border:1px solid rgba(91,229,207,.8);background:#91a8ff33}.aero-satellite:before{right:20px}.aero-satellite:after{left:20px}.home-photo{background:#050706}.home .intro{text-shadow:0 4px 24px rgba(0,0,0,.75)}@media(max-width:850px){.section-arrow-dark{right:auto;bottom:28px}.aero-overlay:before{background-size:42px 42px}.aero-orbit{width:95vw;right:-35vw}.aero-label{right:5%;bottom:14%;font-size:8px}}.home .intro{top:18svh}.name-lockup{width:min(620px,86vw);margin:0 auto}.home .intro .name-lockup h1{margin:0;white-space:nowrap;color:var(--ink);font-size:clamp(48px,7vw,100px);line-height:1;letter-spacing:-.06em}.home .intro .name-lockup h1 em{color:inherit;font-style:normal}.home .intro .eyebrow{margin-top:18px;color:#eff4f0}@media(max-width:700px){.home .intro{top:19svh}.home .intro .name-lockup h1{font-size:clamp(40px,11vw,70px)}}.site-header .logo-only{gap:0}.site-header .brand .brand-mark{position:relative;width:36px;height:34px;overflow:hidden;border-radius:0;transform:none;background:#0d0f0e;border-color:var(--teal);text-shadow:none;box-shadow:none}.site-header .brand .brand-mark b,.site-header .brand .brand-mark i{position:absolute;top:8px;color:#e9faf5;font:800 17px/1 DM Sans,sans-serif;font-style:normal;text-shadow:1px 1px 0 #126e67,2px 2px 0 #08453d,3px 3px 4px rgba(0,0,0,.5)}.site-header .brand .brand-mark b{left:6px}.site-header .brand .brand-mark i{left:16px}footer{justify-content:center}.home-photo>img{object-position:center center}#about .about-grid .eyebrow,#projects .section-heading>.eyebrow,#contact .contact-grid .eyebrow{display:none}.home-photo{height:calc(100svh - 74px)}.home-next{position:absolute;z-index:5;left:0;right:0;bottom:0;height:74px;display:flex;align-items:center;justify-content:center;gap:16px;background:#0d0f0eeb;border-top:1px solid var(--line);color:var(--ink);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.home-next span{color:var(--teal);font-size:17px}.home .intro{top:27svh}.home .intro .name-lockup h1{font-size:clamp(56px,8vw,116px)}.socials a{display:inline-flex;align-items:center;gap:7px}.linkedin-symbol{display:inline-grid;place-items:center;width:16px;height:16px;background:#0a66c2;color:#fff;font:700 11px/1 DM Sans,sans-serif;letter-spacing:-.08em}.email-symbol{font-size:15px;line-height:1}#resume,#about,#projects,#contact{display:none!important}.home{min-height:130svh}.home-photo{top:calc(74px + clamp(18px,4vw,72px));right:clamp(18px,4vw,72px);bottom:auto;left:clamp(18px,4vw,72px);width:auto;height:calc(75svh - (74px + clamp(18px,4vw,72px)))!important}.home-photo>img{object-position:center 59%;transform:scale(1.04)}.home .intro{top:34svh}.home .intro .eyebrow{font-size:14px;letter-spacing:.18em}.summary-preview{position:absolute;z-index:4;top:75svh;left:clamp(18px,4vw,72px);right:clamp(18px,4vw,72px);min-height:55svh;display:grid;align-content:start;justify-items:center;gap:26px;padding:42px clamp(22px,6vw,90px);background:#0d0f0ef7;border-top:1px solid var(--line);text-align:center}.home-summary{margin:0;color:var(--teal);font:400 clamp(30px,3vw,46px)/.9 "Instrument Serif",serif;letter-spacing:-.04em}.summary-detail{display:grid;grid-template-columns:minmax(180px,.55fr) 1fr;align-items:center;gap:clamp(28px,6vw,100px);width:min(100%,1000px);text-align:left}.summary-photo{height:clamp(215px,25vw,335px);overflow:hidden;border:1px solid var(--line);background:#171c19}.summary-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.summary-copy>p{max-width:570px;margin:0 0 28px;color:var(--muted);font-size:clamp(16px,1.5vw,20px);line-height:1.6}.summary-items{display:flex;justify-content:flex-start;gap:clamp(22px,5vw,72px)}.summary-items p{margin:0;color:var(--ink);font-size:13px}.summary-items span{display:block;margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.home-next{display:none}.site-header nav{font-size:13px}@media(max-width:850px){.home{min-height:128svh}.home-photo{inset:86px 18px auto;height:calc(73svh - 86px)!important}.home .intro{top:31svh}.home .intro .eyebrow{font-size:12px}.summary-preview{top:73svh;min-height:55svh;padding:28px}.summary-items{gap:18px}}@media(max-width:600px){.home{min-height:130svh}.home-photo{inset:82px 14px auto;height:calc(69svh - 82px)!important}.home .intro{top:29svh}.home .intro .eyebrow{font-size:11px}.summary-preview{top:69svh;min-height:61svh;padding:24px 16px}.summary-detail{grid-template-columns:1fr;gap:18px;text-align:center}.summary-photo{height:180px;width:min(100%,260px);margin:auto}.summary-copy>p{font-size:14px}.summary-items{justify-content:space-between;width:100%;gap:8px}.summary-items p{font-size:10px}.site-header nav{font-size:11px}}.home{min-height:75svh;overflow:visible}.summary-timeline{position:relative;width:100%;padding:clamp(78px,11vw,150px) clamp(24px,5vw,90px) clamp(110px,14vw,190px);background:#0d0f0e;overflow:hidden}.summary-timeline:before{content:"";position:absolute;top:0;left:50%;width:min(92vw,1380px);height:1px;transform:translate(-50%);background:linear-gradient(90deg,transparent,var(--teal),transparent);opacity:.55}.summary-heading{width:min(800px,100%);margin:0 auto clamp(72px,10vw,130px);text-align:center}.summary-heading .eyebrow{color:var(--teal)}.summary-heading h2{font-size:clamp(55px,8vw,116px);line-height:.82}.summary-heading>p:last-child{max-width:570px;margin:27px auto 0;color:var(--muted);font-size:16px;line-height:1.65}.timeline{position:relative;width:min(1380px,100%);margin:auto}.timeline:before{content:"";position:absolute;top:42px;bottom:42px;left:50%;width:2px;transform:translate(-50%);background:repeating-linear-gradient(to bottom,var(--teal) 0 9px,transparent 9px 19px);opacity:.68}.timeline-entry{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr);align-items:center;min-height:290px}.timeline-card{max-width:470px;padding:32px;border:1px solid var(--line);background:linear-gradient(135deg,#1f2723e6,#0d0f0ee6)}.timeline-entry:nth-child(odd) .timeline-card{justify-self:end;text-align:right}.timeline-entry:nth-child(2n) .timeline-card{justify-self:start;text-align:left}.timeline-index{margin:0 0 13px;color:var(--teal);font:600 10px/1 DM Sans,sans-serif;letter-spacing:.16em;text-transform:uppercase}.timeline-card h3{font-size:clamp(34px,3.5vw,52px);line-height:.9}.timeline-card>p:last-child{margin:18px 0 0;color:var(--muted);font-size:15px;line-height:1.6}.timeline-node{position:relative;z-index:1;display:grid;place-items:center;height:100%}.timeline-node:before,.timeline-node:after{content:"";position:absolute;height:1px;width:43px;background:var(--teal);opacity:.7}.timeline-node:before{right:50%}.timeline-node:after{left:50%}.timeline-node span{width:21px;height:21px;border:5px solid #0d0f0e;border-radius:50%;background:var(--teal);box-shadow:0 0 0 1px var(--teal),0 0 28px #5be5cf73}.timeline-image{width:min(100%,430px);height:220px;margin:0;overflow:hidden;border:1px solid var(--line);background:#151916}.timeline-entry:nth-child(odd) .timeline-image{justify-self:start}.timeline-entry:nth-child(2n) .timeline-image{justify-self:end}.timeline-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.04);transition:transform .45s ease,filter .45s ease}.timeline-entry:hover .timeline-image img{transform:scale(1.055);filter:saturate(1.03) contrast(1.06)}.timeline-entry:nth-child(2) .timeline-image img{object-position:center}.timeline-entry:nth-child(3) .timeline-image img{object-position:center 56%}@media(max-width:850px){.home{min-height:73svh}.home-photo{top:86px;height:calc(73svh - 86px)!important}.summary-timeline{padding-left:22px;padding-right:22px}.timeline-entry{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);min-height:250px}.timeline-card{padding:24px}.timeline-image{height:185px}.timeline-node:before,.timeline-node:after{width:24px}}@media(max-width:600px){.home{min-height:69svh}.home-photo{top:82px;height:calc(69svh - 82px)!important}.summary-heading{margin-bottom:62px}.summary-heading>p:last-child{font-size:14px}.timeline:before{left:18px;top:24px;bottom:24px}.timeline-entry{display:grid;grid-template-columns:36px 1fr;gap:14px;min-height:0;margin-bottom:38px}.timeline-node{grid-column:1;grid-row:1 / span 2}.timeline-node:before,.timeline-node:after{display:none}.timeline-node span{width:16px;height:16px;border-width:4px}.timeline-card,.timeline-entry:nth-child(odd) .timeline-card,.timeline-entry:nth-child(2n) .timeline-card{grid-column:2;grid-row:1;justify-self:stretch;max-width:none;padding:22px;text-align:left}.timeline-image,.timeline-entry:nth-child(odd) .timeline-image,.timeline-entry:nth-child(2n) .timeline-image{grid-column:2;grid-row:2;justify-self:stretch;width:100%;height:195px}.timeline-card h3{font-size:39px}}.home-photo{top:74px;right:0;left:0;height:calc(75svh - 74px)!important;border:0}.home .intro .eyebrow{font-size:16px}.summary-heading{margin-bottom:clamp(62px,8vw,105px)}.summary-heading h2{color:var(--teal)}footer{display:grid;grid-template-columns:1fr auto 1fr;justify-content:initial}.footer-socials{display:flex;grid-column:2;gap:22px;font-size:12px}footer>p{grid-column:3;justify-self:end;margin:0}.footer-socials a:hover{color:var(--teal)}@media(max-width:850px){.home-photo{top:68px;height:calc(73svh - 68px)!important}.home .intro .eyebrow{font-size:14px}}@media(max-width:600px){.home-photo{top:68px;height:calc(69svh - 68px)!important}.home .intro .eyebrow{font-size:12px}footer{grid-template-columns:1fr;gap:14px;text-align:center}.footer-spacer{display:none}.footer-socials,footer>p{grid-column:1;justify-self:center}}.home-photo>img{object-position:center 69%}.summary-timeline{padding-top:clamp(54px,7vw,92px)}.summary-heading h2{font-size:clamp(44px,5.5vw,78px)}.projects-button{display:flex;align-items:center;justify-content:center;gap:18px;width:max-content;margin:clamp(70px,9vw,120px) auto 0;padding:17px 23px;border:1px solid var(--teal);color:var(--ink);font-size:13px;font-weight:600;transition:background .2s,color .2s}.projects-button span{color:var(--teal);font-size:18px}.projects-button:hover{background:var(--teal);color:var(--bg)}.projects-button:hover span{color:inherit}.footer-socials{gap:28px;font-size:16px}.footer-socials a{display:inline-flex;align-items:center;gap:9px}.footer-linkedin-logo{display:grid;place-items:center;width:23px;height:23px;background:#0a66c2;color:#fff;font:700 15px/1 DM Sans,sans-serif;letter-spacing:-.08em}@media(min-width:1000px){.timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:center}.timeline:before{inset:50% 4% auto;width:auto;height:2px;transform:none;background:repeating-linear-gradient(90deg,var(--teal) 0 9px,transparent 9px 19px)}.timeline-entry{display:grid;grid-template-columns:1fr;grid-template-rows:1fr 60px 1fr;min-height:515px}.timeline-node{grid-column:1;grid-row:2}.timeline-node:before,.timeline-node:after{display:none}.timeline-node span{width:18px;height:18px;border-width:4px}.timeline-card,.timeline-entry:nth-child(odd) .timeline-card,.timeline-entry:nth-child(2n) .timeline-card{grid-column:1;justify-self:stretch;max-width:none;padding:18px;text-align:left}.timeline-image,.timeline-entry:nth-child(odd) .timeline-image,.timeline-entry:nth-child(2n) .timeline-image{grid-column:1;justify-self:stretch;width:100%;height:150px}.timeline-entry:nth-child(odd) .timeline-card{grid-row:1;align-self:end}.timeline-entry:nth-child(odd) .timeline-image{grid-row:3;align-self:start}.timeline-entry:nth-child(2n) .timeline-image{grid-row:1;align-self:end}.timeline-entry:nth-child(2n) .timeline-card{grid-row:3;align-self:start}.timeline-card h3{font-size:clamp(26px,2.3vw,37px)}.timeline-card>p:last-child{margin-top:12px;font-size:12px;line-height:1.5}.timeline-index{margin-bottom:10px}}@media(max-width:600px){.home-photo>img{object-position:center 69%}.summary-timeline{padding-top:48px}.summary-heading h2{font-size:48px}.footer-socials{gap:18px;font-size:13px}.footer-linkedin-logo{width:20px;height:20px;font-size:13px}}.home{min-height:65svh}.home-photo{height:calc(65svh - 74px)!important}.home-photo>img{object-position:center 60%}.summary-timeline{min-height:100svh;padding:clamp(36px,5vh,58px) clamp(24px,5vw,90px) clamp(42px,6vh,72px)}.summary-heading{margin-bottom:clamp(30px,4vh,52px)}.summary-heading h2{font-size:clamp(38px,4.5vw,64px)}.projects-button{margin:clamp(28px,4vh,48px) auto 0;padding:15px 21px}@media(min-width:1000px){.timeline{gap:28px}.timeline-entry{grid-template-rows:1fr 48px 1fr;min-height:410px}.timeline-entry:not(:last-child){border-right:1px solid rgba(242,240,232,.12);padding-right:14px}.timeline-node:before{display:none}.timeline-node:after{display:block;left:calc(50% + 25px);width:auto;height:auto;background:none;color:var(--teal);content:"→";font-size:22px;line-height:1;opacity:1}.timeline-entry:last-child .timeline-node:after{display:none}.timeline-card,.timeline-entry:nth-child(odd) .timeline-card,.timeline-entry:nth-child(2n) .timeline-card{padding:16px}.timeline-image,.timeline-entry:nth-child(odd) .timeline-image,.timeline-entry:nth-child(2n) .timeline-image{height:120px}.timeline-card h3{font-size:clamp(24px,2vw,32px)}.timeline-card>p:last-child{margin-top:10px;font-size:11px;line-height:1.45}.timeline-index{margin-bottom:8px}}@media(max-width:850px){.home{min-height:65svh}.home-photo{height:calc(65svh - 68px)!important}.summary-timeline{min-height:0}}@media(max-width:600px){.home-photo>img{object-position:center 60%}.summary-timeline{padding-top:42px}.summary-heading h2{font-size:44px}}.home .intro{top:29svh}@media(min-width:1000px){.summary-timeline{height:100svh;min-height:650px;display:flex;flex-direction:column}.summary-timeline .timeline{flex:1;align-content:center}.timeline-node:after{display:none!important}.timeline-entry:not(:last-child){border-right:0;padding-right:0}}@media(max-width:850px){.home .intro{top:27svh}}@media(min-width:1000px){.summary-timeline{padding-top:30px;padding-bottom:26px;justify-content:flex-start}.summary-heading{margin-bottom:18px}.summary-timeline .timeline{flex:0 0 auto}.projects-button{margin-top:20px}}@media(min-width:1000px){:root{--home-header:74px;--home-photo-height:65svh}body{position:relative}.home{min-height:var(--home-photo-height)}.home-photo{height:calc(var(--home-photo-height) - var(--home-header))!important}.summary-timeline{height:calc(100svh - var(--home-header));min-height:0;padding:22px clamp(24px,5vw,90px) 86px}.summary-heading{margin-bottom:14px}.summary-heading h2{font-size:clamp(36px,4vw,56px)}.summary-timeline .timeline{flex:0 0 auto}.timeline-entry{min-height:330px;grid-template-rows:1fr 42px 1fr}.timeline-image,.timeline-entry:nth-child(odd) .timeline-image,.timeline-entry:nth-child(2n) .timeline-image{height:94px}.timeline-card,.timeline-entry:nth-child(odd) .timeline-card,.timeline-entry:nth-child(2n) .timeline-card{padding:13px}.timeline-card h3{font-size:clamp(22px,1.8vw,29px)}.timeline-card>p:last-child{font-size:10px;line-height:1.35}.projects-button{margin-top:14px;padding:12px 18px}.site-footer{position:absolute;z-index:5;top:calc(var(--home-photo-height) + 100svh - (var(--home-header) * 2));right:0;left:0;height:var(--home-header);padding-top:0;padding-bottom:0}}.hex-path{position:relative;display:flex;align-items:center;justify-content:center;width:min(1320px,100%);height:300px;margin:0 auto}.hex-step{position:relative;flex:0 0 clamp(108px,11.2vw,166px);aspect-ratio:1.14 / 1;margin-left:clamp(-20px,-1.6vw,-10px);overflow:hidden;clip-path:polygon(25% 2%,75% 2%,100% 50%,75% 98%,25% 98%,0 50%);background:var(--teal);padding:2px;transition:transform .28s ease,filter .28s ease}.hex-step:first-child{margin-left:0}.hex-step:hover{z-index:2;filter:brightness(1.15)}.photo-hex img{width:100%;height:100%;object-fit:cover;clip-path:polygon(25% 2%,75% 2%,100% 50%,75% 98%,25% 98%,0 50%);filter:saturate(.8) contrast(1.06)}.photo-hex span{position:absolute;right:18%;bottom:16%;color:#fff;font-size:9px;font-weight:600;letter-spacing:.12em;text-shadow:0 1px 10px #000;text-transform:uppercase}.text-hex{display:grid;place-content:center;padding:clamp(16px,2vw,28px);background:linear-gradient(145deg,#24544e,#111916);color:var(--ink);text-align:center}.text-hex:before{content:"";position:absolute;inset:10%;clip-path:polygon(25% 2%,75% 2%,100% 50%,75% 98%,25% 98%,0 50%);border:1px solid rgba(91,229,207,.52)}.text-hex>*{position:relative;z-index:1}.hex-index{margin:0 0 8px;color:var(--teal);font-size:9px;font-weight:600;letter-spacing:.15em}.text-hex h3{font-size:clamp(19px,2vw,31px);line-height:.9}.text-hex p:last-child{margin:9px 0 0;color:var(--muted);font-size:10px;line-height:1.35}.roots{transform:translateY(34px)}.curiosity{transform:translateY(-31px)}.flow{transform:translateY(25px)}.boulder{transform:translateY(-42px)}.summit{transform:translateY(16px)}.testing{transform:translateY(-24px)}.build{transform:translateY(28px)}.hex-step:hover{transform:translateY(-8px) scale(1.035)}@media(min-width:1000px){.summary-timeline{padding-top:42px}.summary-heading{margin-bottom:24px}.summary-timeline .timeline{display:none}.projects-button{margin-top:8px}}@media(max-width:999px){.hex-path{display:grid;grid-template-columns:repeat(4,minmax(110px,150px));justify-content:center;height:auto;gap:0;padding:24px 0}.hex-step{margin:-16px 0 0}.hex-step:nth-child(5){grid-column:2}.roots{transform:translateY(20px)}.curiosity{transform:translateY(-12px)}.flow{transform:translateY(18px)}.boulder{transform:translateY(-18px)}.summit{transform:translateY(5px)}.testing{transform:translateY(-13px)}.build{transform:translateY(12px)}}@media(max-width:600px){.hex-path{grid-template-columns:repeat(2,minmax(120px,160px));gap:0}.hex-step:nth-child(5){grid-column:auto}.hex-step{margin:-10px 0 0}.hex-step:hover{transform:scale(1.02)}.summary-timeline{padding-top:48px}}.hex-journey{--hex-size:clamp(112px,9vw,132px);position:relative;display:flex;align-items:center;width:100%;height:365px;overflow:hidden;padding:42px 0 48px}.journey-hex{position:relative;z-index:1;flex:0 0 var(--hex-size);aspect-ratio:1.14 / 1;margin:0 0 0 clamp(-52px,-3.2vw,-36px);overflow:visible;clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%);background:var(--teal);padding:3px;transition:transform .3s ease,filter .3s ease}.journey-hex:first-child{margin-left:0}.journey-hex img{display:block;width:100%;height:100%;object-fit:cover;clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%);filter:saturate(.82) contrast(1.06)}.journey-hex:hover{z-index:4;transform:scale(1.08);filter:brightness(1.1)}.journey-hex figcaption{position:absolute;z-index:5;left:50%;width:max-content;transform:translate(-50%);color:var(--ink);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.journey-hex figcaption:before{content:"";position:absolute;left:50%;width:1px;height:26px;background:var(--teal)}.journey-hex:nth-child(odd) figcaption{bottom:calc(100% + 31px)}.journey-hex:nth-child(odd) figcaption:before{top:calc(100% + 5px)}.journey-hex:nth-child(2n) figcaption{top:calc(100% + 31px)}.journey-hex:nth-child(2n) figcaption:before{bottom:calc(100% + 5px)}.journey-hex:nth-child(3n+1){transform:translateY(24px)}.journey-hex:nth-child(3n+2){transform:translateY(-18px)}.journey-hex:nth-child(3n){transform:translateY(12px)}.journey-hex:hover{transform:translateY(-8px) scale(1.08)}.future-hex{flex-basis:var(--hex-size);margin-right:calc(var(--hex-size) * -.28);background:linear-gradient(135deg,var(--teal),#3a5d9e 52%,#141916)}.future-hex figcaption{color:var(--teal)}@media(min-width:1000px){.summary-timeline{padding-top:58px}.summary-heading{margin-bottom:28px}.hex-journey{margin-top:8px}.projects-button{margin-top:4px}}@media(max-width:999px){.hex-journey{--hex-size:125px;overflow-x:auto;height:340px;padding-left:14px;padding-right:40px;scrollbar-width:thin}.journey-hex{margin-left:-40px}}@media(max-width:600px){.hex-journey{--hex-size:112px;height:310px}.journey-hex figcaption{font-size:8px}}.color-journey{background:#173d38}.teal-journey{background:linear-gradient(145deg,#49cbb8,#145149)}.blue-journey{background:linear-gradient(145deg,#7894e6,#263d79)}.gold-journey{background:linear-gradient(145deg,#d5b34c,#665422)}@media(min-width:1000px){.hex-journey{--hex-size:clamp(180px,13.5vw,265px);height:410px;padding:76px 4vw 62px;overflow:hidden}.journey-hex{flex-basis:var(--hex-size);margin-left:calc(var(--hex-size) * -.25);padding:3px;aspect-ratio:1.155/1}.journey-hex:first-child{margin-left:0}.journey-hex:nth-child(1){transform:translateY(-18px)}.journey-hex:nth-child(2){transform:translateY(-6px)}.journey-hex:nth-child(3){transform:translateY(10px)}.journey-hex:nth-child(4){transform:translateY(24px)}.journey-hex:nth-child(5){transform:translateY(31px)}.journey-hex:nth-child(6){transform:translateY(25px)}.journey-hex:nth-child(7){transform:translateY(11px)}.journey-hex:nth-child(8){transform:translateY(-6px)}.journey-hex figcaption{font-size:10px;letter-spacing:.08em}.journey-hex figcaption b,.journey-hex figcaption span{display:block}.journey-hex figcaption span{margin-top:4px;color:var(--muted);font-size:9px;font-weight:400;letter-spacing:0;text-transform:none}.journey-hex figcaption:before{height:22px}.journey-hex:nth-child(odd) figcaption{bottom:calc(100% + 27px)}.journey-hex:nth-child(2n) figcaption{top:calc(100% + 27px)}.journey-hex:hover{transform:translateY(-10px) scale(1.035)}.future-hex{margin-right:calc(var(--hex-size) * -.6);background:var(--teal);padding:2px}.future-hex:after{content:"";position:absolute;inset:3px;background:#0d0f0e;clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%)}.future-hex figcaption{display:none}.projects-button{margin-top:2px}}@media(max-width:999px){.hex-journey{--hex-size:180px;height:390px;padding:68px 18px 70px}.journey-hex{margin-left:calc(var(--hex-size) * -.25)}.future-hex{margin-right:calc(var(--hex-size) * -.6)}}@media(max-width:600px){.hex-journey{--hex-size:145px;height:350px;padding-top:65px}.journey-hex figcaption span{display:none}}@media(min-width:1000px){.hex-journey{height:438px;padding-top:92px;padding-bottom:82px}.journey-hex{filter:drop-shadow(0 11px 0 #17685f) drop-shadow(0 22px 0 #093b35) drop-shadow(0 28px 10px rgba(0,0,0,.38));transition:transform .3s ease,filter .3s ease}.journey-hex:nth-child(1){transform:translateY(62px)}.journey-hex:nth-child(2){transform:translateY(47px)}.journey-hex:nth-child(3){transform:translateY(31px)}.journey-hex:nth-child(4){transform:translateY(15px)}.journey-hex:nth-child(5){transform:translateY(0)}.journey-hex:nth-child(6){transform:translateY(-16px)}.journey-hex:nth-child(7){transform:translateY(-32px)}.journey-hex:nth-child(8){transform:translateY(-48px)}.journey-hex:hover{transform:translateY(-58px) scale(1.035);filter:drop-shadow(0 13px 0 #218d81) drop-shadow(0 26px 0 #0a443c) drop-shadow(0 32px 12px rgba(0,0,0,.42))}.future-hex{filter:none}.projects-button{margin-top:-4px}}.milestone-track{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:center;width:min(1420px,100%);height:330px;margin:0 auto}.milestone-track:before{content:"";position:absolute;z-index:0;top:46%;right:3%;left:3%;height:4px;background:linear-gradient(90deg,#4fd5e6,#5be5cf,#d2db4a,#f0bd45,#ef6752,#d84699,#7566bf);border-radius:999px}.milestone{--accent:#4fd5e6;--offset:22px;position:relative;z-index:1;display:grid;justify-items:center;min-width:0;transform:translateY(var(--offset))}.milestone:nth-child(2){--accent:#5be5cf}.milestone:nth-child(3){--accent:#b3d840}.milestone:nth-child(4){--accent:#f0b846}.milestone:nth-child(5){--accent:#ef6752}.milestone:nth-child(6){--accent:#d84699}.milestone:nth-child(7){--accent:#7566bf}.milestone.elevated{--offset:-36px}.milestone-hex{display:grid;place-items:center;width:clamp(95px,9.4vw,142px);aspect-ratio:1.15/1;padding:4px;background:linear-gradient(#0d0f0e,#0d0f0e) padding-box,var(--accent) border-box;border:4px solid transparent;clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%);color:var(--ink);font-size:clamp(13px,1.25vw,18px);font-weight:600;letter-spacing:-.03em;text-align:center}.milestone-note{position:relative;width:min(170px,100%);margin-top:30px;padding-top:20px;color:var(--accent);text-align:center}.milestone.elevated .milestone-note{margin-top:30px}.milestone-note i{position:absolute;top:-2px;left:50%;width:10px;height:10px;border-radius:50%;transform:translate(-50%);background:var(--accent);box-shadow:0 0 0 4px #0d0f0e}.milestone-note:before{content:"";position:absolute;bottom:100%;left:50%;width:2px;height:20px;transform:translate(-50%);background:var(--accent)}.milestone-note h3{margin:0;color:var(--accent);font:600 clamp(12px,1.2vw,17px)/1 "DM Sans",sans-serif}.milestone-note p{margin:7px auto 0;color:var(--muted);font-size:10px;line-height:1.35}.future-milestone .milestone-hex{background:transparent;color:var(--accent)}.future-milestone{overflow:hidden}.future-milestone:after{content:"";position:absolute;top:0;right:-35%;width:46%;height:100%;border:2px solid var(--accent);clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%);opacity:.75}@media(min-width:1000px){.summary-timeline{padding-top:52px}.summary-heading{margin-bottom:12px}.milestone-track{height:330px}.projects-button{margin-top:8px}}@media(max-width:850px){.milestone-track{grid-template-columns:repeat(4,minmax(120px,1fr));height:auto;gap:62px 4px;padding:38px 0}.milestone-track:before{display:none}.milestone{--offset:0!important}.milestone-note{margin-top:24px}.future-milestone{grid-column:2}.projects-button{margin-top:24px}}@media(max-width:600px){.milestone-track{grid-template-columns:repeat(2,minmax(120px,1fr));gap:58px 10px}.future-milestone{grid-column:auto}.milestone-hex{width:128px}.milestone-note{width:145px}}.milestone-track:before{display:none}.milestone{--accent:#176d67}.milestone:nth-child(1){--accent:#1b726b}.milestone:nth-child(2){--accent:#27887f}.milestone:nth-child(3){--accent:#3da89c}.milestone:nth-child(4){--accent:#57cabb}.milestone:nth-child(5){--accent:#6be6d3}.milestone:nth-child(6){--accent:#86f0df}.milestone:nth-child(7){--accent:#a7fff0}.milestone-hex{border-width:6px;background:linear-gradient(transparent,transparent) padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box;color:#fff;text-shadow:0 2px 12px #000;box-shadow:0 8px 20px #00000042;overflow:hidden}.milestone:nth-child(1) .milestone-hex{background:url(/images/timeline-hex-01.webp) center/cover padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.milestone:nth-child(2) .milestone-hex{background:url(/images/flow-visualization.png) center/cover padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.milestone:nth-child(3) .milestone-hex{background:url(/images/ryan-summit.jpeg) center/cover padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.milestone:nth-child(4) .milestone-hex{background:url(/images/ryan-in-cirque.jpg) center/cover padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.milestone:nth-child(5) .milestone-hex{background:url(/images/timeline-hex-05.webp) center/cover padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.milestone:nth-child(6) .milestone-hex{background:linear-gradient(145deg,#1b615b,#0b2825) padding-box,linear-gradient(135deg,var(--accent),#d5fff7) border-box}.future-milestone .milestone-hex{background:transparent;color:var(--accent);text-shadow:none}.milestone:not(:last-child):after{content:"";position:absolute;z-index:-1;left:calc(50% + clamp(44px,4.3vw,62px));width:clamp(46px,4.4vw,70px);height:5px;border-radius:999px;background:linear-gradient(90deg,var(--accent),#d5fff7);transform-origin:left center}.milestone:nth-child(odd):after{top:37%;transform:rotate(-30deg)}.milestone:nth-child(2n):after{top:57%;transform:rotate(30deg)}.milestone-note h3{color:var(--accent)}.milestone-note i,.milestone-note:before{background:var(--accent)}@media(min-width:1000px){.summary-timeline{padding-top:58px}.milestone-track{margin:42px auto 0;height:350px}.projects-button{margin-top:32px}.milestone-note{margin-top:34px}.milestone.elevated{--offset:-30px}.milestone{--offset:28px}}@media(max-width:850px){.milestone:not(:last-child):after{display:none}.milestone-track{margin-top:26px}}.milestone:not(:last-child):after{z-index:0}.milestone-hex,.milestone-note{position:relative;z-index:1}@media(min-width:1000px){.milestone-track{--hex-w:clamp(110px,8vw,142px);--hex-h:clamp(96px,6.93vw,123px);display:block;height:370px;margin:58px auto 0}.milestone{position:absolute;z-index:1;width:var(--hex-w);transform:none!important;--offset:0}.milestone:nth-child(1){left:2%;top:150px}.milestone:nth-child(2){left:16%;top:72px}.milestone:nth-child(3){left:30%;top:150px}.milestone:nth-child(4){left:44%;top:72px}.milestone:nth-child(5){left:58%;top:150px}.milestone:nth-child(6){left:72%;top:72px}.milestone:nth-child(7){left:86%;top:150px}.milestone-hex{position:relative;z-index:1;width:var(--hex-w);height:var(--hex-h);aspect-ratio:auto;padding:0;border:0;background:var(--accent);box-shadow:none;color:transparent;text-shadow:none}.milestone-hex:before{content:"";position:absolute;inset:2px;clip-path:polygon(25% 1%,75% 1%,100% 50%,75% 99%,25% 99%,0 50%);background:var(--image) center/cover no-repeat}.milestone:nth-child(1){--image:url(/images/timeline-hex-01.webp)}.milestone:nth-child(2){--image:url(/images/flow-visualization.png)}.milestone:nth-child(3){--image:url(/images/ryan-summit.jpeg)}.milestone:nth-child(4){--image:url(/images/ryan-in-cirque.jpg)}.milestone:nth-child(5){--image:url(/images/timeline-hex-05.webp)}.milestone:nth-child(6){--image:linear-gradient(145deg,#1a645d,#0c2e2b)}.milestone:nth-child(7){--image:url(/images/ryan-in-field.jpg)}.milestone:not(:last-child):after{z-index:0;left:75%;width:clamp(84px,8.7vw,124px);height:2px;background:var(--accent);box-shadow:none}.milestone:nth-child(odd):after{top:0;transform:rotate(21deg)}.milestone:nth-child(2n):after{top:var(--hex-h);transform:rotate(-21deg)}.milestone-note{z-index:1;width:175px;margin:28px 0 0;transform:translate(calc((var(--hex-w) - 175px) / 2));padding-top:20px}.milestone-note:before{height:18px}.milestone-note h3{font-size:14px}.milestone-note p{font-size:10px}.future-milestone .milestone-hex{background:var(--accent);color:transparent}.future-milestone .milestone-hex:before{background:var(--image) center/cover no-repeat}.future-milestone:after{display:none}.future-milestone .milestone-note{display:none}.projects-button{margin-top:16px}}.milestone-track{display:block!important;width:100%;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important}.milestone-track:before{display:none!important}.timeline-svg{display:block;width:min(1700px,94vw);height:auto;margin:0 auto;overflow:visible}.timeline-links line{stroke:url(#timeline-teal);stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke}.timeline-hexes polygon{fill:none;stroke:url(#timeline-teal);stroke-width:2;vector-effect:non-scaling-stroke}.timeline-hexes .future-marker{fill:var(--teal);font:600 76px/1 DM Sans,sans-serif;text-anchor:middle}.photo-timeline{--photo-h:clamp(115px,9vw,165px);position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(22px,2.8vw,46px);width:min(1320px,90vw);margin:0 auto;padding-top:18px}.photo-timeline:before{content:"";display:block;position:absolute;z-index:0;top:calc(18px + var(--photo-h) + 42px);left:3%;right:3%;height:2px;background:linear-gradient(90deg,#176d67,#a7fff0)}.photo-milestone{position:relative;z-index:1;min-width:0;margin:0;text-align:center}.photo-milestone{grid-column:auto}.photo-milestone:nth-child(4),.photo-milestone:nth-child(5){grid-column:auto}.photo-milestone:after{content:"";position:absolute;top:var(--photo-h);left:50%;width:2px;height:42px;background:var(--teal);transform:translate(-50%)}.photo-milestone>img,.future-question{display:block;width:100%;height:var(--photo-h);border:1px solid rgba(91,229,207,.7);border-radius:12px;background:#17221f;object-fit:cover;box-shadow:0 8px 22px #00000047}.graduate-milestone>img{object-position:center 42%}.future-question{display:grid;place-items:center;color:var(--teal);font:600 clamp(54px,6vw,92px)/1 "DM Sans",sans-serif}.photo-milestone figcaption{padding:72px 4px 0}.photo-milestone h3{margin:0;color:#48cbb9;font:600 clamp(13px,1.15vw,17px)/1.2 "DM Sans",sans-serif;letter-spacing:-.025em}.photo-milestone p{margin:9px auto 0;color:#b8bbb4;font-size:clamp(11px,.85vw,13px);line-height:1.45}.timeline-svg{display:none!important}.timeline-labels line{stroke:url(#timeline-teal);stroke-width:2;vector-effect:non-scaling-stroke}.timeline-labels circle{fill:url(#timeline-teal)}.timeline-labels text{fill:#48cbb9;font:600 15px/1 DM Sans,sans-serif;letter-spacing:-.025em;text-anchor:middle}.timeline-labels .timeline-caption{fill:#a8aaa3;font:400 12px/1 DM Sans,sans-serif;letter-spacing:0}@media(min-width:1000px){.summary-timeline{padding-top:30px!important}.summary-heading{margin-bottom:12px!important}.timeline-svg{width:min(1700px,94vw)}.projects-button{margin-top:8px!important}}@media(max-width:999px){.timeline-svg{width:100%;min-width:680px}.milestone-track{overflow-x:auto!important;padding:0 20px!important}.timeline-labels text{font-size:16px}.timeline-labels .timeline-caption{font-size:13px}}@media(max-width:999px){.photo-timeline{--photo-h:150px;grid-template-columns:repeat(5,190px);width:max-content;gap:28px;padding:18px 18px 24px}.photo-milestone,.photo-milestone:nth-child(4),.photo-milestone:nth-child(5){grid-column:auto}.photo-milestone p{font-size:12px}}@media(min-width:1000px){.summary-timeline{display:grid!important;grid-template-rows:auto 1fr auto;align-items:stretch;height:calc(100svh - var(--home-header))!important;min-height:0!important;padding:58px clamp(24px,3vw,64px) 36px!important;box-sizing:border-box}.summary-heading{align-self:start;margin:0!important}.milestone-track{display:grid!important;place-items:center}.timeline-svg{width:min(1900px,96vw)}.projects-button{align-self:end;margin:0 auto!important}.timeline-hexes polygon{stroke-width:3}.timeline-labels line{stroke-width:3}}@media(min-width:1000px){.summary-timeline{padding-bottom:104px!important}.summary-heading{width:min(800px,100%)!important;justify-self:center!important;text-align:center!important}.milestone-track{position:relative;isolation:isolate}.milestone-track:before{content:""!important;display:block!important;position:absolute!important;z-index:0!important;inset:50% auto auto 50%!important;width:min(1900px,96vw)!important;height:auto!important;aspect-ratio:1500/460!important;transform:translate(-50%,-50%)!important;border:0!important;border-radius:0!important;opacity:1!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1500 460'%3E%3Cg fill='none' stroke='%2348cbb9' stroke-width='3' stroke-linecap='round'%3E%3Cline x1='186.5' y1='204' x2='254.5' y2='166'/%3E%3Cline x1='397.5' y1='166' x2='465.5' y2='204'/%3E%3Cline x1='608.5' y1='204' x2='676.5' y2='166'/%3E%3Cline x1='819.5' y1='166' x2='887.5' y2='204'/%3E%3Cline x1='1030.5' y1='204' x2='1098.5' y2='166'/%3E%3Cline x1='1241.5' y1='166' x2='1309.5' y2='204'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat!important}.timeline-svg{position:relative;z-index:1}.projects-button{position:relative;z-index:2}}@media(min-width:1000px){.milestone-track{justify-items:center!important}.timeline-svg{justify-self:center!important;align-self:center!important}.milestone-track:before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1500 460'%3E%3Cg fill='none' stroke='%2348cbb9' stroke-width='3' stroke-linecap='round'%3E%3Cline x1='197.5' y1='197.5' x2='243.5' y2='172.5'/%3E%3Cline x1='408.5' y1='172.5' x2='454.5' y2='197.5'/%3E%3Cline x1='619.5' y1='197.5' x2='665.5' y2='172.5'/%3E%3Cline x1='830.5' y1='172.5' x2='876.5' y2='197.5'/%3E%3Cline x1='1041.5' y1='197.5' x2='1087.5' y2='172.5'/%3E%3Cline x1='1252.5' y1='172.5' x2='1298.5' y2='197.5'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat!important}}.summary-timeline{background:#0d0f0e!important}@media(min-width:1000px){.summary-timeline{height:calc(100svh - var(--home-header))!important;min-height:680px!important}.milestone-track{height:auto!important;min-height:0!important}.photo-timeline{align-self:center;justify-self:center}}.project-card[href="/projects/flow-visualization"] .project-image{background:url(/images/flow-visualization.png) center/cover no-repeat}.project-card[href="/projects/flow-visualization"] .project-image:before{display:none}@media(min-width:1000px){.projects .project-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.projects .project-card{grid-column:span 2}.projects .project-card:nth-child(4){grid-column:3/span 2}}@media(min-width:1000px){.milestone-track:before{display:none!important}.timeline-svg{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1500 460'%3E%3Cg fill='none' stroke='%2348cbb9' stroke-width='3' stroke-linecap='round'%3E%3Cline x1='197.5' y1='197.5' x2='243.5' y2='172.5'/%3E%3Cline x1='408.5' y1='172.5' x2='454.5' y2='197.5'/%3E%3Cline x1='619.5' y1='197.5' x2='665.5' y2='172.5'/%3E%3Cline x1='830.5' y1='172.5' x2='876.5' y2='197.5'/%3E%3Cline x1='1041.5' y1='197.5' x2='1087.5' y2='172.5'/%3E%3Cline x1='1252.5' y1='172.5' x2='1298.5' y2='197.5'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat!important;transform:translate(-24px,24px)}}@media(min-width:1000px){:root{--home-photo-height:75svh}.home .intro{top:calc((var(--home-header) + var(--home-photo-height)) / 2);transform:translate(-50%,-50%)}.home-photo>img{object-position:center 56%}.site-header nav{font-size:14px}}.project-image:before{width:58px;height:58px;border-width:15px}.gold .project-image:before{width:78px;height:41px}.project-card h3,.project-description{text-align:center}.project-description{margin:12px 0 0;font-size:15px}.project-link{margin-top:28px}.project-card[href="/projects/kairos-power"] .project-image{background:url(/images/kairos-power-icon.png) center 52%/cover no-repeat}.project-card[href="/projects/kairos-power"] .project-image:before,.project-card[href="/projects/sierra-space"] .project-image:before,.project-card[href="/projects/kashmir-world-foundation"] .project-image:before,.project-card[href="/projects/design-build-fly"] .project-image:before{display:none}.project-card[href="/projects/sierra-space"] .project-image{background:url(/images/sierra-space-icon.png) center/cover no-repeat}.project-card[href="/projects/kashmir-world-foundation"] .project-image{background:url(/images/kashmir-aircraft-concept.png) center/cover no-repeat}.project-card[href="/projects/design-build-fly"] .project-image{background:url(/images/design-build-fly-01.webp) center/cover no-repeat}.home-photo>img{object-position:25% 56%}#projects{display:block!important;padding:40px 24px 48px}#projects .section-heading{max-width:none;text-align:center}#projects h2{font-size:clamp(38px,4vw,58px);line-height:1.1}#projects .project-grid{width:min(1400px,100%);margin:40px auto 0}#projects .project-card{min-height:0;padding-bottom:22px}#projects .project-image{height:225px}@media(min-width:851px)and (max-width:999px){#projects .project-card:last-child{grid-column:2}}@media(min-width:1000px){#projects .project-card:last-child{grid-column:3 / span 2}}.site-footer{position:relative!important;top:auto!important;height:auto!important;padding:28px clamp(24px,4vw,72px)!important}.home-project-actions{display:flex;justify-content:center;gap:16px;margin-top:48px}.home-project-actions a{display:flex;align-items:center;justify-content:center;min-width:160px;padding:17px 23px;border:1px solid var(--teal);color:var(--ink);font-size:13px;font-weight:600;transition:background .2s,color .2s}.home-project-actions a:hover{background:var(--teal);color:var(--bg)}@media(max-width:600px){.home-project-actions a{min-width:0;padding:15px 24px}}.home{min-height:0!important;height:auto!important;padding:74px 0 0!important}.home-photo{position:relative!important;inset:auto!important;display:block;width:100%;height:calc(75svh - 74px)!important;min-height:0;background:#0d0f0e}.home-photo>img{position:relative;inset:auto;display:block;width:100%;height:100%;object-fit:cover;object-position:49% 56%;transform:none}.home .intro{top:calc(50% + 37px)!important;left:50%;transform:translate(-50%,-50%)}.home:after{height:100%}#projects{padding-top:0;isolation:isolate;background:#0d0f0e}#projects:before{content:"";position:absolute;z-index:0;pointer-events:none;inset:-55px 0 auto;height:clamp(460px,43vw,660px);background:url(/images/projects-flow-curved.png) center 46%/cover no-repeat;opacity:.72;mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 100%)}#projects>*{position:relative;z-index:1}#projects .projects-flow-heading{position:relative;display:grid;place-items:center;min-height:clamp(170px,16vw,220px);margin:0 -24px;padding:45px 24px}#projects .projects-flow-heading h2{position:relative;z-index:1;text-shadow:0 2px 22px #0d0f0e}#projects .project-grid{margin-top:0}@media(max-width:850px){.home{padding-top:68px!important}.home-photo{height:calc(65svh - 68px)!important}.home .intro{top:calc(50% + 34px)!important}}@media(max-width:600px){.home .intro h1{font-size:clamp(42px,10vw,64px)}.home .intro .eyebrow{font-size:10px;margin-top:16px}}
