*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--color-app:#0a0c10;--color-app-35:#0a0c1059;--color-app-elevated:#11151b;--color-app-elevated-55:#11151b8c;--color-surface:#171c23;--color-surface-55:#171c238c;--color-surface-strong:#1d2430;--color-border-subtle:#cbd5e124;--color-border-subtle-70:#cbd5e119;--color-border-subtle-80:#cbd5e11d;--color-border-subtle-90:#cbd5e120;--color-border-strong:#94a3b83d;--color-border-strong-82:#94a3b832;--color-text-strong:#f8fafc;--color-text-strong-92:#f8fafceb;--color-text-strong-95:#f8fafcf2;--color-text-body:#d0d8e4;--color-text-muted:#93a0b2;--color-text-soft:#c9d1dc;--color-text-soft-90:#c9d1dce6;--color-accent:#8fb4ff;--color-accent-soft:#8fb4ff14;--color-accent-line:#8fb4ff2e;--ease-premium-settle:cubic-bezier(.16, 1, .3, 1);--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--page-frame-inset:1rem;--section-frame-inset:1rem;--theme-body-background:#0a0c10;--theme-body-text:#f8fafc;--theme-selection-background:#8fb4ff33;--theme-selection-text:#f8fafc;--theme-scrollbar-thumb:#8fb4ff47;--theme-scrollbar-thumb-hover:#8fb4ff6b;--theme-contact-action:#7da2ef;--theme-contact-icon-background:#0f172a59;--theme-contact-icon-border:#94a3b82e;--theme-contact-icon-foreground:#bfdbfec7;--theme-page-return-background:#11182738;--theme-page-return-border:#94a3b829;--theme-page-return-foreground:#eef4ff;--theme-page-return-shadow:0 10px 24px #05080e33;--theme-page-return-hover-background:#1118275c;--theme-page-return-hover-border:#8fb4ff3d;--theme-page-return-hover-shadow:0 12px 28px #05080e3d;--theme-case-impact-border:#60a5fa99;--theme-case-study-filled-start:#181d26f5;--theme-case-study-filled-end:#11151bf5;--theme-footer-separator:#94a3b8e6;--theme-language-link:#94a3b8b8;--theme-language-link-hover:#c9d1dceb;--theme-language-link-active:#f8fafcfa;--theme-language-separator:#94a3b899;--theme-section-dim-opacity:.46;--theme-hero-cta-primary-hover:#8fb4ff1f;--theme-card-shadow:none;--theme-section-block-shadow:none;--theme-hero-utility-background:transparent;--theme-hero-utility-border:transparent;--theme-hero-utility-shadow:none;--theme-earlier-panel-background:#171c238c;--theme-earlier-panel-border:#cbd5e11d;--theme-earlier-bullet:#8fb4ffd1;--theme-earlier-title:#f8fafce0;--theme-earlier-detail:#c9d1dcc7}:root[data-theme=light]{--color-app:#e8eef6;--color-app-35:#e8eef659;--color-app-elevated:#f5f8fc;--color-app-elevated-55:#f5f8fc8c;--color-surface:#fff;--color-surface-55:#ffffff8c;--color-surface-strong:#eef3f9;--color-border-subtle:#0f172a1c;--color-border-subtle-70:#0f172a14;--color-border-subtle-80:#0f172a16;--color-border-subtle-90:#0f172a19;--color-border-strong:#0f172a36;--color-border-strong-82:#0f172a2c;--color-text-strong:#0f172a;--color-text-strong-92:#0f172aeb;--color-text-strong-95:#0f172af2;--color-text-body:#2f4158;--color-text-muted:#50627a;--color-text-soft:#3e5169;--color-text-soft-90:#3e5169e6;--color-accent:#3565e6;--color-accent-soft:#3565e61a;--color-accent-line:#3565e638;--theme-body-background:#e8eef6;--theme-body-text:#0f172a;--theme-selection-background:#4f7eff29;--theme-selection-text:#0f172a;--theme-scrollbar-thumb:#4f7eff47;--theme-scrollbar-thumb-hover:#4f7eff6b;--theme-contact-action:#315fe0;--theme-contact-icon-background:#ffffffd1;--theme-contact-icon-border:#94a3b83d;--theme-contact-icon-foreground:#3565e6e0;--theme-page-return-background:#ffffffe0;--theme-page-return-border:#4f7eff38;--theme-page-return-foreground:#1e293b;--theme-page-return-shadow:0 14px 32px #94a3b83d;--theme-page-return-hover-background:#fffffffa;--theme-page-return-hover-border:#4f7eff57;--theme-page-return-hover-shadow:0 18px 36px #94a3b842;--theme-case-impact-border:#3565e675;--theme-case-study-filled-start:#fffffffa;--theme-case-study-filled-end:#f5f8fcfa;--theme-footer-separator:#64748beb;--theme-language-link:#3e5169e0;--theme-language-link-hover:#0f172af0;--theme-language-link-active:#0f172afa;--theme-language-separator:#586a82cc;--theme-section-dim-opacity:.72;--theme-hero-cta-primary-hover:#3565e629;--theme-card-shadow:0 14px 30px #94a3b824;--theme-section-block-shadow:0 18px 38px #94a3b829;--theme-hero-utility-background:#ffffffc7;--theme-hero-utility-border:#0f172a14;--theme-hero-utility-shadow:0 8px 24px #94a3b829;--theme-earlier-panel-background:#ffffffd6;--theme-earlier-panel-border:#0f172a18;--theme-earlier-bullet:#3565e6b8;--theme-earlier-title:#1e293bf5;--theme-earlier-detail:#384a61fa}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--theme-scrollbar-thumb) transparent;background-color:var(--theme-body-background);color:var(--theme-body-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--theme-body-background);min-width:320px;color:var(--theme-body-text);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}*{box-sizing:border-box}#root{background:var(--theme-body-background);width:100%;min-height:100%;color:var(--theme-body-text);overflow-x:clip}::selection{background:var(--theme-selection-background);color:var(--theme-selection-text)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--theme-scrollbar-thumb);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb-hover)}a,button{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}.page-load-fade{opacity:0;transition:opacity .64s cubic-bezier(.22,1,.36,1),transform .64s cubic-bezier(.22,1,.36,1);transition-delay:var(--page-load-delay,0s);transform:translateY(14px)}.page-load-fade--ready{opacity:1;transform:translateY(0)}.section-reveal{transition:opacity .42s cubic-bezier(.22,1,.36,1)}.section-reveal--dimmed{opacity:var(--theme-section-dim-opacity)}@media (hover:hover){.section-reveal--dimmed:hover,.section-reveal--dimmed:focus-within{opacity:1}}.section-reveal--visible{opacity:1}.contact-card-action{color:var(--theme-contact-action);touch-action:manipulation;align-items:center;text-decoration:none;transition:color .18s;display:inline-flex}.hero-cta{border-width:1px;border-radius:.75rem;justify-content:center;align-items:center;width:100%;min-height:3rem;padding:.875rem 1.25rem;font-size:.875rem;font-weight:500;line-height:1.25rem;display:inline-flex}@media print{#contact a .hero-cta:last-child{display:none}}@media (min-width:640px){.hero-cta{width:auto;min-width:9rem;min-height:2.75rem}}.hero-cta--primary{border-color:var(--color-accent-line);background-color:var(--color-accent-soft);color:var(--color-text-strong)}@media print{.hero-cta--primary{box-shadow:none;background:#fff;border-color:#11182729}}.hero-cta--primary:hover{border-color:var(--color-accent)}.hero-cta--primary{background-color:var(--color-accent-soft)}:is(.hero-cta--primary:hover,.hero-cta--primary:focus-visible){background-color:var(--theme-hero-cta-primary-hover)}.hero-cta--secondary{border-color:var(--color-border-subtle);background-color:var(--color-surface);color:var(--color-text-soft)}@media print{.hero-cta--secondary{box-shadow:none;color:#111827;background:#fff;border-color:#11182729}}.hero-cta--secondary:hover{border-color:var(--color-border-strong);background-color:var(--color-surface-strong);color:var(--color-text-strong)}.hero-cta--secondary{transition:border-color .16s,color .16s,box-shadow .16s,transform .16s}.site-inline-separator{color:currentColor;opacity:.82;vertical-align:baseline;margin:0 .38em;font-weight:500;line-height:1;display:inline-block}:is(.contact-card-action:hover,.contact-card-action:focus-visible){color:var(--color-accent)}.contact-card-action:focus-visible{outline-offset:3px;border-radius:.45rem;outline:2px solid #8fb4fff2}.contact-card-action:disabled,.contact-card-action[aria-disabled=true]{color:var(--color-text-muted)}.contact-card-primary-surface{z-index:0;width:100%;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;appearance:none;background:0 0;border:0;border-radius:.75rem;text-decoration:none;display:block;position:absolute;inset:0}.contact-card-primary-surface:focus-visible{outline-offset:3px;outline:2px solid #8fb4fff2}.contact-card-primary-surface:disabled{cursor:default}.contact-icon-frame{pointer-events:none;border:1px solid var(--theme-contact-icon-border);background:var(--theme-contact-icon-background);width:2.25rem;height:2.25rem;color:var(--theme-contact-icon-foreground);border-radius:.625rem;flex:0 0 2.25rem;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.contact-card-icon{flex:none;width:1.125rem;height:1.125rem}.contact-card-content{pointer-events:none}.contact-action-separator{color:#94a3b899;opacity:1;vertical-align:baseline;margin:0 8px;font-size:1em;line-height:1;display:inline-block;transform:translateY(-1px)}.hero-utility-cluster{justify-content:flex-end;align-items:center;width:100%;margin-bottom:.45rem;display:flex}@media (min-width:640px){.hero-utility-cluster{margin-bottom:.9rem}.header-controls__item{min-height:auto;padding:0}}.header-controls{align-items:center;gap:0;min-height:1rem;font-size:.76rem;line-height:1;display:inline-flex}.header-controls__item{height:1rem;color:var(--theme-language-link);white-space:nowrap;touch-action:manipulation;justify-content:center;align-items:center;padding:0 .18rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.header-controls__label{text-align:center;line-height:1;display:block}.header-controls__button{cursor:pointer;font:inherit;background:0 0;border:0}.header-controls__icon{opacity:.96;justify-content:center;align-items:center;width:.72rem;height:.72rem;display:inline-flex}.header-controls__icon svg{width:100%;height:100%;display:block}.header-controls__icon--moon{opacity:1;width:.8rem;height:.8rem;transform:translate(1px)}.header-controls__icon--moon svg{width:100%;height:100%}:is(.header-controls__item:hover,.header-controls__item:focus-visible){color:var(--theme-language-link-hover)}.header-controls__item:focus-visible{outline-offset:3px;border-radius:.45rem;outline:2px solid #8fb4fff2}.header-controls__item--active{color:var(--theme-language-link-active);opacity:1;font-weight:500}.header-controls__separator{background:var(--theme-language-separator);opacity:.88;align-self:center;width:1px;height:.92em;margin:0 .16rem;display:inline-block}.earlier-projects-list{margin:0;padding:0;list-style:none}.earlier-projects-panel{background:var(--theme-earlier-panel-background);border-color:var(--theme-earlier-panel-border)}.earlier-projects-list__item{color:var(--color-text-soft);align-items:flex-start;gap:.8rem;font-size:.96rem;line-height:1.7;display:flex}.earlier-projects-list__item+.earlier-projects-list__item{margin-top:.8rem}.earlier-projects-list__bullet{background:var(--theme-earlier-bullet);border-radius:999px;flex:none;width:.34rem;height:.34rem;margin-top:.68rem}.earlier-projects-list__title{font-weight:500}.earlier-projects-list__title--static{color:var(--theme-earlier-title)}.earlier-projects-list__detail{color:var(--theme-earlier-detail)}.case-impact{border-left:2px solid var(--theme-case-impact-border);align-items:flex-start;min-height:4rem;margin-top:18px;padding-left:.75rem;display:flex}.case-impact p{color:var(--color-text-strong-95);margin:0}.case-study-card{cursor:default;min-width:0}.case-study-card--filled{background:linear-gradient(180deg, var(--theme-case-study-filled-start) 0%, var(--theme-case-study-filled-end) 100%)}.case-study-card__description{color:var(--color-text-soft);margin-top:0}.case-title{margin:0;font-weight:600;line-height:1.3}.footer-separator{color:var(--theme-footer-separator);opacity:.85;margin:0 5px;font-size:1em;font-weight:600;line-height:1;display:inline-block}.case-tech-list{box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;opacity:.8;letter-spacing:.01em;flex-wrap:nowrap;gap:5px 10px;min-height:19px;max-height:19px;margin-top:7px;margin-bottom:16px;font-size:14px;line-height:19px;display:flex;overflow:hidden}.case-tech-token{white-space:nowrap}@media (max-width:1023px){.case-tech-list{white-space:normal;text-overflow:clip;flex-wrap:wrap;max-height:none;overflow:visible}}@media (max-width:1279px){.case-impact{min-height:auto}}@media (min-width:1280px){.case-impact{min-height:48px;max-height:48px}}.page-return-control{z-index:60;border:1px solid var(--theme-page-return-border);background:var(--theme-page-return-background);width:48px;height:48px;color:var(--theme-page-return-foreground);box-shadow:var(--theme-page-return-shadow);-webkit-backdrop-filter:blur(10px);cursor:pointer;touch-action:manipulation;opacity:0;pointer-events:none;border-radius:14px;justify-content:center;align-items:center;transition:opacity .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1),color .18s,border-color .18s,background-color .18s,box-shadow .18s;display:inline-flex;position:fixed;bottom:60px;right:56px;transform:translateY(12px)}.page-return-control--visible{opacity:1;pointer-events:auto;transform:translateY(0)}:is(.page-return-control:hover,.page-return-control:focus-visible){color:var(--color-accent);border-color:var(--theme-page-return-hover-border);background:var(--theme-page-return-hover-background);box-shadow:var(--theme-page-return-hover-shadow)}.page-return-control__icon{justify-content:center;align-items:center;line-height:1;display:inline-flex;transform:translateY(-1px)}.page-return-control__svg{width:18px;height:18px;display:block}@media (pointer:coarse){.header-controls__item{min-height:2.5rem;padding:.45rem .22rem}}@media (min-width:640px) and (pointer:coarse){.header-controls__item{min-height:auto}}:root[data-theme=light] .header-controls__item{color:var(--theme-language-link)}:root[data-theme=light] .hero-cta--secondary{color:var(--color-text-body);border-color:var(--color-border-strong-82)}:is(:root[data-theme=light] .header-controls__item:hover,:root[data-theme=light] .header-controls__item:focus-visible){color:var(--theme-language-link-hover)}:root[data-theme=light] .header-controls__item--active{color:var(--theme-language-link-active)}:root[data-theme=light] .header-controls__separator{color:var(--theme-language-separator)}.cv-document-page[data-render-mode=pdf]{background:#fff;width:max-content;min-width:210mm;padding:0;overflow:visible}.cv-document-page[data-render-mode=pdf] .cv-document{width:210mm;max-width:none}.cv-document-page[data-render-mode=pdf] .cv-sheet{background:0 0;border:0;padding:1.15rem 1.2rem}.cv-document-page[data-render-mode=pdf] .cv-sheet+.cv-sheet{margin-top:.7rem}.cv-document-page[data-render-mode=pdf] .cv-sheet--first{padding-top:1rem;padding-bottom:.95rem}.cv-document-page[data-render-mode=pdf] .cv-hero{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr);gap:.85rem}.cv-document-page[data-render-mode=pdf] .cv-panel{background:0 0;border:0;padding:0}.cv-document-page[data-render-mode=pdf] .cv-section-heading .cv-eyebrow{display:none}.cv-document-page[data-render-mode=pdf] .cv-section-heading h2{margin-top:0}.cv-document-page[data-render-mode=pdf] .cv-section-heading p:last-child{max-width:46rem;margin-top:.5rem}.cv-document-page[data-render-mode=pdf] .cv-grid{gap:.9rem;margin-top:.75rem}.cv-document-page[data-render-mode=pdf] .cv-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-document-page[data-render-mode=pdf] .cv-grid--three{grid-template-columns:1fr}.cv-document-page[data-render-mode=pdf] .cv-subsection{margin-top:1rem}.cv-document-page[data-render-mode=pdf] .cv-section-block--tech-stack{padding-top:.55rem}.cv-document-page[data-render-mode=pdf] .cv-card{background:0 0;border:0;padding:0}.cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card p,.cv-document-page[data-render-mode=pdf] .cv-subsection .cv-grid--three .cv-card p:last-child{margin-top:.42rem}.cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card__group:first-of-type{margin-top:.78rem}.cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card__group+.cv-card__group{margin-top:.86rem}.cv-document-page[data-render-mode=pdf] .cv-card__group .cv-tags{margin-top:.3rem}.cv-document-page[data-render-mode=pdf] .cv-tags{gap:.48rem .68rem}.cv-document-page[data-render-mode=pdf] .cv-tag{white-space:normal;background:0 0;border:0;padding:0;line-height:1.4}.cv-document-page[data-render-mode=pdf] .cv-contact-stack{gap:.75rem;margin-top:.75rem}.cv-document-page[data-render-mode=pdf] .cv-links{margin-top:0}.cv-document-page[data-render-mode=pdf] .cv-links li+li,.cv-document-page[data-render-mode=pdf] .cv-document-footer{margin-top:.45rem}html.pdf-mode .cv-document-page[data-render-mode=pdf]{color:#111827;background:#fff;min-height:auto;padding:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-document{color:#111827;background-color:#fff;width:210mm;max-width:none;margin:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet{break-inside:avoid;page-break-inside:avoid;background:0 0;border:0 #0f172a29;padding:1.15rem 1.2rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet+.cv-sheet{margin-top:.7rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet--first{padding-top:1rem;padding-bottom:.95rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-hero{color:#111827;background-color:#0000;grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr);align-items:start;gap:.85rem;display:grid}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-panel{background:0 0;border:0 #0f172a14;padding:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading .cv-eyebrow{display:none}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading h2{margin-top:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading p:last-child{max-width:46rem;margin-top:.5rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-grid{gap:.9rem;margin-top:.75rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-grid--three{grid-template-columns:1fr}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-subsection{margin-top:1rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-block--tech-stack{padding-top:.55rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card{background:0 0;border:0 #0f172a29;padding:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card p,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-subsection .cv-grid--three .cv-card p:last-child{margin-top:.42rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card__group:first-of-type{margin-top:.78rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-sheet--tech-stack .cv-card__group+.cv-card__group{margin-top:.86rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card__group .cv-tags{margin-top:.3rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-tags{gap:.48rem .68rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-tag{white-space:normal;background:0 0;border:0 #0000;padding:0;line-height:1.4}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-contact-stack{gap:.75rem;margin-top:.75rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-links{margin-top:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-links li+li,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-document-footer{margin-top:.45rem}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-name,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-claim,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-summary,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-eyebrow,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-panel__title,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading h2,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading p:last-child,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card h3,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card p,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card__label,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card__index,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-contact-term,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-links a,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-document-footer,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-bullets li,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-tag{font-weight:400}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-name{color:#111827;background-color:#0000;margin-top:3.2mm;font-size:19pt;font-weight:500;line-height:1.03}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-claim{color:#1f2937;background-color:#0000;max-width:none;margin-top:3mm;font-size:11.2pt;line-height:1.48}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-summary{color:#4b5563;background-color:#0000;max-width:none;margin-top:2.5mm;font-size:10.55pt;line-height:1.52}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-hero .cv-eyebrow,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-panel__title{color:#6b7280;background-color:#0000;font-size:8.1pt;font-weight:500;line-height:1.32}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-bullets li{color:#374151;background-color:#0000;font-size:10.15pt;line-height:1.48}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading{break-inside:avoid;color:#111827;background-color:#0000;padding-bottom:0}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading h2{color:#111827;background-color:#0000;font-size:14.4pt;font-weight:500;line-height:1.18}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-section-heading p:last-child{color:#4b5563;background-color:#0000;font-size:10.45pt;line-height:1.5}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card h3{color:#111827;background-color:#0000;font-size:11.15pt;font-weight:500;line-height:1.24}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card p{color:#374151;background-color:#0000;font-size:10.45pt;line-height:1.5}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-card__label,html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-contact-term{color:#374151;background-color:#0000;font-size:9.2pt;font-weight:500;line-height:1.35}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-tag{color:#4b5563;font-size:9.9pt;line-height:1.42}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-subsection .cv-grid--three .cv-card h3{color:#111827;background-color:#0000;margin-top:0;font-size:11.15pt;font-weight:500;line-height:1.24}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-subsection .cv-grid--three .cv-card p:last-child{color:#4b5563;background-color:#0000;margin-top:1.8mm;font-size:10.1pt;line-height:1.5}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-links a{color:#374151;background-color:#0000;font-size:10.2pt;line-height:1.46}html.pdf-mode .cv-document-page[data-render-mode=pdf] .cv-document-footer{color:#6b7280;background-color:#0000;font-size:8.4pt;line-height:1.35}.cv-document.pdf-mode,.cv-document[data-render-mode=pdf]{color:#111827;background-color:#fff;width:210mm;max-width:none;margin:0;font-size:10.75pt;line-height:1.45}.cv-document.pdf-mode .cv-sheet,.cv-document[data-render-mode=pdf] .cv-sheet{background:0 0;border:0 #0f172a29;padding:1.15rem 1.2rem}.cv-document.pdf-mode .cv-hero,.cv-document[data-render-mode=pdf] .cv-hero{color:#111827;background-color:#0000;grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr);align-items:start;gap:.85rem;display:grid}.cv-document.pdf-mode .cv-eyebrow,.cv-document[data-render-mode=pdf] .cv-eyebrow{letter-spacing:0;text-transform:none;color:#334155;background-color:#0000;font-size:8.1pt;font-weight:500;line-height:1.32}.cv-document.pdf-mode .cv-panel__title,.cv-document[data-render-mode=pdf] .cv-panel__title,.cv-document.pdf-mode .cv-card__label,.cv-document[data-render-mode=pdf] .cv-card__label,.cv-document.pdf-mode .cv-contact-term,.cv-document[data-render-mode=pdf] .cv-contact-term{letter-spacing:0;text-transform:none;color:#374151;background-color:#0000;font-size:9.2pt;font-weight:500;line-height:1.35}.cv-document.pdf-mode .cv-name,.cv-document[data-render-mode=pdf] .cv-name,.cv-document.pdf-mode .cv-section-heading h2,.cv-document[data-render-mode=pdf] .cv-section-heading h2,.cv-document.pdf-mode .cv-card h3,.cv-document[data-render-mode=pdf] .cv-card h3{color:#111827;background-color:#0000;font-weight:500}.cv-document.pdf-mode .cv-claim,.cv-document[data-render-mode=pdf] .cv-claim,.cv-document.pdf-mode .cv-summary,.cv-document[data-render-mode=pdf] .cv-summary,.cv-document.pdf-mode .cv-section-heading p:last-child,.cv-document[data-render-mode=pdf] .cv-section-heading p:last-child,.cv-document.pdf-mode .cv-card p,.cv-document[data-render-mode=pdf] .cv-card p,.cv-document.pdf-mode .cv-links a,.cv-document[data-render-mode=pdf] .cv-links a,.cv-document.pdf-mode .cv-tag,.cv-document[data-render-mode=pdf] .cv-tag,.cv-document.pdf-mode .cv-bullets li,.cv-document[data-render-mode=pdf] .cv-bullets li,.cv-document.pdf-mode .cv-document-footer,.cv-document[data-render-mode=pdf] .cv-document-footer{color:#4b5563;background-color:#0000;line-height:1.45}.cv-document.pdf-mode .cv-panel,.cv-document[data-render-mode=pdf] .cv-panel,.cv-document.pdf-mode .cv-card,.cv-document[data-render-mode=pdf] .cv-card,.cv-document.pdf-mode .cv-tag,.cv-document[data-render-mode=pdf] .cv-tag{background:0 0;border-color:#0f172a24}html.print-preview-mode{scroll-behavior:auto}html.print-preview-mode body{color:#111827;background:#fff;min-width:0;font-size:10.75pt;line-height:1.45;overflow:visible}html.print-preview-mode #root{overflow:visible}html.print-preview-mode .cv-document-page{color:#111827!important;background:#fff!important;min-height:auto!important;padding:0!important}html.print-preview-mode .cv-document-page[data-render-mode=print]{width:100%!important;min-width:0!important;max-width:none!important}html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-document{width:100%!important;max-width:none!important;margin:0!important}html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-sheet{box-shadow:none!important;background:#fff!important;border:0!important;outline:none!important;padding:0!important}html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-card,html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-contact-card,html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-panel{box-shadow:none!important;background:0 0!important;border:0!important}.cv-document-page[data-render-mode=print]{color:#111827;background:0 0;min-height:auto;padding:0}.cv-document-page[data-render-mode=print] .cv-document{width:100%;max-width:none;margin:0}.cv-document-page[data-render-mode=print] .cv-sheet{break-inside:avoid;page-break-inside:avoid;background:0 0;border:0;padding:0}.cv-document-page[data-render-mode=print] .cv-sheet+.cv-sheet{margin-top:0}.cv-document-page[data-render-mode=print] .cv-hero{gap:var(--cv-export-top-grid-gap,18pt);grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr)}.cv-document-page[data-render-mode=print] .cv-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-document-page[data-render-mode=print] .cv-grid--three{grid-template-columns:1fr}.cv-document-page[data-render-mode=print] .cv-card,.cv-document-page[data-render-mode=print] .cv-contact-card{box-shadow:none!important;background:0 0!important;border:0!important}html.print-preview-mode .cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__label,.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__label{color:var(--cv-export-strong-color,#0f172a)!important}.cv-document-page[data-render-mode=print] .screen-only{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.z-10{z-index:10}.z-20{z-index:20}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-\[1\.25rem\]{margin-top:1.25rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-full{height:100%}.min-h-12{min-height:3rem}.min-h-\[5\.5rem\]{min-height:5.5rem}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[34rem\]{max-width:34rem}.max-w-none{max-width:none}.flex-1{flex:1}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-mt-4{scroll-margin-top:1rem}.list-none{list-style-type:none}.grid-cols-\[2\.25rem_minmax\(0\,1fr\)\]{grid-template-columns:2.25rem minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-0{column-gap:0}.gap-x-4{column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2\.5{row-gap:.625rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-clip{overflow-x:clip}.whitespace-nowrap{white-space:nowrap}.text-pretty{text-wrap:pretty}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-accent-line{border-color:var(--color-accent-line)}.border-border-subtle{border-color:var(--color-border-subtle)}.border-border-subtle-70{border-color:var(--color-border-subtle-70)}.border-border-subtle-80{border-color:var(--color-border-subtle-80)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-app{background-color:var(--color-app)}.bg-app-35{background-color:var(--color-app-35)}.bg-app-elevated{background-color:var(--color-app-elevated)}.bg-surface{background-color:var(--color-surface)}.bg-surface-55{background-color:var(--color-surface-55)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-4{padding:1rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pb-9{padding-bottom:2.25rem}.pt-0\.5{padding-top:.125rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-\[calc\(env\(safe-area-inset-top\,0px\)\+0\.625rem\)\]{padding-top:calc(env(safe-area-inset-top,0px) + .625rem)}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.69rem\]{font-size:.69rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.96rem\]{font-size:.96rem}.text-\[1rem\]{font-size:1rem}.text-\[2\.4rem\]{font-size:2.4rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-\[0\.95\]{line-height:.95}.leading-\[1\.7rem\]{line-height:1.7rem}.tracking-\[-0\.035em\]{letter-spacing:-.035em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-\[0\.28em\]{letter-spacing:.28em}.tracking-tight{letter-spacing:-.025em}.text-accent{color:var(--color-accent)}.text-text-body{color:var(--color-text-body)}.text-text-muted{color:var(--color-text-muted)}.text-text-soft{color:var(--color-text-soft)}.text-text-soft-90{color:var(--color-text-soft-90)}.text-text-strong{color:var(--color-text-strong)}.text-text-strong-92{color:var(--color-text-strong-92)}.text-text-strong-95{color:var(--color-text-strong-95)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.page-shell{width:100%;max-width:72rem;padding-inline:var(--page-frame-inset);margin-inline:auto}.section-spacing{padding-top:2.25rem;padding-bottom:2.25rem}@media (min-width:640px){.section-spacing{padding-top:3rem;padding-bottom:3rem}}@media (min-width:1024px){.section-spacing{padding-top:3.5rem;padding-bottom:3.5rem}}.card-surface{border-width:1px;border-color:var(--color-border-subtle);background-color:var(--color-surface);border-radius:1rem}@media print{.card-surface{box-shadow:none;background:#fff;border-color:#11182729;border-radius:0}}.card-surface{box-shadow:var(--theme-card-shadow)}.section-block{padding-inline:var(--section-frame-inset);border-width:1px;border-color:var(--color-border-subtle);background-color:var(--color-app-elevated-55);border-radius:1.5rem;padding-top:2rem;padding-bottom:2rem}@media print{.section-block{border-color:#11182729;border-radius:0}}@media (min-width:640px){.section-block{padding-top:2.5rem;padding-bottom:2.5rem}}@media (min-width:1024px){.section-block{padding-top:3.5rem;padding-bottom:3.5rem}}.section-block{box-shadow:var(--theme-section-block-shadow)}.section-divider{border-top-width:1px;border-color:var(--color-border-subtle-90)}.focus-ring:focus-visible{outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000);--tw-ring-color:var(--color-accent);--tw-ring-offset-width:2px;--tw-ring-offset-color:var(--color-app);outline:2px solid #0000}@font-face{font-family:CvSans;src:url(/fonts/NotoSans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:CvSans;src:url(/fonts/NotoSans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@media (prefers-reduced-motion:reduce){.page-load-fade,.page-load-fade--ready,.section-reveal,.section-reveal--dimmed,.section-reveal--visible{opacity:1;transition:none;transform:none}.page-return-control,.page-return-control--visible{transition:none;transform:none}}@media screen and (min-width:640px){.cv-document-page:not([data-render-mode=print]) .cv-sheet{border:1px solid #0f172a14}:root{--page-frame-inset:1.5rem;--section-frame-inset:1.5rem}}@media screen and (min-width:1024px){:root{--page-frame-inset:2rem;--section-frame-inset:2rem}}html.print-preview-mode[lang=cs] .cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__body--tech-stack,html[lang=cs] .cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__body--tech-stack{height:9.7mm!important;min-height:9.7mm!important;max-height:9.7mm!important}@media print{@page{size:A4 portrait;margin:12mm}html{scroll-behavior:auto}body{color:#111827;background:#fff;min-width:0;font-size:10.75pt;line-height:1.45;overflow:visible}#root{overflow:visible}.cv-document-page{color:#111827!important;background:0 0!important;min-height:auto!important;padding:0!important}.cv-document-page[data-render-mode=print]{width:100%!important;min-width:0!important;max-width:none!important}.cv-document{width:100%!important;max-width:none!important;margin:0!important}.cv-sheet{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;background:0 0!important;border:0!important;outline:none!important;padding:0!important}.cv-document-page[data-render-mode=print] .cv-sheet{box-shadow:none!important;background:0 0!important;border:0!important;outline:none!important}.cv-sheet+.cv-sheet{margin-top:0!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack{break-before:auto!important;page-break-before:auto!important;display:block!important}.cv-hero{gap:var(--cv-export-top-grid-gap,18pt)!important}.cv-eyebrow,.cv-panel__title,.cv-card__label,.cv-card__index,.cv-contact-term{letter-spacing:0!important;text-transform:none!important}.cv-name,.cv-claim,.cv-summary,.cv-eyebrow,.cv-panel__title,.cv-section-heading h2,.cv-section-heading p:last-child,.cv-card h3,.cv-card p,.cv-card__label,.cv-card__index,.cv-contact-term,.cv-links a,.cv-document-footer{font-weight:400!important}.cv-name{margin-top:3.2mm!important;font-size:22pt!important;font-weight:600!important;line-height:1.08!important}.cv-claim{color:#1f2937!important;max-width:none!important;margin-top:3mm!important;font-size:11.2pt!important;line-height:1.48!important}.cv-summary{color:#4b5563!important;max-width:none!important;margin-top:2.5mm!important;font-size:10.55pt!important;line-height:1.52!important}.cv-hero .cv-eyebrow,.cv-panel__title{color:#6b7280!important;font-size:8.1pt!important;font-weight:500!important;line-height:1.32!important}.cv-bullets li{color:#374151!important;font-size:10.15pt!important;line-height:1.48!important}.cv-section-heading{break-inside:avoid;padding-bottom:0!important}.cv-section-heading .cv-eyebrow{display:none!important}.cv-section-heading h2{font-size:var(--cv-export-section-title-size,14pt)!important;font-weight:600!important;line-height:var(--cv-export-heading-line-height,1.18)!important;color:var(--cv-export-strong-color,#0f172a)!important;margin-top:0!important}.cv-section-heading p:last-child{font-size:var(--cv-export-section-description-size,10pt)!important;line-height:var(--cv-export-body-line-height,1.45)!important;color:var(--cv-export-muted-color,#475569)!important;margin-top:1.8mm!important}.cv-grid{gap:var(--cv-export-item-gap,10pt)!important;margin-top:var(--cv-export-content-gap,10pt)!important}.cv-subsection{margin-top:var(--cv-export-subsection-gap,18pt)!important}.cv-grid--two,.cv-subsection .cv-grid--three{gap:var(--cv-export-item-gap,10pt)!important}.cv-grid--three{grid-template-columns:1fr!important}.cv-document-page[data-render-mode=print] .cv-hero,.cv-print-root .cv-hero{align-items:start!important;column-gap:var(--cv-export-top-grid-gap,18pt)!important;row-gap:var(--cv-export-top-grid-gap,18pt)!important;grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr)!important;display:grid!important}.cv-document-page[data-render-mode=print] .cv-focus-grid,.cv-document-page[data-render-mode=print] .cv-grid--two,.cv-print-root .cv-focus-grid,.cv-print-root .cv-grid--two{column-gap:var(--cv-export-item-gap,10pt)!important;row-gap:var(--cv-export-item-gap,10pt)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}.cv-document-page[data-render-mode=print] .cv-hero__header,.cv-document-page[data-render-mode=print] .cv-panel,.cv-document-page[data-render-mode=print] .cv-focus-card--0,.cv-document-page[data-render-mode=print] .cv-focus-card--1,.cv-print-root .cv-hero__header,.cv-print-root .cv-panel,.cv-print-root .cv-focus-card--0,.cv-print-root .cv-focus-card--1{width:auto!important;min-width:0!important;max-width:none!important}.cv-contact-stack{gap:var(--cv-export-contact-gap,7pt)!important;margin-top:var(--cv-export-content-gap,10pt)!important}.cv-card{background:0 0!important;border:0!important;padding:0!important}.cv-card h3{font-size:var(--cv-export-item-title-size,11pt)!important;font-weight:600!important;line-height:var(--cv-export-item-title-line-height,1.24)!important;color:var(--cv-export-strong-color,#0f172a)!important}.cv-card p{font-size:var(--cv-export-item-body-size,10pt)!important;color:var(--cv-export-muted-color,#475569)!important;line-height:1.48!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-focus-grid{align-items:start!important;gap:0 18pt!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card{background:0 0!important;flex-direction:column!important;min-height:41.7mm!important;padding:0!important;display:flex!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card h3{color:var(--cv-export-strong-color,#0f172a)!important;margin-top:0!important;font-size:12.2pt!important;font-weight:700!important;line-height:1.24!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__body--tech-stack{font-size:var(--cv-export-item-body-size,10pt)!important;height:14.8mm!important;min-height:14.8mm!important;max-height:14.8mm!important;line-height:var(--cv-export-body-line-height,1.45)!important;color:var(--cv-export-muted-color,#475569)!important;margin-top:1.4mm!important;overflow:hidden!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__group:first-of-type{margin-top:2.9mm!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__group+.cv-card__group{margin-top:2.3mm!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__label{font-size:9.2pt!important;font-weight:400!important;line-height:var(--cv-export-body-line-height,1.45)!important;color:var(--cv-export-strong-color,#0f172a)!important;margin-top:0!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__group .cv-tags{gap:.45mm 1.4mm!important;margin-top:.7mm!important}.cv-card__label,.cv-contact-term{font-size:var(--cv-export-label-size,9.2pt)!important;color:var(--cv-export-muted-color,#475569)!important;font-weight:400!important;line-height:1.35!important}.cv-contact-term{flex:0 0 62pt;width:62pt!important;margin-right:10pt!important}.cv-tag{font-size:var(--cv-export-tag-size,9.6pt)!important;color:var(--cv-export-muted-color,#475569)!important;line-height:1.28!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-tag{letter-spacing:-.01em!important;color:var(--cv-export-muted-color,#475569)!important;font-size:9.6pt!important;line-height:1.6!important}.cv-subsection .cv-grid--three .cv-card h3{font-size:var(--cv-export-item-title-size,11pt)!important;line-height:var(--cv-export-item-title-line-height,1.24)!important;color:var(--cv-export-strong-color,#0f172a)!important;margin-top:0!important;font-weight:600!important}.cv-subsection .cv-grid--three .cv-card p:not(.cv-card__meta):not(.cv-card__impact){font-size:var(--cv-export-item-body-size,10pt)!important;color:var(--cv-export-muted-color,#475569)!important;margin-top:1.2mm!important;line-height:1.52!important}.cv-subsection .cv-grid--three .cv-card p:last-child{font-size:var(--cv-export-item-body-size,10pt)!important;line-height:var(--cv-export-body-line-height,1.45)!important;color:var(--cv-export-muted-color,#475569)!important;margin-top:1.2mm!important}.cv-links a{font-size:var(--cv-export-contact-value-size,9.8pt)!important;line-height:var(--cv-export-body-line-height,1.45)!important;color:var(--cv-export-strong-color,#0f172a)!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-contact-card+.cv-contact-card{margin-top:10pt!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-availability-title{margin-top:2pt!important;margin-bottom:7pt!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-availability-highlight{display:inline-block;margin-top:1pt!important;margin-bottom:1pt!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-contact-card p+p{margin-top:2pt!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-availability-bullets,.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-availability-bullet+.cv-availability-bullet{margin-top:0!important}.cv-document-page[data-render-mode=print] .cv-page-section--contact .cv-availability-bullets+p{margin-top:1pt!important}.cv-document-page[data-render-mode=print],.cv-document-page[data-render-mode=print] .cv-section-heading h2,.cv-document-page[data-render-mode=print] .cv-subsection__title,.cv-document-page[data-render-mode=print] .cv-card h3,.cv-document-page[data-render-mode=print] .cv-availability-title,.cv-document-page[data-render-mode=print] .cv-name{color:var(--cv-export-strong-color,#0f172a)!important}.cv-document-page[data-render-mode=print] .cv-section-heading p,.cv-document-page[data-render-mode=print] .cv-card p,.cv-document-page[data-render-mode=print] .cv-availability-bullet,.cv-document-page[data-render-mode=print] .cv-tag{color:var(--cv-export-muted-color,#475569)!important}.cv-document-page[data-render-mode=print] .cv-subsection .cv-grid--three .cv-card .cv-card__meta{color:var(--cv-export-soft-muted-color,#64748b)!important}.cv-document-page[data-render-mode=print] .cv-contact-term,.cv-document-page[data-render-mode=print] .cv-panel__title,.cv-document-page[data-render-mode=print] .cv-bullets li,.cv-document-page[data-render-mode=print] .cv-contact-stack .cv-links li{color:var(--cv-export-body-color,#334155)!important}.cv-document-page[data-render-mode=print] .cv-page-section--tech-stack .cv-card__label,.cv-document-page[data-render-mode=print] .cv-links a,.cv-document-page[data-render-mode=print] .cv-contact-value,.cv-document-page[data-render-mode=print] .cv-earlier-projects__item a{color:var(--cv-export-strong-color,#0f172a)!important}.cv-document-page[data-render-mode=print] .cv-document-footer,.cv-document-page[data-render-mode=print] .cv-document-footer__separator,.cv-document-page[data-render-mode=print] .cv-availability-bullet__mark,.cv-document-page[data-render-mode=print] .cv-earlier-projects__bullet{color:var(--cv-export-soft-muted-color,#64748b)!important}.cv-document-footer{font-size:var(--cv-export-footer-size,8.5pt)!important;color:var(--cv-export-soft-muted-color,#64748b)!important;line-height:1.35!important}.cv-panel{background:0 0!important;border:0!important;padding:0!important}.cv-sheet--page-break{break-before:page;page-break-before:always;padding-top:7mm!important}.cv-tags{gap:2.1mm 2.5mm!important}.cv-tag{white-space:nowrap;background:0 0!important;border:0!important;padding:0!important}.cv-links li+li{margin-top:1.4mm!important}.cv-document-footer{color:#4b5563!important;width:100%!important;margin-top:11mm!important}.page-load-fade,.page-load-fade--ready,.section-reveal,.section-reveal--dimmed,.section-reveal--visible{opacity:1!important;transition:none!important}.page-shell{max-width:none;padding-left:0;padding-right:0}.section-spacing{padding-top:4mm;padding-bottom:4.5mm}.card-surface,.section-block,.rounded-2xl,.rounded-3xl{border-radius:0!important}.card-surface,.section-block,.bg-app,.bg-app-elevated,.bg-surface,.bg-surface-strong,.bg-accent-soft{box-shadow:none!important;background:#fff!important}.card-surface,.section-block{border-color:#11182729!important}.section-divider{border-top-color:#1118272e!important}.text-white,.text-slate-100,.text-slate-300,.text-text-soft,.text-text-muted,.text-accent{color:#111827!important}a,a:visited{text-decoration:none;color:#111827!important}main{padding-bottom:0!important}footer{break-inside:avoid;color:#4b5563!important;padding:4mm 0 0!important}.screen-only{display:none!important}.focus-ring,.focus-ring:hover{box-shadow:none!important;outline:none!important}.focus-ring:focus-visible{box-shadow:none!important;outline:none!important}.min-h-screen{min-height:auto!important}.overflow-hidden,.overflow-x-clip{overflow:visible!important}.border-accent-line,.border-border-subtle,.border-border-strong{border-color:#11182729!important}.page-load-fade>.section-reveal>section,section{break-inside:auto}section article,section li,.section-block,.card-surface{break-inside:avoid;page-break-inside:avoid}#specializations,#tech-stack,#contact{scroll-margin-top:0!important}section>.page-shell>.card-surface,section>.page-shell>.section-block{border-bottom:0!important;border-left:0!important;border-right:0!important;padding:0!important}section>.page-shell>.section-block{padding-top:3mm!important}h1{letter-spacing:-.02em!important;font-size:20pt!important;line-height:1.05!important}h2{margin-top:0!important;font-size:15pt!important;line-height:1.2!important}h3{font-size:11.5pt!important;line-height:1.25!important}p,li,span{line-height:1.45!important}header>p:first-child{letter-spacing:0!important;margin-top:0!important;font-size:8pt!important}.grid{gap:3.2mm!important}.print-page-break{break-before:page!important;page-break-before:always!important}.print-keep-together{break-inside:avoid!important;page-break-inside:avoid!important}.print-break-auto{break-inside:auto!important;page-break-inside:auto!important}.print-single-column{grid-template-columns:minmax(0,1fr)!important}.print-two-column{grid-template-columns:repeat(2,minmax(0,1fr))!important}.print-hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.82fr)!important;align-items:start!important;gap:4mm!important}.space-y-3>:not([hidden])~:not([hidden]){margin-top:2.2mm!important}.space-y-4>:not([hidden])~:not([hidden]){margin-top:2.4mm!important}.space-y-5>:not([hidden])~:not([hidden]){margin-top:2.8mm!important}section .mt-8,section .sm\:mt-10{margin-top:3.5mm!important}#main-content>section:first-of-type{padding-top:0!important;padding-bottom:4mm!important}#main-content>section:first-of-type .card-surface{border-top:0!important}#main-content>section:first-of-type .print-hero-grid{align-items:start!important;padding:0 0 2.5mm!important}#main-content>section:first-of-type .max-w-3xl{max-width:none!important}.hero-role{margin-top:0!important}.hero-name{margin-top:3.2mm!important}.hero-claim{max-width:none!important;margin-top:3.2mm!important}.hero-summary{max-width:none!important;margin-top:2.6mm!important}#main-content>section:first-of-type .mt-7,#main-content>section:first-of-type .sm\:mt-9,#main-content>section:first-of-type .sm\:mt-10{margin-top:0!important}#main-content>section:first-of-type a[href^=http],#main-content>section:first-of-type a[href^=\#],#main-content>section:first-of-type a[href$=\.pdf]{display:none!important}#main-content>section:first-of-type ul{margin-top:2.5mm!important}#main-content>section:first-of-type aside{background:#fff!important;border:1px solid #11182724!important;padding:3mm!important}#tech-stack .section-block,#contact .section-block,#specializations .section-block{padding-top:2.5mm!important;padding-bottom:0!important}#contact .focus-ring,#contact .text-accent{color:#111827!important}#contact a .text-sm:last-child{display:none!important}#contact a{background:#fff!important;min-height:0!important;padding:3mm 3.5mm!important}.sr-only{display:none!important}}@media screen and (max-width:920px){.page-return-control{right:calc(var(--page-frame-inset) + var(--section-frame-inset));bottom:calc(28px + env(safe-area-inset-bottom,0px));border-radius:13px;width:44px;height:44px}.cv-document-page{padding:1rem}.cv-hero,.cv-grid--two,.cv-grid--three{grid-template-columns:1fr}.cv-document-page[data-render-mode=pdf]{width:max-content;min-width:210mm;padding:0}.cv-document-page[data-render-mode=pdf] .cv-document{width:210mm}.cv-document-page[data-render-mode=pdf] .cv-hero{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr)}.cv-document-page[data-render-mode=pdf] .cv-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-document-page[data-render-mode=pdf] .cv-grid--three{grid-template-columns:1fr}}.last\:border-b-0:last-child{border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}.hover\:border-accent-line:hover{border-color:var(--color-accent-line)}.hover\:bg-surface-strong:hover{background-color:var(--color-surface-strong)}.focus\:not-sr-only:focus{clip:auto;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:left-4:focus{left:1rem}.focus\:top-4:focus{top:1rem}.focus\:z-50:focus{z-index:50}.disabled\:cursor-default:disabled{cursor:default}.disabled\:text-text-muted:disabled{color:var(--color-text-muted)}@media (min-width:480px){.min-\[480px\]\:mt-0{margin-top:0}.min-\[480px\]\:flex{display:flex}.min-\[480px\]\:min-w-0{min-width:0}.min-\[480px\]\:flex-1{flex:1}.min-\[480px\]\:shrink-0{flex-shrink:0}.min-\[480px\]\:flex-row{flex-direction:row}.min-\[480px\]\:items-center{align-items:center}.min-\[480px\]\:gap-4{gap:1rem}.min-\[480px\]\:gap-5{gap:1.25rem}.min-\[480px\]\:self-center{align-self:center}}@media (min-width:640px){.sm\:mt-10{margin-top:2.5rem}.sm\:mt-5{margin-top:1.25rem}.sm\:mt-9{margin-top:2.25rem}.sm\:mt-\[1\.25rem\]{margin-top:1.25rem}.sm\:flex{display:flex}.sm\:min-h-\[2\.75rem\]{min-height:2.75rem}.sm\:w-auto{width:auto}.sm\:min-w-\[9rem\]{min-width:9rem}.sm\:max-w-\[35rem\]{max-width:35rem}.sm\:scroll-mt-6{scroll-margin-top:1.5rem}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.sm\:space-y-7>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.75rem * var(--tw-space-y-reverse))}.sm\:p-6{padding:1.5rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:py-9{padding-top:2.25rem;padding-bottom:2.25rem}.sm\:pb-10{padding-bottom:2.5rem}.sm\:pb-12{padding-bottom:3rem}.sm\:pb-8{padding-bottom:2rem}.sm\:pt-4{padding-top:1rem}.sm\:pt-8{padding-top:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-\[0\.72rem\]{font-size:.72rem}.sm\:text-\[0\.96rem\]{font-size:.96rem}.sm\:text-\[1\.0625rem\]{font-size:1.0625rem}.sm\:text-\[1\.12rem\]{font-size:1.12rem}.sm\:text-\[1rem\]{font-size:1rem}.sm\:text-\[2\.6rem\]{font-size:2.6rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:leading-7{line-height:1.75rem}.sm\:leading-\[2rem\]{line-height:2rem}.sm\:tracking-\[0\.26em\]{letter-spacing:.26em}}@media (min-width:768px){.md\:mt-\[1\.375rem\]{margin-top:1.375rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-\[1\.04rem\]{font-size:1.04rem}.md\:text-\[1\.2rem\]{font-size:1.2rem}.md\:text-\[2\.6rem\]{font-size:2.6rem}.md\:leading-\[2\.1rem\]{line-height:2.1rem}}@media (min-width:1024px){.lg\:mt-\[1\.5rem\]{margin-top:1.5rem}.lg\:mt-auto{margin-top:auto}.lg\:inline{display:inline}.lg\:hidden{display:none}.lg\:min-h-\[5\.25rem\]{min-height:5.25rem}.lg\:max-w-\[31rem\]{max-width:31rem}.lg\:scroll-mt-8{scroll-margin-top:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1\.25fr\)_minmax\(19rem\,0\.75fr\)\]{grid-template-columns:minmax(0,1.25fr) minmax(19rem,.75fr)}.lg\:gap-12{gap:3rem}.lg\:p-7{padding:1.75rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-12{padding-top:3rem;padding-bottom:3rem}.lg\:pb-14{padding-bottom:3.5rem}.lg\:pt-10{padding-top:2.5rem}.lg\:text-\[1\.06rem\]{font-size:1.06rem}.lg\:text-\[1\.26rem\]{font-size:1.26rem}.lg\:text-\[2\.6rem\]{font-size:2.6rem}.lg\:text-\[2rem\]{font-size:2rem}.lg\:leading-\[2\.2rem\]{line-height:2.2rem}}@media (min-width:1070px){.min-\[1070px\]\:mt-auto{margin-top:auto}.min-\[1070px\]\:flex{display:flex}.min-\[1070px\]\:min-h-0{min-height:0}.min-\[1070px\]\:max-w-lg{max-width:32rem}.min-\[1070px\]\:max-w-md{max-width:28rem}.min-\[1070px\]\:max-w-xl{max-width:36rem}.min-\[1070px\]\:grid-cols-\[minmax\(0\,1fr\)_minmax\(20rem\,28rem\)\]{grid-template-columns:minmax(0,1fr) minmax(20rem,28rem)}.min-\[1070px\]\:flex-col{flex-direction:column}.min-\[1070px\]\:items-stretch{align-items:stretch}.min-\[1070px\]\:gap-10{gap:2.5rem}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.xl\:text-\[2\.6rem\]{font-size:2.6rem}}.cv-document-page{color:#111827;min-height:100vh;font-family:"CvSans", var(--font-sans);background:#edf1f6;padding:1.5rem}.cv-document{width:min(100%, var(--cv-export-page-width,210mm));margin:0 auto}.cv-sheet{padding:var(--cv-export-page-padding-top,30pt) var(--cv-export-page-padding-horizontal,34pt);background:#fff}.cv-sheet+.cv-sheet{margin-top:1rem}.cv-sheet--first{padding-top:var(--cv-export-sheet-padding-top-first,1.35rem);padding-bottom:var(--cv-export-sheet-padding-bottom-first,1.2rem)}.cv-hero{gap:var(--cv-export-top-grid-gap,18pt);grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr);align-items:start;display:grid}.cv-eyebrow{font-size:var(--cv-export-role-size,9.4pt);letter-spacing:.01em;color:var(--cv-export-muted-color,#475569);margin:0;font-weight:625}.cv-name{font-size:var(--cv-export-name-size,23pt);line-height:var(--cv-export-name-line-height,1.1);letter-spacing:-.035em;color:var(--cv-export-strong-color,#0f172a);margin:.82rem 0 0}.cv-claim{max-width:42rem;font-size:var(--cv-export-headline-size,11.5pt);line-height:var(--cv-export-headline-line-height,1.42);color:#18212d;margin:1rem 0 0}.cv-summary{max-width:44rem;font-size:var(--cv-export-summary-size,10.4pt);line-height:var(--cv-export-body-line-height,1.45);color:var(--cv-export-muted-color,#475569);margin:.85rem 0 0}.cv-panel{background:0 0;border:0;border-top:1px solid #0f172a14;padding:.72rem 0 0}.cv-panel__title{font-size:var(--cv-export-label-size,9.2pt);letter-spacing:.01em;color:var(--cv-export-body-color,#334155);margin:0;font-weight:600}.cv-bullets{margin:.58rem 0 0;padding:0;list-style:none}.cv-bullets li{font-size:var(--cv-export-tag-size,9.6pt);line-height:var(--cv-export-body-line-height,1.45);color:var(--cv-export-body-color,#334155);margin-top:.46rem;padding-left:.95rem;position:relative}.cv-bullets li:before{content:"•";color:#64748b;position:absolute;top:0;left:0}.cv-section-heading{border-bottom:0;padding-bottom:0}.cv-section-heading h2{font-size:var(--cv-export-section-title-size,14pt);line-height:var(--cv-export-heading-line-height,1.18);letter-spacing:-.025em;color:var(--cv-export-strong-color,#0f172a);margin:.44rem 0 0}.cv-section-heading p:last-child{max-width:48rem;font-size:var(--cv-export-section-description-size,10pt);line-height:var(--cv-export-body-line-height,1.45);color:var(--cv-export-muted-color,#475569);margin:.58rem 0 0}.cv-page-section--selected-projects .cv-section-heading h2{font-size:15.2pt;font-weight:700;line-height:1.14}.cv-page-section--selected-projects .cv-section-heading p:last-child{margin-top:.66rem;margin-bottom:.12rem}.cv-subsection{margin-top:calc(var(--cv-export-subsection-gap,18pt) + 4pt)}.cv-grid{gap:var(--cv-export-item-gap,10pt);margin-top:var(--cv-export-content-gap,10pt);display:grid}.cv-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.cv-contact-stack{gap:var(--cv-export-contact-gap,7pt);margin-top:var(--cv-export-content-gap,10pt);display:grid}.cv-contact-layout{gap:var(--cv-export-content-gap,10pt);margin-top:var(--cv-export-content-gap,10pt);align-items:start;display:grid}.cv-contact-layout .cv-contact-stack{margin-top:0}.cv-contact-top{grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.cv-contact-top--with-qr{grid-template-columns:400pt 84pt;justify-content:start;column-gap:8pt;width:492pt;max-width:492pt}.cv-contact-top .cv-contact-stack{width:400pt;max-width:400pt}.cv-contact-top .cv-contact-card{max-width:100%}.cv-card{break-inside:avoid;background:#fff;border:1px solid #0f172a1a;padding:.92rem 1rem}.cv-card h3{font-size:var(--cv-export-item-title-size,11pt);line-height:var(--cv-export-item-title-line-height,1.24);color:var(--cv-export-strong-color,#0f172a);margin:0}.cv-card p{font-size:var(--cv-export-item-body-size,10pt);line-height:var(--cv-export-body-line-height,1.45);color:var(--cv-export-muted-color,#475569);margin:.58rem 0 0}.cv-card__label,.cv-card__index{letter-spacing:0;font-weight:600;font-size:var(--cv-export-label-size,9.2pt)!important;color:var(--cv-export-muted-color,#475569)!important;margin:0!important}.cv-subsection__title{color:var(--cv-export-strong-color,#0f172a)!important;margin:0!important;font-size:12.2pt!important;font-weight:700!important;line-height:1.24!important}.cv-card__group+.cv-card__group{margin-top:.62rem}.cv-card__group .cv-tags{margin-top:.16rem}.cv-card__meta{font-size:var(--cv-export-tag-size,9.6pt)!important;color:var(--cv-export-muted-color,#475569)!important;margin-top:.42rem!important;line-height:1.35!important}.cv-subsection .cv-grid--three .cv-card .cv-card__meta{color:var(--cv-export-soft-muted-color,#64748b)!important;margin-top:.28rem!important;font-size:8.8pt!important;line-height:1.28!important}.cv-card__impact{border-left:1pt solid #64748b;padding-left:.45rem;color:var(--cv-export-strong-color,#0f172a)!important;margin-top:.62rem!important;font-weight:500!important}.cv-tags{flex-wrap:wrap;gap:.24rem .38rem;display:flex}.cv-tag{font-size:var(--cv-export-tag-size,9.6pt);color:var(--cv-export-muted-color,#475569);background:#f7f8fb;border:0;padding:.14rem .32rem;line-height:1.22}.cv-contact-card{padding-top:1rem;padding-bottom:1rem}.cv-vcard-frame{border:1px solid var(--cv-export-soft-muted-color,#64748b);background:0 0;justify-content:center;place-self:center start;align-items:center;width:84pt;min-height:84pt;margin-top:4pt;padding:6pt 3pt 3pt;display:flex;position:relative}.cv-vcard-frame__label{color:var(--cv-export-body-color,#334155);background:#fff;padding:0 4pt;font-size:8.6pt;line-height:1;position:absolute;top:calc(-.8em - 1px);left:10pt}.cv-vcard-frame__code{justify-content:center;align-items:center;width:74pt;height:74pt;display:flex}.cv-vcard-frame__code svg{width:74pt;height:74pt;display:block}.cv-links{margin:.22rem 0 0;padding:0;list-style:none}.cv-links li+li{margin-top:.58rem}.cv-links li{flex-wrap:nowrap;align-items:flex-start;gap:0;display:flex}.cv-links a{color:var(--cv-export-strong-color,#0f172a);font-size:var(--cv-export-contact-value-size,9.8pt);line-height:var(--cv-export-body-line-height,1.45);text-decoration:none}.cv-contact-value{flex:auto;min-width:0}.cv-availability-title{color:var(--cv-export-strong-color,#0f172a)!important;font-size:12.2pt!important;font-weight:700!important;line-height:1.24!important}.cv-availability-highlight{color:var(--cv-export-strong-color,#0f172a)!important;font-weight:500!important}.cv-availability-bullets{margin:0;padding:0;list-style:none}.cv-availability-bullet{color:var(--cv-export-muted-color,#475569);align-items:center;font-size:9.9pt;line-height:1.3;display:flex}.cv-availability-bullet__mark{color:#64748b;flex:0 0 8pt;width:8pt;margin-right:2pt}.cv-links a:hover{text-decoration:underline}.cv-earlier-projects{margin-top:.7rem}.cv-earlier-projects__list{margin:0;padding:0;list-style:none}.cv-earlier-projects__item{font-size:var(--cv-export-item-body-size,10pt);line-height:var(--cv-export-body-line-height,1.45);color:var(--cv-export-muted-color,#475569);align-items:flex-start;gap:.6rem;display:flex}.cv-earlier-projects__item+.cv-earlier-projects__item{margin-top:.28rem}.cv-earlier-projects__bullet{color:#64748b;flex:none}.cv-earlier-projects__item a{color:var(--cv-export-strong-color,#0f172a);text-decoration:none}.cv-earlier-projects__link-line{white-space:nowrap}.cv-earlier-projects__item a:hover{text-decoration:underline}.cv-document-footer{width:min(100%, var(--cv-export-page-width,210mm));color:var(--cv-export-soft-muted-color,#64748b);font-size:var(--cv-export-footer-size,8.5pt);text-align:center;margin:.7rem auto 0}.cv-document-footer p{margin:0}.cv-document-footer__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;display:flex}.cv-document-footer__separator{color:#94a3b8e6;opacity:.85;margin:0 6px;font-size:1em;font-weight:600;line-height:1;display:inline-block}.cv-contact-term{font-weight:600;font-size:var(--cv-export-label-size,9.2pt)!important;letter-spacing:0!important;text-transform:none!important;color:var(--cv-export-body-color,#334155)!important;margin:0!important}.cv-export-page>*+.cv-page-section,.cv-export-page>*+.cv-document-footer--page{margin-top:var(--cv-export-section-gap,18pt)}.cv-document-footer--page{width:100%;margin-left:0;margin-right:0}
