:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070c12;--surface:#0d151e;--line:#26333d;--muted:#92a5b1;--text:#e9f1f3;--accent:#9af4dc;--mono:"Cascadia Code","Consolas",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:KaiTi,STKaiti,楷体,serif;font-size:17px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{color:#fff;background:#376e67}svg{vertical-align:middle;flex-shrink:0}img{max-width:100%}.resume-site{isolation:isolate;max-width:1560px;margin:auto;padding:0 6%;position:relative}.ambient-light{pointer-events:none;z-index:-1;background:radial-gradient(at 65% 36%,#185c5926,#0000 57%),radial-gradient(at 90% 58%,#5b4a9820,#0000 48%);width:80%;height:850px;position:absolute;top:0;right:0}.reading-progress{z-index:50;transform-origin:0;pointer-events:none;background:linear-gradient(90deg,#6dafff,#a6ffe1);height:2px;position:fixed;inset:0 0 auto;transform:scaleX(0);box-shadow:0 0 12px #74f4d755}.resume-header{z-index:3;border-bottom:1px solid #c6e8eb1a;justify-content:space-between;align-items:center;gap:20px;height:100px;display:flex;position:relative}.resume-brand{letter-spacing:.07em;align-items:center;gap:13px;font-size:20px;font-weight:400;display:flex}.resume-brand small{font:9px var(--mono);letter-spacing:.2em;color:#8dacae;margin-top:6px;display:block}.resume-monogram{clip-path:polygon(0 0,77% 0,100% 22%,100% 100%,23% 100%,0 78%);width:39px;height:43px;color:var(--accent);background:linear-gradient(140deg,#9af4dc1b,#9af4dc03);border:1px solid #a1f5e240;place-items:center;display:grid}.resume-nav{color:#c1d0d6;align-items:center;gap:35px;font-size:14px;display:flex}.resume-nav a{align-items:center;gap:7px;padding:8px 0;display:flex;position:relative}.resume-nav a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .25s;position:absolute;bottom:1px;left:0;right:0;transform:scaleX(0)}.resume-nav a:hover{color:var(--accent)}.resume-nav a:hover:after{transform:scaleX(1)}.motion-toggle{color:#b8d1d2;background:0 0;border:1px solid #c4e3e530;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;transition:border-color .2s,background .2s;display:grid}.motion-toggle:hover{background:#9af4dc12;border-color:#9af4dc80}.motion-toggle:disabled{opacity:.5}.resume-hero{grid-template-columns:1fr 1fr;align-items:center;gap:25px;min-height:650px;padding:52px 0 75px;display:grid;position:relative}.hero-copy{z-index:2;min-width:0;position:relative}.resume-eyebrow{font:11px var(--mono);letter-spacing:.13em;color:#8da9b1;align-items:center;gap:11px;margin:0 0 25px;line-height:1.8;display:flex}.resume-eyebrow>span{background:var(--accent);border-radius:50%;width:5px;height:5px;box-shadow:0 0 12px #9af4dc66}.resume-hero h1{letter-spacing:-.025em;white-space:nowrap;margin:0 0 26px;font-size:clamp(44px,5.7vw,82px);font-weight:400;line-height:1.26}.resume-hero h1>span{background:linear-gradient(110deg,#d9fff4 4%,#91ded8 47%,#929bdf 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.resume-intro{color:#a5b8c2;letter-spacing:.035em;margin:0 0 30px;font-size:18px;line-height:1.9}.hero-actions{align-items:center;gap:28px;display:flex}.resume-primary{color:#0d2422;background:#9af4dc;border:1px solid #c5ffef;align-items:center;gap:40px;padding:17px 24px;font-size:16px;transition:box-shadow .3s,transform .3s;display:inline-flex;position:relative;overflow:hidden}.resume-primary:before{content:"";background:linear-gradient(100deg,#0000 35%,#ffffff70 50%,#0000 65%);transition:transform .7s;position:absolute;inset:-50%;transform:translate(-100%)skew(-20deg)}.resume-primary:hover{transform:translateY(-2px);box-shadow:0 0 38px #7df8d32b}.resume-primary:hover:before{transform:translate(100%)skew(-20deg)}.resume-primary svg{transition:transform .25s}.resume-primary:hover svg{transform:translateY(3px)}.hero-side-note{font:10px/1.7 var(--mono);letter-spacing:.15em;color:#8199a4;border-left:1px solid #a0c4ca30;padding-left:22px}.hero-baseline{font:11px var(--mono);color:#8fa4ac;letter-spacing:.06em;border-bottom:1px solid #c6e8eb26;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-baseline>span:first-child{align-items:center;gap:9px;font-family:inherit;display:flex}.hero-baseline i{border:1px solid #9af4dc;border-radius:50%;width:4px;height:4px;display:block}.hero-baseline>a{letter-spacing:.12em;align-items:center;gap:12px;font-size:9px;display:flex}.hero-baseline>a svg{animation:2.5s ease-in-out infinite scroll-cue}.orbital-scene{aspect-ratio:1;contain:layout style;align-self:center;width:100%;min-width:0;max-height:560px;position:relative}.scene-halo{background:radial-gradient(circle,#79f2db12 0%,#557dbe09 45%,#0000 70%);border-radius:50%;animation:9s ease-in-out infinite alternate halo-breathe;position:absolute;inset:8%}.scene-grid{background-image:linear-gradient(#a2d2dd07 1px,#0000 1px),linear-gradient(90deg,#a2d2dd07 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:4%;transform:perspective(500px)rotateX(20deg)rotate(-10deg);-webkit-mask-image:radial-gradient(#000,#0000 70%);mask-image:radial-gradient(#000,#0000 70%)}.scene-depth{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .6s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.orbital-svg{filter:drop-shadow(0 0 12px #51d8bb18);width:100%;height:100%;display:block;overflow:visible}.scene-reticle{color:#6c9ca64d;stroke-width:1px;transform-origin:280px 280px;animation:130s linear infinite orbit-turn}.scene-orbit{transform-origin:280px 280px;animation:45s linear infinite reverse orbit-turn}.scene-sculpture{transform-origin:280px 280px;animation:50s linear infinite sculpture-turn}.scene-core{transform-origin:280px 280px;animation:7s ease-in-out infinite alternate core-breathe}.scene-caption{font:9px var(--mono);letter-spacing:.2em;color:#6c939d;pointer-events:none;position:absolute;left:6%;right:6%}.scene-caption-top{padding-left:20px;top:3%}.scene-caption-top:before{content:"+";color:#91cfc4;position:absolute;left:0}.scene-caption-bottom{justify-content:space-between;align-items:center;display:flex;bottom:3%}.scene-caption-bottom span{color:#b5e6dc;font-size:24px;line-height:12px}.orbital-scene[data-active=false] *{animation-play-state:paused!important}.hero-arrive{animation:.9s cubic-bezier(.2,.65,.2,1) both hero-enter}.hero-copy>h1{animation-delay:.1s}.hero-copy>.resume-intro{animation-delay:.18s}.hero-actions{animation-delay:.26s}.reveal[data-reveal=ready]{transition:opacity .7s ease var(--reveal-delay,0s),transform .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0s)}.reveal[data-reveal=ready]:not([data-visible=true]){opacity:0;transform:translateY(24px)}.resume-collection{padding-top:55px;scroll-margin-top:30px}.resume-section-title{justify-content:space-between;align-items:flex-end;gap:25px;display:flex}.resume-section-title .resume-eyebrow{margin-bottom:13px;font-size:10px}.resume-section-title h2{align-items:baseline;gap:21px;margin:0;font-size:36px;font-weight:400;display:flex}.resume-section-title h2>span{font:11px var(--mono);letter-spacing:.06em;color:#758d9a}.resume-search{color:#90a6b1;border-bottom:1px solid #56717c80;align-items:center;gap:12px;max-width:100%;padding:10px 0;transition:border-color .2s;display:flex}.resume-search:focus-within{border-color:var(--accent)}.resume-search input{color:#e4f2f1;background:0 0;border:0;width:200px;min-width:0;font-size:15px}.resume-search input::placeholder{color:#8099a5}.resume-filters{flex-wrap:wrap;gap:8px;margin:25px 0 28px;display:flex}.resume-filters button{color:#8ba3b0;background:0 0;border:1px solid #0000;border-radius:2px;padding:8px 16px;font-size:14px;transition:color .2s,background .2s,border-color .2s}.resume-filters button[aria-pressed=true]{color:#b5f8e6;background:#9af4dc0b;border-color:#9af4dc45}.resume-filters button:hover{color:var(--accent);background:#9af4dc10}.card-stage{perspective:1200px;height:100%}.resume-feature,.resume-card{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));background:linear-gradient(145deg,#101b25,#0a121b);border:1px solid #7896a62b;transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .3s;position:relative;overflow:hidden}.resume-feature:after,.resume-card:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(450px circle at var(--pointer-x,50%) var(--pointer-y,50%),#9af4dc0b,transparent 65%);transition:opacity .3s;position:absolute;inset:0}.resume-feature:hover,.resume-card:hover{border-color:#9af4dc60;box-shadow:0 18px 55px #00000030}.resume-feature:hover:after,.resume-card:hover:after{opacity:1}.resume-feature{grid-template-columns:1.1fr 1fr;display:grid}.resume-cover{aspect-ratio:1.65;background:#101e28;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.resume-cover.is-featured{aspect-ratio:auto;height:100%;min-height:340px}.resume-cover img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;max-height:440px;padding:16px;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}.resume-feature:hover img,.resume-card:hover img{transform:scale(1.035)}.resume-type-cover{background:radial-gradient(at 60% 36%,#214b4c,#101d29 75%);position:absolute;inset:0;overflow:hidden}.cover-variant-1 .resume-type-cover{background:radial-gradient(at 60% 36%,#30375a,#121b2a 75%)}.cover-variant-2 .resume-type-cover{background:radial-gradient(at 60% 36%,#294d48,#111f28 75%)}.cover-grid{background-image:linear-gradient(#b3edee0a 1px,#0000 1px),linear-gradient(90deg,#b3edee0a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.cover-object{transition:transform .7s cubic-bezier(.2,.7,.2,1);position:absolute;inset:15% 24%;transform:rotate(-26deg)}.cover-object i{background:linear-gradient(140deg,#8fe9dd0a,#0000 65%);border:1px solid #a0e7e259;display:block;position:absolute;inset:12% 8%;transform:skewY(14deg);box-shadow:inset 1px 1px 25px #a7ebe508}.cover-object i:nth-child(2){border-color:#91bcda3b;transform:translate(-12px,12px)skewY(14deg)}.cover-object i:nth-child(3){border-color:#91bcda24;transform:translate(-24px,24px)skewY(14deg)}.resume-feature:hover .cover-object,.resume-card:hover .cover-object{transform:rotate(-20deg)translateY(-6px)}.cover-mark{font:12px var(--mono);color:#a5ccd1;position:absolute;top:20px;left:24px}.cover-caption{font:9px var(--mono);letter-spacing:.19em;color:#8eb1bb;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:22px;left:24px;right:24px}.resume-feature-copy{flex-direction:column;min-width:0;padding:34px 35px;display:flex}.resume-card-kicker{color:#98bdba;justify-content:space-between;gap:15px;font-size:12px;line-height:1.5;display:flex}.resume-card-kicker>span+span{color:#81939f;font:10px/1.8 var(--mono)}.resume-feature-copy h3,.resume-card h3{overflow-wrap:anywhere;margin:23px 0 15px;font-size:29px;font-weight:400;line-height:1.5}.resume-card-summary{color:#9aafbc;overflow-wrap:anywhere;white-space:pre-line;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0 0 27px;font-size:16px;line-height:1.9;display:-webkit-box;overflow:hidden}.resume-card-bottom{color:#8da5b2;border-top:1px solid #9fc3cf22;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:20px;font-size:12px;display:flex}.resume-card-bottom time{font:10px var(--mono)}.resume-card-bottom>span{color:#bddbd7;align-items:center;gap:17px;font-size:14px;display:flex}.resume-card-bottom svg{transition:transform .25s}.resume-feature:hover .resume-card-bottom svg,.resume-card:hover .resume-card-bottom svg{transform:translate(3px,-3px)}.resume-grid{grid-template-columns:1fr 1fr;gap:28px;margin-top:28px;display:grid}.resume-grid:empty{display:none}.resume-card{flex-direction:column;min-width:0;height:100%;display:flex}.resume-card-content{flex-direction:column;flex:1;min-width:0;padding:27px;display:flex}.resume-card h3{margin:18px 0 12px;font-size:26px}.resume-empty{text-align:center;color:#93acb8;background:radial-gradient(at 50% 10%,#15333745,#0000 65%),#0b131b;border:1px solid #55767e40;padding:48px 20px;line-height:1.8;position:relative;overflow:hidden}.empty-orbit{color:#a0dccc;border:1px solid #82dbca30;border-radius:50%;place-items:center;width:80px;height:80px;margin:0 auto 22px;display:grid;position:relative}.empty-orbit:after{content:"";border:1px dashed #82dbca25;border-radius:50%;animation:60s linear infinite orbit-turn;position:absolute;inset:-8px}.empty-kicker{font:9px var(--mono);letter-spacing:.23em;color:#6fa3a6;display:block}.resume-empty h1,.resume-empty h3{color:#d7e8e7;margin:13px 0;font-size:24px;font-weight:400}.resume-empty p{margin:0;font-size:15px}.resume-empty button{color:#b9e7db;background:#9af4dc08;border:1px solid #789c9960;margin-top:18px;padding:10px 18px}.resume-empty a{margin-top:15px;text-decoration:underline;display:inline-block}.resume-notice{color:#ecd6ad;background:#282319;border:1px solid #8d743e;flex-wrap:wrap;align-items:center;gap:15px;margin:20px 0;padding:15px 20px;font-size:15px;display:flex}.resume-notice button{background:0 0;border:0;text-decoration:underline}.resume-closing{border-top:1px solid #c4e3e426;grid-template-columns:1fr 1fr;align-items:center;gap:30px;margin-top:80px;padding:48px 0 55px;scroll-margin-top:25px;display:grid;position:relative}.resume-closing .resume-eyebrow{margin-bottom:19px;font-size:10px}.resume-closing h2{margin:0;font-size:38px;font-weight:400;line-height:1.5}.resume-closing h2>span{color:#8fabae}.closing-copy{z-index:1;justify-self:center;position:relative}.closing-copy p{color:#97adba;margin:0;font-size:16px;line-height:1.9}.closing-copy>a{color:#bce3dc;border-bottom:1px solid #8dbdbd70;align-items:center;gap:24px;margin-top:18px;padding:12px 0;font-size:14px;display:inline-flex}.closing-copy>a:hover{color:var(--accent)}.closing-star{color:#89ddc90c;pointer-events:none;font-family:serif;font-size:115px;line-height:1;animation:90s linear infinite orbit-turn;position:absolute;top:20px;right:0}.resume-footer{color:#819ba7;border-top:1px solid #b8dae426;justify-content:space-between;gap:25px;padding:25px 0 30px;font-size:12px;display:flex}.resume-footer>a{align-items:center;gap:10px;display:flex}.resume-footer>a:first-child{color:#b7cece}.resume-footer>a:first-child span{font:9px var(--mono);color:#6e8997}.resume-detail{padding:32px 0 55px}.resume-back{color:#9bbdbb;align-items:center;gap:10px;font-size:14px;display:inline-flex}.resume-back>span{font:9px var(--mono);color:#617e8c;letter-spacing:.1em;margin-left:14px}.resume-work-heading{max-width:1040px;margin:40px auto 32px}.resume-work-heading h1{overflow-wrap:anywhere;margin:19px 0;font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.4}.resume-work-heading>.resume-eyebrow{margin:0;font-family:inherit;font-size:13px}.resume-work-summary{color:#9fb4c0;white-space:pre-line;font-size:18px;line-height:1.9}.resume-work-meta{color:#869fae;border-top:1px solid #9dc0cf26;justify-content:space-between;align-items:center;gap:15px;margin-top:27px;padding-top:17px;font-size:12px;display:flex}.resume-work-actions{flex-wrap:wrap;gap:20px;display:flex}.resume-work-meta button{color:#a5cdc7;background:0 0;border:0;align-items:center;gap:7px;padding:7px 0;font-size:13px;display:flex}.resume-work-meta button:hover{color:var(--accent)}.resume-mobile-outline{display:none}.resume-reading{grid-template-columns:170px minmax(0,840px);justify-content:center;align-items:start;gap:30px;display:grid}.resume-paper{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#263b3c;background:#f7f8f5;border:1px solid #ccd6d3;min-width:0;padding:42px 48px;position:relative;box-shadow:0 15px 60px #00000025}.resume-paper:before{content:"";background:linear-gradient(90deg,#a6fbe1,#748ece);height:2px;position:absolute;top:-1px;left:-1px;right:-1px}.resume-paper .folio-richtext{color:#334237;overflow-wrap:anywhere;font-family:inherit}.resume-paper .folio-richtext h1,.resume-paper .folio-richtext h2,.resume-paper .folio-richtext h3{color:#304e3a}.resume-paper .folio-richtext img{height:auto}.resume-paper .folio-richtext figure{max-width:100%;margin-top:20px;margin-bottom:20px}.resume-reading .folio-outline{width:auto;max-height:80vh;padding:8px 0;font-size:13px;position:sticky;top:25px;overflow:auto}.resume-reading .folio-outline button{color:inherit;cursor:pointer;background:0 0;border:0}.resume-reading .folio-outline-heading{justify-content:space-between;align-items:center;display:flex}.resume-reading .folio-outline h3{color:#bdcdd3;font-size:15px}.resume-reading .folio-outline li{align-items:baseline;display:flex}.resume-reading .folio-outline ul{padding:0;list-style:none}.resume-site .resume-reading>.folio-outline-tree{color:#8fa9b5;background:0 0;border:0}.resume-site .resume-reading .folio-outline-label{color:#8fa9b5}.resume-site .resume-reading .folio-outline-label:hover{color:var(--accent);background:#9af4dc0b}.resume-endmark{text-align:center;color:#708477;padding-top:40px;font-size:12px}.resume-more{color:#aecfc9;justify-content:center;align-items:center;gap:25px;padding-top:32px;font-size:16px;display:flex}.resume-skip{z-index:100;color:#102825;background:#9af4dc;padding:14px;position:fixed;top:-100px;left:20px}.resume-skip:focus{top:10px}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes sculpture-turn{0%{transform:rotate(-16deg)}to{transform:rotate(344deg)}}@keyframes halo-breathe{0%{opacity:.55;transform:scale(.95)}to{opacity:1;transform:scale(1.07)}}@keyframes core-breathe{0%{opacity:.5;transform:scale(.9)}to{opacity:.85;transform:scale(1.06)}}@keyframes hero-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-cue{0%,to{transform:translateY(-2px)}50%{transform:translateY(3px)}}.resume-site[data-motion=paused] *{transition:none!important;animation:none!important}.resume-site[data-motion=paused] .reveal{opacity:1!important;transform:none!important}.resume-site[data-motion=paused] .scene-depth,.resume-site[data-motion=paused] .resume-card,.resume-site[data-motion=paused] .resume-feature{transform:none!important}@media (width>=1500px){.resume-hero{min-height:710px}.orbital-scene{max-height:590px}.resume-hero h1{font-size:86px}}@media (width<=1000px){.resume-site{padding:0 5%}.resume-hero{gap:0;min-height:570px}.resume-hero h1{font-size:clamp(40px,6vw,62px)}.resume-intro{font-size:16px}.hero-side-note{display:none}.scene-caption{letter-spacing:.1em;font-size:7px}.resume-feature-copy{padding:27px}.resume-feature-copy h3{font-size:26px}.resume-reading{grid-template-columns:minmax(0,840px)}.resume-site .resume-reading>.folio-outline-tree{display:none!important}.resume-mobile-outline{border-top:1px solid #b7d5d526;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:22px;padding-top:18px;font-size:13px;display:flex}.resume-mobile-outline>span{color:#748e9b}.resume-mobile-outline a{color:#a3c3c0;overflow-wrap:anywhere;border-bottom:1px solid #98c4c33b;padding:3px 0}.resume-closing h2{font-size:31px}.closing-copy p{font-size:15px}}@media (width<=620px){.resume-site{padding:0 22px}.resume-header{gap:12px;height:82px}.resume-brand{gap:10px;font-size:17px}.resume-brand small{letter-spacing:.1em;font-size:8px}.resume-monogram{width:30px;height:35px}.resume-nav{gap:18px;font-size:13px}.resume-contact-link{display:none!important}.motion-toggle{width:27px;height:27px}.resume-hero{flex-direction:column;align-items:stretch;min-height:0;padding:39px 0 66px;display:flex}.hero-copy{z-index:2}.resume-hero h1{margin-bottom:20px;font-size:48px;line-height:1.28}.resume-eyebrow{letter-spacing:.06em;margin-bottom:20px;font-size:9px}.resume-intro{margin-bottom:23px;font-size:16px;line-height:1.8}.resume-primary{gap:32px;padding:13px 20px;font-size:15px}.orbital-scene{align-self:center;width:88%;max-height:330px;margin:-5px 0 -3px}.scene-caption-top{display:none}.scene-caption-bottom{font-size:7px;bottom:2%}.scene-caption-bottom span{font-size:18px}.hero-baseline{gap:10px;padding:17px 0;font-size:9px}.hero-baseline>a{gap:0;font-size:0}.hero-baseline>a svg{width:14px;height:14px}.resume-collection{padding-top:35px}.resume-section-title{flex-direction:column;align-items:stretch;gap:21px}.resume-section-title h2{gap:17px;font-size:29px}.resume-section-title h2>span{font-size:10px}.resume-section-title .resume-eyebrow{margin-bottom:10px;font-size:9px}.resume-search input{width:100%;font-size:14px}.resume-search{width:100%}.resume-filters{margin:20px 0}.resume-filters button{padding:7px 12px;font-size:13px}.resume-feature{flex-direction:column;display:flex}.resume-cover.is-featured{aspect-ratio:1.5;height:auto;min-height:0}.resume-feature-copy,.resume-card-content{padding:23px}.resume-feature-copy h3,.resume-card h3{margin:17px 0 12px;font-size:25px}.resume-card-summary{margin-bottom:23px;font-size:15px;line-height:1.85}.resume-card-kicker{font-size:11px}.resume-card-kicker>span+span{font-size:9px}.resume-card-bottom{flex-wrap:wrap;gap:10px;padding-top:16px}.resume-card-bottom>span{gap:10px;font-size:13px}.resume-grid{grid-template-columns:1fr;gap:22px;margin-top:22px}.cover-mark{font-size:10px;top:17px;left:20px}.cover-caption{font-size:8px;bottom:18px;left:20px;right:20px}.resume-empty{padding:36px 17px}.resume-empty p{font-size:14px}.resume-empty h3{font-size:22px}.empty-orbit{width:62px;height:62px;margin-bottom:20px}.empty-kicker{font-size:8px}.resume-closing{margin-top:48px;padding:32px 0 36px;display:block}.resume-closing .resume-eyebrow{margin-bottom:16px;font-size:9px}.resume-closing h2{font-size:31px}.closing-copy{margin-top:23px}.closing-copy p{font-size:15px}.closing-copy>a{margin-top:12px;font-size:13px}.closing-star{font-size:90px;top:45px;right:0}.resume-footer{flex-wrap:wrap;gap:15px;padding:22px 0;font-size:11px}.resume-footer>span{display:none}.resume-footer>a:first-child span{font-size:8px}.resume-detail{padding-top:25px}.resume-back{font-size:13px}.resume-back>span{display:none}.resume-work-heading{margin:30px 0}.resume-work-summary{font-size:16px}.resume-work-meta{flex-direction:column;align-items:flex-start;gap:7px}.resume-work-actions{gap:20px}.resume-work-actions button{font-size:12px}.resume-reading{margin:0 -10px}.resume-paper{padding:25px 19px}.resume-paper .folio-richtext{font-size:16px}.resume-paper .folio-richtext h1{font-size:27px}.resume-paper .folio-richtext h2{font-size:24px}.resume-paper .folio-richtext h3{font-size:21px}.resume-paper .folio-richtext [id]{scroll-margin-top:25px}.resume-notice{padding:12px;font-size:14px}.resume-more{font-size:15px}}@media (width<=360px){.resume-site{padding:0 18px}.resume-nav{gap:12px}.resume-brand{gap:8px;font-size:16px}.resume-hero h1{font-size:43px}.orbital-scene{width:93%}.resume-section-title h2{font-size:27px}.resume-feature-copy,.resume-card-content{padding:19px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal{opacity:1!important;transform:none!important}.scene-depth,.resume-card,.resume-feature{transform:none!important}}@media print{html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:#111;background:#fff}.resume-header,.resume-footer,.resume-back,.resume-work-actions,.resume-more,.resume-site .resume-reading>.folio-outline-tree,.resume-mobile-outline,.resume-skip,.resume-endmark,.ambient-light,.reading-progress{display:none!important}.resume-site{max-width:none;padding:0}.resume-detail{padding:0}.resume-reading{margin:0;display:block}.resume-paper{box-shadow:none;background:#fff;border:0;padding:0}.resume-paper:before{display:none}.resume-work-heading{max-width:none;margin:0 0 25px}.resume-work-heading h1,.resume-work-summary,.resume-work-meta,.resume-work-heading .resume-eyebrow{color:#222}.resume-work-meta{border-top:0;padding:0}.resume-paper .folio-richtext pre{white-space:pre-wrap}.resume-paper .tableWrapper{overflow:visible}.resume-paper h1,.resume-paper h2,.resume-paper h3{-moz-column-break-after:avoid;break-after:avoid}.resume-paper img{-o-object-fit:contain;object-fit:contain;max-height:700px}}
