@charset "UTF-8";.apos-left{margin-right:auto}.apos-center{margin-right:auto;margin-left:auto}.apos-right{margin-left:auto}.bp-rich-text img{width:100%;margin:auto}[data-rich-text] table:not([class]),.tiptap table:not([class]),.tableWrapper table,.apos-rich-text-table{overflow:hidden;width:100%;margin:0;border-collapse:collapse;table-layout:fixed}[data-rich-text] table:not([class]) td,[data-rich-text] table:not([class]) th,.tiptap table:not([class]) td,.tiptap table:not([class]) th,.tableWrapper table td,.tableWrapper table th,.apos-rich-text-table td,.apos-rich-text-table th{box-sizing:border-box;padding:6px 8px;border:1px solid var(--a-base-4, #939393);min-width:1em;vertical-align:top}[data-rich-text] table:not([class]) td>*,[data-rich-text] table:not([class]) th>*,.tiptap table:not([class]) td>*,.tiptap table:not([class]) th>*,.tableWrapper table td>*,.tableWrapper table th>*,.apos-rich-text-table td>*,.apos-rich-text-table th>*{margin-bottom:0}[data-rich-text] table:not([class]) th,.tiptap table:not([class]) th,.tableWrapper table th,.apos-rich-text-table th{background-color:var(--a-base-8, #dbdbdb);font-weight:700;text-align:start}.image-widget-placeholder{width:100%}body[data-breakpoint-preview-mode]{position:relative;contain:layout}/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body:not([data-breakpoint-preview-mode]),[data-apos-refreshable-body]{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}h1,h2,h3{text-align:center}h1{font-size:4em;font-weight:200}a{color:#6236ff;text-decoration:none}a:hover,a:focus{text-decoration:underline}a:visited{color:#8264f1}::-moz-selection{background-color:#f7b500}::selection{background-color:#f7b500}code{white-space:normal}pre{display:flex;position:relative;font-family:Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#fff;font-size:14px;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none;border-radius:6px;margin-bottom:1.5rem;padding:1.5rem;overflow:auto;background:#2b2b2b;max-width:600px;margin:0 auto}.bp-button{display:inline-block;padding:12px 24px 10px;text-decoration:none;font-size:14px;border-radius:30px;line-height:1;font-weight:500;background:#6236ff;color:#fff}.bp-button:visited,.bp-button:hover,.bp-button:active{color:#fff}.bp-button--cta{font-size:16px;font-weight:400;padding:20px 30px}:root{--content-max-width: 1200px}body:not([data-breakpoint-preview-mode]),[data-apos-refreshable-body],[data-apos-refreshable],.bp-wrapper{display:flex;flex-direction:column}[data-apos-refreshable],.bp-wrapper,main{flex-grow:1}body:not([data-breakpoint-preview-mode]){min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}[data-apos-refreshable-body]{min-height:100cqh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}.bp-header,main,.bp-footer{width:100%;max-width:var(--content-max-width);margin-left:auto;margin-right:auto}.bp-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px;padding:40px 0}.bp-footer{padding:40px 0}.bp-footer__links{padding-left:0;list-style:none;text-align:center}.bp-footer__links li{display:inline-block;margin-right:20px}.bp-footer__links li:last-child{margin-right:0}.bp-header__logo{display:block;width:190px;max-width:100%;-o-object-fit:contain;object-fit:contain}.bp-header__login:visited{color:#fff}.bp-content{margin-left:auto;margin-right:auto}.bp-welcome{max-width:800px;margin-left:auto;margin-right:auto}.bp-welcome__area{margin-top:40px}.bp-welcome__headline{position:relative;margin:0 0 50px}.bp-welcome__verson-wrapper{display:flex;justify-content:center}.bp-welcome__version{position:relative;background-color:#a992ff;padding:4px 5px;border-radius:2px;display:inline-block;color:#300ab7;font-size:12px;box-shadow:0 25px 50px #4046681a;font-weight:500;letter-spacing:2px;text-transform:uppercase}.bp-welcome__help{font-weight:600;font-size:22px;margin-bottom:24px}.bp-welcome p{max-width:500px;margin:20px auto;line-height:1.5;font-size:1.1rem}.bp-welcome__code__context{position:absolute;display:inline-block;bottom:auto;left:auto;right:0;top:0;width:auto;height:auto;text-transform:uppercase;font-size:11px;font-family:code-saver,sans-serif;letter-spacing:.025em;padding:5px 10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-top-right-radius:2px;background:#ffffff20;color:#ffffff96;letter-spacing:1px}.bp-welcome__code{margin:40px auto}p.bp-welcome__cta{text-align:center;margin-bottom:40px}.bp-mode{display:inline-block;padding:5px;font-size:12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:10px;color:#000;vertical-align:middle;background-color:#fff;border-bottom-color:#000;border:1px solid black;border-radius:6px;box-shadow:inset 0 -1px #000}.bp-video-widget{width:100%}.bp-image-widget{max-width:100%}.portfolio-root *,.portfolio-root *:before,.portfolio-root *:after{box-sizing:border-box;margin:0;padding:0}.portfolio-root{--bg: #f8f7f4;--surface: #ffffff;--text: #1a1a1a;--muted: #6b6b6b;--accent: #7a9f7a;--accent-light: #edf3ed;--border: #e8e6e1;--radius: 12px;--ease: cubic-bezier(.25, .46, .45, .94);font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden;min-height:100vh}:where([data-apos-refreshable-body]) .portfolio-root,:where([data-apos-refreshable-body]).portfolio-root{--bg: #f8f7f4;--surface: #ffffff;--text: #1a1a1a;--muted: #6b6b6b;--accent: #7a9f7a;--accent-light: #edf3ed;--border: #e8e6e1;--radius: 12px;--ease: cubic-bezier(.25, .46, .45, .94);font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden;min-height:100cqh}html{scroll-behavior:smooth}#glow{position:fixed;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(122,159,122,.09) 0%,transparent 70%);pointer-events:none;transform:translate(-50%,-50%);transition:left 1s ease,top 1s ease;z-index:0}:where([data-apos-refreshable-body]) #glow,:where([data-apos-refreshable-body])#glow{position:sticky;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(122,159,122,.09) 0%,transparent 70%);pointer-events:none;transform:translate(-50%,-50%);transition:left 1s ease,top 1s ease;z-index:0}.portfolio-root nav#nav{position:fixed;inset:0 0 auto 0;z-index:100;padding:1.25rem 3rem;display:flex;justify-content:space-between;align-items:center;transition:background .4s var(--ease),box-shadow .4s var(--ease)}:where([data-apos-refreshable-body]) .portfolio-root nav#nav,:where([data-apos-refreshable-body]).portfolio-root nav#nav{position:sticky;inset:0 0 auto 0;z-index:100;padding:1.25rem 3rem;display:flex;justify-content:space-between;align-items:center;transition:background .4s var(--ease),box-shadow .4s var(--ease)}.portfolio-root nav#nav.scrolled{background:#f8f7f4e0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--border)}.portfolio-root .nav-logo{font-weight:600;font-size:.95rem;letter-spacing:-.02em;color:var(--text);text-decoration:none}.portfolio-root .nav-links{display:flex;gap:2.25rem;list-style:none}.portfolio-root .nav-select{display:none;font-family:inherit;font-size:.85rem;color:var(--muted);background:transparent;border:1.5px solid var(--border);border-radius:100px;padding:.4rem 1rem;cursor:pointer;outline:none}.portfolio-root .nav-links a{color:var(--muted);text-decoration:none;font-size:.85rem;transition:color .25s}.portfolio-root .nav-links a:hover{color:var(--text)}.portfolio-root .hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:0 2rem 8rem}:where([data-apos-refreshable-body]) .portfolio-root .hero,:where([data-apos-refreshable-body]).portfolio-root .hero{min-height:100cqh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:0 2rem 8rem}.portfolio-root .orb{position:absolute;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle at 38% 42%,rgba(122,159,122,.18) 0%,rgba(122,159,122,.06) 45%,transparent 72%);top:calc(50% - 4rem);left:50%;transform:translate(-50%,-50%);animation:portfolio-breathe 9s ease-in-out infinite;pointer-events:none}@keyframes portfolio-breathe{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.65}50%{transform:translate(-50%,-50%) scale(1.18);opacity:1}}.portfolio-root .hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(122,159,122,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(122,159,122,.035) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 100%);mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 0%,transparent 100%);pointer-events:none}.portfolio-root .hero-content{position:relative;z-index:1;text-align:center;max-width:720px}.portfolio-root .hero-label{font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:1.75rem;opacity:0;animation:portfolio-fadeUp .9s var(--ease) .15s forwards}.portfolio-root .hero-title{font-size:clamp(2.8rem,8vw,5.5rem);font-weight:300;letter-spacing:-.045em;line-height:1.05;margin-bottom:1.5rem;opacity:0;animation:portfolio-fadeUp .9s var(--ease) .35s forwards}:where([data-apos-refreshable-body]) .portfolio-root .hero-title,:where([data-apos-refreshable-body]).portfolio-root .hero-title{font-size:clamp(2.8rem,8cqw,5.5rem);font-weight:300;letter-spacing:-.045em;line-height:1.05;margin-bottom:1.5rem;opacity:0;animation:portfolio-fadeUp .9s var(--ease) .35s forwards}.portfolio-root .hero-title strong{font-weight:600}.portfolio-root .hero-sub{font-size:1.1rem;color:var(--muted);font-weight:300;max-width:480px;margin:0 auto 2.75rem;opacity:0;animation:portfolio-fadeUp .9s var(--ease) .55s forwards}.portfolio-root .hero-cta{display:flex;gap:.875rem;justify-content:center;flex-wrap:wrap;opacity:0;animation:portfolio-fadeUp .9s var(--ease) .75s forwards}.portfolio-root .btn{padding:.75rem 1.875rem;border-radius:100px;font-size:.85rem;font-weight:500;font-family:inherit;text-decoration:none;border:none;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,border-color .25s,color .25s;display:inline-block}.portfolio-root .btn-dark{background:var(--text);color:var(--bg)}.portfolio-root .btn-dark:hover{background:var(--accent);transform:translateY(-3px);box-shadow:0 10px 28px #7a9f7a47}.portfolio-root .btn-ghost{background:transparent;color:var(--text);border:1.5px solid var(--border)}.portfolio-root .btn-ghost:hover{border-color:var(--text);transform:translateY(-3px)}.portfolio-root .wrap{max-width:1080px;margin:0 auto;padding:6rem 2rem}.portfolio-root .section-tag{font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem}.portfolio-root .section-heading{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:300;letter-spacing:-.035em;line-height:1.15;margin-bottom:1.25rem}:where([data-apos-refreshable-body]) .portfolio-root .section-heading,:where([data-apos-refreshable-body]).portfolio-root .section-heading{font-size:clamp(1.8rem,3.5cqw,2.6rem);font-weight:300;letter-spacing:-.035em;line-height:1.15;margin-bottom:1.25rem}#about .section-tag,#about .section-heading,#skills .section-tag,#skills .section-heading,#work .section-tag,#work .section-heading{text-align:left}.portfolio-root .section-heading strong{font-weight:600}.portfolio-root hr.divider{border:none;border-top:1px solid var(--border);max-width:1080px;margin:0 auto}.portfolio-root .about-grid{display:grid;grid-template-columns:3fr 2fr;gap:5rem;align-items:center}.portfolio-root .about-text p:not(.section-tag){color:var(--muted);font-size:1.05rem;font-weight:300;margin-bottom:1.2rem}.portfolio-root .about-text p:last-of-type{margin-bottom:1.75rem}.portfolio-root .portrait{border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(135deg,var(--accent-light) 0%,var(--surface) 100%);aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:5.5rem;position:relative;overflow:hidden}.portfolio-root .portrait:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(45deg,transparent,transparent 22px,rgba(122,159,122,.05) 22px,rgba(122,159,122,.05) 23px)}.portfolio-root .skills-grid{margin-top:3rem}.portfolio-root .skill-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}.portfolio-root .skill-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px #00000012;border-color:#7a9f7a59}.portfolio-root .skill-icon{font-size:1.6rem;margin-bottom:.9rem}.portfolio-root .skill-name{font-weight:500;font-size:.95rem;margin-bottom:.45rem}.portfolio-root .skill-desc{font-size:.83rem;color:var(--muted);line-height:1.6}.portfolio-root .projects-grid{margin-top:3rem}.portfolio-root .project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.portfolio-root .project-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px #00000012}.portfolio-root .project-tag{display:inline-block;font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:var(--accent-light);padding:.22rem .65rem;border-radius:100px;margin-bottom:1rem}.portfolio-root .project-title{font-weight:500;font-size:1rem;margin-bottom:.6rem}.portfolio-root .project-desc{font-size:.855rem;color:var(--muted);line-height:1.65}.portfolio-root .contact-inner{text-align:center;max-width:500px;margin:0 auto}.portfolio-root .contact-inner p:not(.section-tag){color:var(--muted);font-size:1.05rem;font-weight:300;margin-bottom:2.25rem}.portfolio-root .contact-link{display:flex;align-items:center;gap:.45rem;padding:.6rem 1.25rem;border-radius:100px;border:1.5px solid var(--border);text-decoration:none;color:var(--text);font-size:.85rem;font-weight:400;transition:border-color .25s,color .25s,transform .25s var(--ease)}.portfolio-root .contact-link:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px)}.portfolio-root .portfolio-footer{text-align:center;padding:1.75rem 2rem;border-top:1px solid var(--border);font-size:.78rem;color:var(--muted)}@keyframes portfolio-fadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.portfolio-root .fade-up{opacity:0;transform:translateY(36px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.portfolio-root .fade-up.in{opacity:1;transform:none}.portfolio-root .stagger .fade-up:nth-child(2){transition-delay:.1s}.portfolio-root .stagger .fade-up:nth-child(3){transition-delay:.2s}.portfolio-root .stagger .fade-up:nth-child(4){transition-delay:.3s}@media(max-width:700px){:where(body:not([data-breakpoint-preview-mode])) .portfolio-root nav#nav,:where(body:not([data-breakpoint-preview-mode])).portfolio-root nav#nav{padding:1.25rem 1.5rem}:where(body:not([data-breakpoint-preview-mode])) .portfolio-root .nav-links,:where(body:not([data-breakpoint-preview-mode])).portfolio-root .nav-links{display:none}:where(body:not([data-breakpoint-preview-mode])) .portfolio-root .nav-select,:where(body:not([data-breakpoint-preview-mode])).portfolio-root .nav-select{display:block}:where(body:not([data-breakpoint-preview-mode])) .portfolio-root .about-grid,:where(body:not([data-breakpoint-preview-mode])).portfolio-root .about-grid{grid-template-columns:1fr;gap:2.5rem}:where(body:not([data-breakpoint-preview-mode])) .portfolio-root .portrait,:where(body:not([data-breakpoint-preview-mode])).portfolio-root .portrait{max-width:220px;margin:0 auto}:where(body:not([data-breakpoint-preview-mode])) .portfolio-root .wrap,:where(body:not([data-breakpoint-preview-mode])).portfolio-root .wrap{padding:4rem 1.5rem}}@container (max-width: 700px){.portfolio-root nav#nav{padding:1.25rem 1.5rem}.portfolio-root .nav-links{display:none}.portfolio-root .nav-select{display:block}.portfolio-root .about-grid{grid-template-columns:1fr;gap:2.5rem}.portfolio-root .portrait{max-width:220px;margin:0 auto}.portfolio-root .wrap{padding:4rem 1.5rem}}.portfolio-root.is-editor .fade-up{opacity:1;transform:none}.portfolio-root.is-editor nav#nav{top:55px;z-index:10;padding:1.25rem 3rem!important}.portfolio-root.is-editor .nav-links{display:flex!important}.portfolio-root.is-editor .about-grid{grid-template-columns:3fr 2fr!important;gap:5rem!important}.portfolio-root.is-editor .portrait{max-width:none!important}.portfolio-root.is-editor .wrap{padding:6rem 2rem!important}.portfolio-root.is-editor .skills-grid .apos-areas-widgets-list{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:1.25rem!important}.portfolio-root.is-editor .projects-grid .apos-areas-widgets-list{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important;gap:1.25rem!important}.portfolio-root.is-editor .contact-links .apos-areas-widgets-list{display:flex!important;gap:.875rem!important;justify-content:center!important;flex-wrap:wrap!important}.portfolio-root.is-editor .hero{min-height:auto;padding:4rem 2rem;overflow:visible}.portfolio-root .skills-grid>.apos-area{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.portfolio-root .projects-grid>.apos-area{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.portfolio-root .contact-links>.apos-area{display:flex;gap:.875rem;justify-content:center;flex-wrap:wrap}.portfolio-root.is-editor .hero-content{z-index:auto}