:root{--ink:#1c3461;--ink-soft:#2a4a7f;--ink-faint:#1c346159;--paper:#f7f3ea;--paper-card:#fffdf8;--grid-line:#ff7a5924;--grid-line-blue:#2a4a7f1a;--pencil:#8a8377;--stress:#e8623a;--stress-deep:#d9542c;--stress-soft:#e8623a1f;--body-text:#3f4a66;--serif:"Fraunces", "Iowan Old Style", Georgia, serif;--hand:"Architects Daughter", "Comic Sans MS", cursive;--body:"Source Sans 3", "Segoe UI", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", monospace}@font-face{font-family:Fraunces;src:url(/assets/fraunces-var-Czevyj-6.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/fraunces-italic-600-cvhKTo6T.woff2)format("woff2");font-weight:400 900;font-style:italic;font-display:swap}@font-face{font-family:Architects Daughter;src:url(/assets/architects-daughter-DOGE_9Aw.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/assets/source-sans-3-var-Cc-u-6OI.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/jetbrains-mono-var-V6pRDFza.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--body-text);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}::selection{background:#e8623a40}:focus-visible{outline:2.5px solid var(--stress);outline-offset:3px;border-radius:2px}.page{position:relative;overflow-x:clip}.page__margin{z-index:0;background:#e8623a80;width:1px;position:absolute;top:0;bottom:0}.page__margin--left{left:clamp(14px,3vw,52px)}.page__margin--right{right:clamp(14px,3vw,52px)}.page__punch{z-index:2;position:absolute;top:22vh;left:clamp(14px,3vw,52px)}.page__punch i{background:var(--paper);border:2.2px solid var(--ink-faint);border-radius:50%;width:15px;height:15px;margin:9vh 0;display:block}body:before{content:"";z-index:-1;background:linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 26px 26px, linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 26px 26px, linear-gradient(var(--grid-line-blue) 1px, transparent 1px) 0 0 / 6.5px 6.5px, linear-gradient(90deg, var(--grid-line-blue) 1px, transparent 1px) 0 0 / 6.5px 6.5px;position:fixed;inset:0}.h2{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;font-variation-settings:"opsz" 144;margin:0;font-size:clamp(30px,3.4vw,42px);font-weight:900;line-height:1.12}.section__kicker{font-family:var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:10px;margin:0 0 10px;font-size:13px;font-weight:700;display:flex}.section__kicker .dot{background:var(--stress);width:9px;height:9px;box-shadow:0 0 0 2.5px var(--stress-soft);border-radius:50%}.dot--stress{background:var(--stress)}.pencil-note{font-family:var(--hand);color:#6e675a;font-size:1.02rem;line-height:1.45;transform:rotate(-3deg)}.mid-margin{transform:rotate(2deg)}.link-arrow,.btn{-webkit-tap-highlight-color:transparent}.link-arrow:hover:after,.btn:hover{will-change:transform}.link-arrow{color:var(--stress-deep);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow:after{content:"→";transition:transform .2s ease-out}.link-arrow:hover:after{transform:translate(3px)}.link-github{color:var(--ink);display:inline-flex}.link-github:hover{color:var(--ink-soft)}.btn{font-family:var(--body);cursor:pointer;border-radius:3px;align-items:center;gap:9px;padding:12px 22px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .15s ease-out,box-shadow .15s ease-out;display:inline-flex}.btn:hover{transform:translateY(-1.5px)}.btn:active{transform:translateY(0)}.btn--navy{background:var(--ink);color:#f4f1ea;box-shadow:2px 3px #1c346138}.btn--navy:hover{box-shadow:2px 4px #1c34614d}.btn--outline{border:2px solid var(--ink);color:var(--ink);background:0 0}.btn--outline:hover{background:#1c34610f}.btn [data-icon]{flex:none}a[data-placeholder=true]{position:relative}@media (width>=981px){a[data-placeholder=true]:after{content:"add public/resume.pdf"}}a[data-placeholder=true]:after{font-family:var(--hand);color:var(--pencil);white-space:nowrap;font-size:12px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}a{color:inherit}@media (width>=981px){a[data-placeholder=true]:after{color:#5c5443}}.topbar{z-index:5;align-items:center;gap:18px;max-width:1240px;margin:0 auto;padding:20px clamp(20px,4.5vw,72px);display:flex;position:relative}.topbar__logo{font-family:var(--serif);color:var(--ink);letter-spacing:-.02em;font-variation-settings:"opsz" 144;font-size:25px;font-weight:900;text-decoration:none}.topbar__nav{flex:1;justify-content:center;gap:clamp(10px,2vw,26px);display:flex}.topbar__nav a{color:var(--body-text);font-size:15px;font-weight:600;text-decoration:none;position:relative}.topbar__nav a:hover,.topbar__nav a.is-active{color:var(--ink)}.topbar__nav a svg{width:70%;stroke:var(--stress);stroke-width:2.4px;fill:none;stroke-linecap:round;position:absolute;bottom:-8px;left:12%;right:0}.topbar__cta{margin-left:auto;padding:10px 16px;font-size:14px}.topbar__cta svg{width:16px;height:16px}.hero{z-index:1;grid-template-columns:minmax(320px,5fr) minmax(400px,6fr);align-items:center;gap:clamp(16px,3vw,44px);max-width:1240px;margin:0 auto;padding:clamp(24px,4vh,48px) clamp(20px,4.5vw,72px) clamp(40px,6vh,64px);display:grid;position:relative}.hero__kicker{font-family:var(--hand);color:var(--pencil);margin:0 0 6px;font-size:1.25rem;transform:rotate(-2deg)}.hero__name{font-family:var(--serif);color:var(--ink);letter-spacing:-.015em;font-variation-settings:"opsz" 144;margin:0 0 18px;font-size:clamp(52px,6.6vw,92px);font-weight:900;line-height:.98}.hero__tagline{font-family:var(--serif);color:var(--ink);margin:0 0 14px;font-size:clamp(21px,2.2vw,28px);font-weight:700;line-height:1.35}.hero__body{color:var(--body-text);max-width:42ch;margin:0 0 18px;font-size:17.5px}.hero__contacts{grid-template-columns:repeat(auto-fit,minmax(190px,220px));gap:6px 18px;margin:0 0 22px;padding:0;list-style:none;display:grid}.hero__contacts a{color:var(--body-text);align-items:center;gap:9px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.hero__contacts a:hover{color:var(--ink)}.hero__contacts svg{opacity:.85;flex:none}.hero__actions{flex-wrap:wrap;gap:14px;display:flex}.hero__diagram{min-width:0;position:relative}.hero__learning{text-align:center;z-index:4;max-width:96px;position:absolute;bottom:4%;left:0;transform:rotate(3deg)}@media (width<=1240px){.hero__learning{display:none}}.hero__spark{width:26px;stroke:var(--stress);opacity:.75;margin-left:6px;position:absolute}.hero__kicker{position:relative}.hero__coffee{opacity:.85;width:40px;stroke:var(--ink-faint);margin-left:-8px;transform:rotate(-6deg)}.timeline__flag{width:22px;stroke:var(--stress-deep);position:absolute;top:-22px;left:-8px}.timeline{position:relative}.project-card__clip{width:18px;height:34px;stroke:var(--ink-faint);stroke-width:2.2px;z-index:2;position:absolute;top:-12px;right:22px;transform:rotate(14deg)}.contact__scribble{opacity:.7;width:64px;position:absolute;bottom:clamp(14px,3vh,30px);right:clamp(20px,6vw,90px)}.section{z-index:1;border-top:1.5px solid #1c346129;max-width:1240px;margin:0 auto;padding:clamp(40px,7vh,72px) clamp(20px,4.5vw,72px);position:relative}.section__head{max-width:560px;margin-bottom:clamp(18px,3vh,28px)}.about{grid-template-columns:minmax(280px,4fr) minmax(380px,6fr);gap:clamp(24px,4vw,60px);margin-top:clamp(18px,3vh,30px);display:grid}.about__body{margin:0;font-size:17.5px}.about__note{max-width:230px;margin-top:26px;margin-left:8px}.about__caps-title{font-family:var(--serif);color:var(--ink);margin:0 0 4px;font-size:clamp(20px,1.9vw,24px);font-weight:900}.about__caps-sub{color:var(--ink-soft);margin:0 0 18px;font-size:15.5px}.about__caps-note{text-align:left;max-width:190px;margin:-8px 0 12px auto}.caps{grid-template-columns:repeat(2,1fr);gap:14px;margin:0 0 14px;padding:0;list-style:none;display:grid}.caps--wide{grid-template-columns:1fr;margin:0;display:grid}.caps__item{background:var(--paper-card);border:2px solid var(--ink);border-radius:10px 4px 12px/8px 5px 10px 4px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex;box-shadow:2px 3px #1c346121}.caps__item svg{flex:none;margin-top:2px}.caps__item h4{font-family:var(--body);color:var(--ink);margin:0 0 4px;font-size:16px;font-weight:700}.caps__item p{margin:0;font-size:14.5px;line-height:1.55}.experience{position:relative}.experience__sub{max-width:460px}.timeline{margin-top:10px;margin-right:clamp(0px,10vw,150px);position:relative}.timeline ul{margin:0;padding:0;list-style:none;position:relative}.timeline>ul:before{content:"";background:var(--ink-soft);border-radius:2px;width:2.4px;position:absolute;top:8px;bottom:8px;left:0}.timeline__entry{grid-template-columns:120px minmax(200px,240px) minmax(320px,1fr);align-items:start;gap:clamp(14px,2.5vw,40px);padding:26px 0 30px 26px;display:grid;position:relative}.timeline__entry+.timeline__entry{border-top:none}.timeline__node{background:var(--paper);border:3px solid var(--ink);border-radius:50%;width:16px;height:16px;position:absolute;top:34px;left:-7px}.timeline__period{font-family:var(--body);color:var(--ink-soft);margin:6px 0 0;font-size:14.5px;font-weight:600}.timeline__role{font-family:var(--body);color:var(--ink);margin:0;font-size:19px;font-weight:700}.timeline__org{font-family:var(--body);color:var(--stress-deep);margin:3px 0 0;font-size:15.5px;font-weight:600}.timeline__bullets{margin:2px 0 0;padding:0 0 0 18px}.timeline__bullets li{margin-bottom:7px;font-size:14.8px;line-height:1.55}.timeline__note{text-align:left;width:120px;font-size:.92rem;position:absolute;top:30px;right:clamp(-140px,-11vw,-110px)}@media (width<=1240px){.timeline__note{display:none}}.projects__more{text-align:right;margin-bottom:12px}.projects__grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.project-card{background:var(--paper-card);border:2px solid var(--ink);border-radius:12px 4px/9px 5px 10px;padding:0 0 16px;transition:transform .18s ease-out,box-shadow .18s ease-out;position:relative;overflow:hidden;box-shadow:2px 3px #1c346121}.project-card:hover{transform:translateY(-3px)rotate(-.4deg);box-shadow:3px 6px #1c346129}.project-card__num{font-family:var(--hand);color:var(--pencil);z-index:1;font-size:15px;position:absolute;top:10px;left:14px}.project-card__num--faint{opacity:.85}.project-card__thumb{border-bottom:2px solid var(--ink);background:#14213f;padding:12px 14px 14px}.project-card__thumb svg{stroke:#ffffffa6;stroke-width:1.6px;fill:none;stroke-linecap:round;width:100%;height:auto;display:block}.project-card__thumb .thin{stroke-width:1.1px;opacity:.5}.project-card__tag--ph{font-family:var(--hand);color:#ffffff80;pointer-events:none;font-size:10.5px;position:absolute;bottom:8px;right:10px}.project-card__body{padding:14px 16px 0}.project-card__body h3{font-family:var(--body);color:var(--ink);margin:0 0 6px;font-size:17px;font-weight:700}.project-card__body p{margin:0 0 10px;font-size:14px;line-height:1.5}.project-card__tags{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.project-card__tags li{color:var(--ink-soft);background:#2a4a7f0d;border:1.4px solid #2a4a7f66;border-radius:3px;padding:2px 8px;font-size:12px;font-weight:600}.project-card__links{justify-content:space-between;align-items:center;font-size:14.5px;display:flex}.project-card__ph{font-family:var(--hand);color:#5c5443;font-size:12px}.achievements{grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,40px);display:grid}.achievement{grid-template-columns:46px 1fr;gap:14px;padding-right:12px;display:grid;position:relative}.achievement+.achievement{border-left:1.5px dashed #1c34614d;padding-left:clamp(18px,3vw,40px)}.achievement__icon{place-items:center;width:46px;height:46px;display:grid}.achievement h3{font-family:var(--body);color:var(--ink);margin:0 0 6px;font-size:16.5px;font-weight:700}.achievement p{margin:0 0 8px;font-size:14px;line-height:1.55}.contact{z-index:1;background:#7498d921;border:1.5px solid #1c346140;border-radius:3px;max-width:1240px;margin:0 auto clamp(30px,5vh,56px);padding:clamp(30px,5vh,48px) clamp(20px,4.5vw,72px);position:relative}.contact__row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:8px;display:flex}.contact__headline{font-family:var(--serif);color:var(--ink);font-variation-settings:"opsz" 144;margin:0;font-size:clamp(30px,3.6vw,46px);font-weight:900}.contact__headline .circle-mark__ring{stroke:var(--stress-deep)}.contact__side{align-items:flex-start;gap:20px;display:flex}.contact__note{max-width:110px;transform:rotate(2deg)}.contact__sub{margin:4px 0 18px;font-size:16px}.contact__links{flex-wrap:wrap;gap:14px 34px;margin:0;padding:0;list-style:none;display:flex}.contact__links a{color:var(--ink);align-items:center;gap:9px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.contact__links a:hover span{text-underline-offset:3px;text-decoration:underline}.footer{z-index:1;text-align:center;padding:0 0 30px;position:relative}.footer__scribble{font-family:var(--hand);color:#1c346140;font-size:15px}@media (prefers-reduced-motion:no-preference){.hero__copy>*{animation:.55s cubic-bezier(.2,.7,.3,1) both rise}.hero__copy>:nth-child(2){animation-delay:60ms}.hero__copy>:nth-child(3){animation-delay:.12s}.hero__copy>:nth-child(4){animation-delay:.18s}.hero__copy>:nth-child(5){animation-delay:.24s}.hero__copy>:nth-child(6){animation-delay:.3s}.in-view{animation:.6s cubic-bezier(.2,.7,.3,1) both rise}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=1080px){.projects__grid,.achievements{grid-template-columns:repeat(2,1fr)}.achievement+.achievement{border-left:none;padding-left:0}}@media (width<=980px){.hero{grid-template-columns:1fr}.hero__diagram{max-width:620px;margin:0 auto}.about{grid-template-columns:1fr}.about__note{margin-top:10px}.timeline__entry{grid-template-columns:150px 1fr}.timeline__main{grid-column:1/-1}.timeline__bullets{grid-column:2}.timeline__note{margin-top:8px;position:static}.topbar__nav{display:none}.mobile-nav{display:flex}}.mobile-nav{z-index:6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-overflow-scrolling:touch;background:#f7f3eaeb;border-bottom:1.5px dashed #1c346159;gap:4px;padding:8px clamp(14px,4vw,24px);display:none;position:sticky;top:0;overflow-x:auto}.mobile-nav a{color:var(--ink-soft);flex:none;padding:4px 10px;font-size:14px;font-weight:600;text-decoration:none}.mobile-nav a.is-active{color:var(--ink);background:#e8623a1f;border-radius:3px}@media (width<=640px){.caps,.projects__grid,.achievements{grid-template-columns:1fr}.timeline__entry{grid-template-columns:1fr;padding-left:18px}.timeline__node{top:30px}.contact__side{flex-direction:column}.hero__contacts{grid-template-columns:1fr}.hero__coffee{display:none}.project-card__clip{top:-10px;right:14px}}:root{--ink:#1c3461;--ink-soft:#2a4a7f;--pencil:#8a8377;--stress:#e8623a;--stress-deep:#d9542c}.ink-icon{color:var(--ink);stroke:var(--ink);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.ink-icon .thin{stroke-width:1.6px;opacity:.75}.ink-icon .fill{fill:currentColor;stroke:none}.circle-mark{white-space:nowrap;display:inline-block;position:relative}.circle-mark__ring{width:calc(100% + 1.1em);height:calc(100% + .58em);stroke:var(--stress);stroke-width:7px;stroke-linecap:round;position:absolute;inset:-.28em -.55em -.3em;overflow:visible}.circle-mark__text{position:relative}.underline-mark{white-space:nowrap;display:inline-block;position:relative}.underline-mark__stroke{width:calc(100% + .3em);height:.32em;stroke:var(--stress);stroke-width:5px;stroke-linecap:round;position:absolute;bottom:-.34em;left:-.12em;overflow:visible}.arrow-doodle{color:var(--ink-soft);flex-direction:column;align-items:flex-start;display:inline-flex}.arrow-doodle svg{stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;opacity:.85;width:5.5em;height:auto}.arrow-doodle.flip,.arrow-doodle.flip .arrow-doodle__label{transform:scaleX(-1)}.arrow-doodle__label{font-family:var(--hand);color:var(--pencil);font-size:1rem;font-style:normal;line-height:1.25;transform:rotate(-4deg)}.doodle{stroke:var(--pencil);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;fill:none}.doodle .steam{opacity:.7;stroke-width:1.6px}.doodle .short{opacity:.6;stroke-width:1.6px}@media (prefers-reduced-motion:no-preference){.doodle .steam{transform-origin:50% 100%;animation:3.2s ease-in-out infinite steam-wave}@keyframes steam-wave{0%,to{opacity:.4;transform:translateY(0)scaleX(1)}50%{opacity:.85;transform:translateY(-1.5px)scaleX(1.06)}}.doodle.sparkle .short{animation:2.6s ease-in-out infinite spark-fade}@keyframes spark-fade{0%,to{opacity:.15}50%{opacity:.8}}.circle-mark__ring,.underline-mark__stroke{stroke-dasharray:460 460;stroke-dashoffset:460px}.in-view .circle-mark__ring,.in-view .underline-mark__stroke{animation:.9s cubic-bezier(.3,.7,.3,1) .25s forwards draw-stroke}@keyframes draw-stroke{to{stroke-dashoffset:0}}}.hero-diagram{height:100%;min-height:560px;position:relative}.hero-diagram__stage{width:100%;height:100%;min-height:560px;position:relative}.laptop{z-index:2;width:38%;position:absolute;top:20%;left:33%}.laptop__screen-bg{background:0 0;border:2px solid #1c34618c;border-radius:10px 12px 4px 4px;position:absolute;inset:-4% -2% 5% 3%;transform:skewY(-1.2deg)}.laptop__screen{border:2.4px solid var(--ink);background:#fdfbf7;border-radius:8px 8px 3px 3px;padding:6px;position:relative;transform:perspective(560px)rotateY(7deg)rotateX(-1.5deg);box-shadow:2px 4px #1c346124}.code-pane{background:#14213f;border-radius:4px;height:228px;padding:10px 12px 14px;position:relative;overflow:hidden}.code-pane__dev{gap:5px;margin-bottom:8px;display:flex}.code-pane__dev span{border:1.3px solid #ffffff80;border-radius:50%;width:8px;height:8px}.code-pane__pre{font-family:var(--mono);white-space:pre-wrap;color:#dfe6f5;margin:0;font-size:11.5px;line-height:1.55;position:relative;overflow:hidden}.code-pane__pre:after{content:"";background:linear-gradient(#14213f00 0% 18%,#14213f 100%);position:absolute;inset:0}.tok--kw{color:#8ab6ff}.tok--mod{color:#9dd0ff}.tok--fn{color:#ffd479}.tok--str{color:#93e2ae}.tok--dec{color:#8ab6ff}.laptop__deck{border:2.4px solid var(--ink);transform-origin:top;background:#fdfbf7;border-radius:4px 4px 10px 10px;height:26px;margin:0 -13%;position:relative;transform:perspective(500px)rotateX(34deg);box-shadow:2px 4px #1c346124}.laptop__keys{background:repeating-linear-gradient(90deg,#0000 0 7px,#1c346147 7px 8px);border:1.4px solid #1c34618c;border-radius:3px;height:9px;position:absolute;top:4px;left:8%;right:8%}.laptop__trackpad{border:1.4px solid #1c34618c;border-radius:2px;position:absolute;inset:15px 42% 3px}.laptop__base{border:2px solid var(--ink);background:#fdfbf7;border-top:none;border-radius:0 0 14px 14px;height:5px;margin:0 -16%;position:relative}.tok--p{color:#dfe6f5}.code-pane__caret{vertical-align:text-bottom;background:#ffd479;width:7px;height:1.1em;margin-left:2px;animation:1s steps(2,end) infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}.domain{z-index:3;border:2px solid var(--ink);background:#fffdf8;border-radius:10px 4px 12px/8px 5px 10px 4px;min-width:150px;max-width:172px;padding:8px 10px 9px;position:absolute;transform:rotate(-1.2deg);box-shadow:1.5px 2.5px #1c346124}.domain:nth-child(odd){transform:rotate(1.1deg)}.domain__head{align-items:center;gap:7px;margin-bottom:4px;display:flex}.domain__title{font-family:var(--hand);color:var(--ink);letter-spacing:.1px;font-size:13.5px;line-height:1.15}.domain__glyph{flex:0 0 24px;height:24px}.domain__glyph svg{width:100%;height:100%;stroke:var(--ink);fill:none;stroke-width:2.6px}.domain__list{margin:0;padding:0;list-style:none}.domain__list li{font-family:var(--body);color:#41527a;font-size:12px;line-height:1.5}.domain--split .domain__list{columns:2;column-gap:10px}.hero-note{font-family:var(--hand);color:var(--pencil);white-space:pre-line;z-index:3;font-size:20px;line-height:1.3;position:absolute;top:68%;left:15%;transform:rotate(-8deg)}.hero-note svg{width:42px;stroke:var(--pencil);stroke-width:2px;display:block}.paper-plane{width:58px;stroke:var(--ink-soft);stroke-width:2.2px;fill:#fffdf8;stroke-linecap:round;stroke-linejoin:round;position:absolute;top:47%;right:6%;transform:rotate(-10deg)}@media (prefers-reduced-motion:no-preference){.paper-plane{animation:5s ease-in-out infinite plane-bob}@keyframes plane-bob{0%,to{transform:rotate(-10deg)translateY(0)}50%{transform:rotate(-13deg)translateY(-7px)}}}.pointer{width:58px;stroke:var(--ink-soft);stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1.5 0;opacity:.9;position:absolute}.pointer--ai{top:18%;left:22%}.pointer--backend{top:5%;left:56%;transform:scale(.9)}.pointer--cloud{top:24%;right:8%}.pointer--db{top:66%;left:62%}.pointer--fe{top:74%;left:26%}@media (width<=980px){.hero-diagram,.hero-diagram__stage{min-height:430px}.laptop{width:36%;top:26%;left:30%}.domain{min-width:118px;max-width:132px;padding:6px 8px}.domain__title{font-size:11.5px}.domain__list li{font-size:10.5px}.hero-note{font-size:16px;top:70%;left:14%}}@media (width<=640px){.hero-diagram,.hero-diagram__stage{min-height:480px}.laptop{width:46%;top:22%;left:26%}.code-pane{height:170px}.code-pane__pre{font-size:9px}.domain{border-width:1.6px;min-width:104px;max-width:118px;padding:5px 7px 6px}.domain__title{font-size:10px}.domain__glyph{flex-basis:16px;height:16px}.domain__list li{font-size:9px;line-height:1.45}.pointer{width:40px}.pointer--ai{top:12%;left:6%}.pointer--backend{top:4%;left:64%}.pointer--cloud{top:26%;right:2%}.pointer--db{top:76%;left:58%}.pointer--fe{top:80%;left:12%}.hero-note{font-size:13px;top:70%;left:6%}.paper-plane{width:40px;top:52%;right:2%}}
