@layer components{.pg-doc-head{padding-block-end:var(--space-64)}.pg-doc-head__kicker{margin:0}.pg-doc-actions{align-items:center;gap:var(--space-16) var(--space-32);box-shadow:inset 0 1px 0 var(--line-strong);flex-wrap:wrap;margin-block-start:var(--space-32);padding-block-start:var(--space-32);display:flex}.pg-doc-head__note{--col-md:1 / 7;--col-lg:1 / 8;max-width:var(--measure);font-size:var(--fs-small);line-height:var(--lh-small);color:var(--paper-dim)}.pg-doc-body{row-gap:var(--space-64);padding-block-end:var(--section-md)}main:has(+.pg-cta) .pg-doc-body{padding-block-end:0}.pg-doc-nav{--col-lg:1 / 4;min-width:0}.pg-doc-sections{--col-md:1 / -1;--col-lg:4 / 11;min-width:0}.pg-doc-nav__label{margin:0 0 var(--space-16)}.pg-doc-nav__list{margin:0;padding:0;list-style:none;display:grid}.pg-doc-nav__link{align-items:baseline;gap:var(--space-12);min-height:calc(var(--space-32) + var(--space-4));padding:var(--space-8) 0 var(--space-8) var(--space-16);box-shadow:inset 1px 0 0 var(--line);font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-dim);transition:color var(--dur-160) var(--ease-out), box-shadow var(--dur-160) var(--ease-out);display:flex}.pg-doc-nav__num{color:var(--paper-faint)}.pg-doc-nav__link:is(:hover,:focus-visible){color:var(--paper)}.pg-doc-nav__link:is(.active,[aria-current=location]){color:var(--paper);box-shadow:inset var(--pixel-size) 0 0 var(--signal)}.pg-doc-nav__link:is(.active,[aria-current=location]) .pg-doc-nav__num{color:var(--signal)}.pg-doc-nav__aside{box-shadow:inset 0 1px 0 var(--line);margin-block-start:var(--space-32);padding-block-start:var(--space-24)}@media (width>=1024px){.pg-doc-nav{top:calc(var(--header-h) + var(--space-24));align-self:start;position:sticky}}@media (width<=1023px){.pg-doc-body{row-gap:var(--space-48)}.pg-doc-nav{box-shadow:inset 0 1px 0 var(--line);padding-block-start:var(--space-24)}.pg-doc-nav__list{gap:0 var(--space-24);flex-wrap:wrap;display:flex}.pg-doc-nav__link{box-shadow:none;padding-inline-start:0}.pg-doc-nav__link:is(.active,[aria-current=location]){box-shadow:inset 0 calc(-1 * var(--pixel-size)) 0 var(--signal)}}.pg-doc-section{scroll-margin-top:calc(var(--header-h) + var(--space-24))}.pg-doc-section+.pg-doc-section{margin-block-start:var(--space-96)}.pg-doc-section__head{box-shadow:inset 0 1px 0 var(--line-strong);padding-block-start:var(--space-24)}.pg-doc-section__title{align-items:baseline;gap:var(--space-16);font:var(--fw-h3) var(--fs-h3) / var(--lh-h3) var(--font-display);letter-spacing:var(--tr-h3);word-spacing:.05em;color:var(--paper);margin:0;display:flex}.pg-doc-section__index{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);color:var(--signal);word-spacing:normal;flex:none}.pg-doc-section__body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--paper-dim);margin-block-start:var(--space-32)}.pg-doc-fold__summary{justify-content:space-between;align-items:baseline;gap:var(--space-24);min-height:var(--target-min);cursor:pointer;list-style:none;display:flex}.pg-doc-fold__summary::-webkit-details-marker{display:none}.pg-doc-fold__summary:is(:hover,:focus-visible) .pg-doc-section__title{color:var(--signal-strong)}.pg-doc-fold__mark{width:calc(6 * var(--pixel-size));height:calc(6 * var(--pixel-size));color:var(--signal);flex:none;align-self:center;position:relative}.pg-doc-fold__mark:before,.pg-doc-fold__mark:after{content:"";background:currentColor;position:absolute}.pg-doc-fold__mark:before{inset:calc(50% - var(--pixel-size) / 2) 0 auto;height:var(--pixel-size)}.pg-doc-fold__mark:after{inset:0 auto 0 calc(50% - var(--pixel-size) / 2);width:var(--pixel-size)}.pg-doc-fold[open] .pg-doc-fold__mark:after{display:none}.pg-doc-section:has(>.pg-doc-fold:not([open])){padding-block-end:var(--space-24)}.pg-doc-section:has(>.pg-doc-fold:not([open]))+.pg-doc-section{margin-block-start:0}@media (width<=767px){.pg-doc-head{padding-block-end:var(--space-48)}.pg-doc-actions{gap:var(--space-16) var(--space-24);padding-block-start:var(--space-24)}.pg-doc-body{padding-block-end:var(--section-md-phone)}.pg-doc-section+.pg-doc-section{margin-block-start:var(--space-64)}.pg-doc-section__body{margin-block-start:var(--space-24)}}@media print{@page{margin:14mm 14mm 16mm}html,body{color:canvastext;background:canvas}:is(.pg-header,.pg-footer,.pg-cta,.pg-field,.pg-menu,.skip-link,.pg-palette,#agent-content,.pg-doc-nav,.pg-doc-actions,.pg-doc-head__note,.pg-doc-fold__mark){display:none}.pg-container{max-width:none;padding-inline:0}.pg-grid.pg-doc-body,.pg-doc-head>.pg-grid{display:block}.pg-doc-head{border-block-end:1px solid graytext;padding-block:0 6mm}.pg-doc-head__title{font-size:32pt;line-height:1}.pg-doc-head__lead{margin-block-start:3mm;font-size:11pt}.pg-doc-body{padding:0}.pg-doc-sections{max-width:none}.pg-doc-section+.pg-doc-section{margin-block-start:7mm}.pg-doc-section__head{box-shadow:none;break-after:avoid;border-block-start:1px solid graytext;padding-block-start:3mm}.pg-doc-section__title{font-size:14pt}.pg-doc-section__body{margin-block-start:3mm;font-size:10pt;line-height:1.45}.pg-doc-fold__summary{min-height:0}}}@media print{html:root.pg-system{color-scheme:light;--paper:CanvasText;--paper-dim:CanvasText;--paper-faint:GrayText;--signal:CanvasText;--signal-strong:CanvasText;--line:GrayText;--line-strong:GrayText;--ink:Canvas;--ink-raised:Canvas}}@layer pages{.pg-resume-down{rotate:90deg}.pg-btn:is(:hover,:focus-visible) .pg-resume-down,.pg-link--arrow:is(:hover,:focus-visible) .pg-resume-down{translate:0 calc(2 * var(--pixel-size))}.pg-resume-formats{position:relative}.pg-resume-formats__summary{min-height:var(--target-min);cursor:pointer;font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-dim);align-items:center;list-style:none;display:inline-flex}.pg-resume-formats__summary::-webkit-details-marker{display:none}.pg-resume-formats__summary:after{content:"+";color:var(--signal);margin-inline-start:var(--space-8)}.pg-resume-formats[open] .pg-resume-formats__summary:after{content:"−"}.pg-resume-formats__summary:is(:hover,:focus-visible){color:var(--paper)}.pg-resume-formats__list{gap:var(--space-8) var(--space-24);padding:var(--space-8) 0 0;font-size:var(--fs-small);flex-wrap:wrap;margin:0;list-style:none;display:flex}.pg-resume-note{margin:0}.pg-resume-contact__label{margin:0 0 var(--space-12)}.pg-resume-contact{gap:var(--space-8);font-size:var(--fs-small);line-height:var(--lh-small);margin:0;padding:0;list-style:none;display:grid}.pg-resume-contact a{overflow-wrap:anywhere}@media (width<=1023px){.pg-resume-contact{gap:var(--space-8) var(--space-24);flex-wrap:wrap;display:flex}}.pg-resume-summary{font:var(--fw-lead) var(--fs-lead) / var(--lh-lead) var(--font-body);letter-spacing:var(--tr-lead);color:var(--paper);text-wrap:pretty}.pg-resume-intro{margin-block-end:var(--space-24)}.pg-resume-steps{margin:0;padding:0;list-style:none}.pg-resume-steps__item{grid-template-columns:calc(var(--space-48) + var(--space-8)) minmax(0, 1fr);padding-block:var(--space-16);box-shadow:inset 0 -1px 0 var(--line);color:var(--paper);display:grid}.pg-resume-steps__item:first-child{padding-block-start:0}.pg-resume-steps__num{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);color:var(--signal);padding-block-start:var(--space-4)}.pg-resume-steps__name{font-weight:var(--fw-button);color:var(--paper);margin-block-end:var(--space-4);display:block}.pg-resume-steps__item:has(.pg-resume-steps__name){color:var(--paper-dim)}.pg-resume-job__when,.pg-resume-job__meta,.pg-resume-work__tags,.pg-resume-work__stack,.pg-resume-record__meta{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-dim);margin:0}.pg-resume-job__role{margin:var(--space-12) 0 var(--space-8);font:var(--fw-h3) var(--fs-h3) / var(--lh-h3) var(--font-display);letter-spacing:var(--tr-h3);word-spacing:.05em;color:var(--paper)}.pg-resume-job__meta{text-transform:none;color:var(--paper-faint)}.pg-resume-bullets{gap:var(--space-8);margin:var(--space-24) 0 0;padding:0;list-style:none;display:grid}.pg-resume-bullets li{padding-inline-start:var(--space-24);position:relative}.pg-resume-bullets li:before{content:"";inset-inline-start:0;top:calc(.8em - var(--pixel-size) / 2);width:calc(2 * var(--pixel-size));height:calc(2 * var(--pixel-size));background:var(--signal);position:absolute}.pg-resume-work{margin:0;padding:0;list-style:none}.pg-resume-work__item{padding-block:var(--space-32) var(--space-48);box-shadow:inset 0 1px 0 var(--line)}.pg-resume-work__head{grid-template-columns:calc(var(--space-48) + var(--space-8)) minmax(0, 1fr);align-items:baseline;row-gap:var(--space-8);display:grid}.pg-resume-work__num{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);color:var(--signal)}.pg-resume-work__client{font:var(--fw-h3) var(--fs-h3) / var(--lh-h3) var(--font-display);letter-spacing:var(--tr-h3);word-spacing:.05em;color:var(--paper);overflow-wrap:anywhere;margin:0}.pg-resume-work__tags{grid-column:2}.pg-resume-work__item>:not(.pg-resume-work__head){margin-inline-start:calc(var(--space-48) + var(--space-8))}.pg-resume-work__headline{color:var(--paper);margin-block-start:var(--space-24)}.pg-resume-work__contribution{margin-block-start:var(--space-12)}.pg-resume-work__stack{text-transform:none;color:var(--paper-faint);margin-block-start:var(--space-24)}.pg-resume-work__link{margin-block-start:var(--space-16)}.pg-resume-more{box-shadow:inset 0 1px 0 var(--line);padding-block-start:var(--space-32)}@media (width<=767px){.pg-resume-work__head{grid-template-columns:calc(var(--space-32) + var(--space-8)) minmax(0, 1fr)}.pg-resume-work__item>:not(.pg-resume-work__head){margin-inline-start:0}.pg-resume-steps__item{grid-template-columns:calc(var(--space-32) + var(--space-8)) minmax(0, 1fr)}}.pg-resume-records{margin:0;padding:0;list-style:none}.pg-resume-record{column-gap:var(--grid-gutter);row-gap:var(--space-4);padding-block:var(--space-16);box-shadow:inset 0 1px 0 var(--line);color:inherit;grid-template-columns:minmax(0,11rem) minmax(0,1fr);text-decoration:none;display:grid}.pg-resume-record>.pg-resume-record__meta:first-child{grid-row:span 3;padding-block-start:var(--space-4)}.pg-resume-records--indexed .pg-resume-record{grid-template-columns:calc(var(--space-48) + var(--space-8)) minmax(0, 1fr);column-gap:0}.pg-resume-records--indexed .pg-resume-record__meta:first-child{color:var(--signal)}.pg-resume-record__name{align-items:baseline;gap:var(--space-8);font-weight:var(--fw-button);color:var(--paper);transition:color var(--dur-160) var(--ease-out);display:inline-flex}.pg-resume-record__name .pg-arrow{align-self:center}.pg-resume-record__stack{text-transform:none;color:var(--paper-faint);padding-block-start:var(--space-4)}a.pg-resume-record:is(:hover,:focus-visible) .pg-resume-record__name{color:var(--signal-strong)}a.pg-resume-record:is(:hover,:focus-visible) .pg-arrow--external{translate:calc(2 * var(--pixel-size)) calc(-2 * var(--pixel-size))}.pg-resume-record--page>.pg-resume-record__meta:first-child{grid-row:span 4}.pg-resume-record__page:is(:hover,:focus-visible){color:var(--signal-strong)}.pg-resume-record__page:is(:hover,:focus-visible) .pg-arrow{translate:calc(2 * var(--pixel-size)) 0}.pg-resume-record__visit{justify-self:start;align-items:baseline;gap:var(--space-8);display:inline-flex}.pg-resume-contrib{margin-block-start:var(--space-32)}@media (width<=767px){.pg-resume-record{grid-template-columns:minmax(0,1fr)}.pg-resume-records--indexed .pg-resume-record{grid-template-columns:calc(var(--space-32) + var(--space-8)) minmax(0, 1fr)}.pg-resume-records--indexed .pg-resume-record>.pg-resume-record__meta:first-child{grid-row:span 2;padding-block-start:var(--space-4)}.pg-resume-record>.pg-resume-record__meta:first-child{grid-row:auto;padding-block-start:0}}.pg-resume-skills{margin:0;display:grid}.pg-resume-skills__group{column-gap:var(--grid-gutter);row-gap:var(--space-12);padding-block:var(--space-16);box-shadow:inset 0 1px 0 var(--line);grid-template-columns:minmax(0,11rem) minmax(0,1fr);display:grid}.pg-resume-skills dt{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-dim);padding-block-start:var(--space-4)}.pg-resume-skills dd{margin:0}.pg-resume-skills__list{color:var(--paper);margin:0;padding:0;list-style:none}.pg-resume-skills__list li{display:inline}.pg-resume-skills__list li:not(:last-child):after{content:" ·" " ";color:var(--paper-faint)}@media (width<=767px){.pg-resume-skills__group{grid-template-columns:minmax(0,1fr)}.pg-resume-skills dt{padding-block-start:0}}.pg-resume-certs__group{box-shadow:inset 0 1px 0 var(--line)}.pg-resume-certs__summary{justify-content:space-between;align-items:baseline;gap:var(--space-8) var(--space-24);min-height:var(--target-min);padding-block:var(--space-16);cursor:pointer;flex-wrap:wrap;list-style:none;display:flex}.pg-resume-certs__summary::-webkit-details-marker{display:none}.pg-resume-certs__issuer{color:var(--paper);transition:color var(--dur-160) var(--ease-out)}.pg-resume-certs__count{align-items:baseline;gap:var(--space-12);font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-dim);display:inline-flex}.pg-resume-certs__count:after{content:"+";color:var(--signal)}.pg-resume-certs__group[open] .pg-resume-certs__count:after{content:"−"}.pg-resume-certs__summary:is(:hover,:focus-visible) .pg-resume-certs__issuer{color:var(--signal-strong)}.pg-resume-certs__list{gap:var(--space-8);padding:0 0 var(--space-24);font-size:var(--fs-small);line-height:var(--lh-small);margin:0;list-style:none;display:grid}.pg-resume-certs__list li{justify-content:space-between;gap:var(--space-4) var(--space-24);color:var(--paper-dim);flex-wrap:wrap;display:flex}.pg-resume-certs__date{font:var(--fw-meta) var(--fs-meta) / var(--lh-meta) var(--font-mono);letter-spacing:var(--tr-meta);text-transform:uppercase;color:var(--paper-faint)}.pg-resume-end{box-shadow:inset 0 1px 0 var(--line-strong);margin-block-start:var(--space-96);padding-block-start:var(--space-32)}@media (width<=767px){.pg-resume-end{margin-block-start:var(--space-64)}}@media print{.pg-resume-end,.pg-resume-intro--screen,.pg-resume-work__link,.pg-resume-more,.pg-resume-intro a,.pg-resume-record .pg-arrow,.pg-resume-certs__count:after{display:none}.pg-resume-summary{font-size:11.5pt}.pg-resume-bullets li:before{-webkit-print-color-adjust:exact;print-color-adjust:exact}.pg-resume-job__role,.pg-resume-work__client{font-size:13pt}.pg-resume-work__item,.pg-resume-steps__item,.pg-resume-record,.pg-resume-skills__group,.pg-resume-certs__group{break-inside:avoid}.pg-resume-work__item{padding-block:3mm 4mm}.pg-resume-steps__item,.pg-resume-work__item,.pg-resume-record,.pg-resume-skills__group,.pg-resume-certs__group{box-shadow:none}.pg-resume-work__item+.pg-resume-work__item,li+li>.pg-resume-record,.pg-resume-skills__group+.pg-resume-skills__group{border-block-start:1px solid graytext}.pg-resume-bullets{gap:1mm;margin-block-start:2mm}.pg-resume-certs__summary{min-height:0;padding-block:2mm}}}
