/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:"DM Sans", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.grow{flex-grow:1}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color:#17231f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--ink:#17231f;--muted:#65726c;--canvas:#f5f7f5;--paper:#fff;--accent:#177a63;--accent-dark:#0e604e;--accent-soft:#e8f3ed;--line:#e1e8e3;--display-font:"Space Grotesk", sans-serif;--content-width:1160px;background:#f5f7f5;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{min-height:100vh;margin:0}body,button,a{font-family:DM Sans,sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #177a63}::selection{color:#fff;background:#177a63}.page-shell{width:min(var(--content-width), calc(100% - 64px));margin-inline:auto}.site-header{z-index:20;border-bottom:1px solid #0000;transition:background-color .18s,border-color .18s,box-shadow .18s;position:sticky;top:0}.site-header.is-scrolled,.site-header.menu-open{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f7f5eb;border-bottom-color:#e1e8e3cc;box-shadow:0 8px 24px #17231f0a}.navbar{justify-content:space-between;align-items:center;gap:24px;min-height:82px;display:flex}.brand{font-family:var(--display-font);letter-spacing:-.06em;flex-shrink:0;align-items:center;gap:11px;font-size:19px;font-weight:700;display:inline-flex}.brand-mark{background:var(--ink);color:#fff;letter-spacing:-.08em;border-radius:12px;place-items:center;width:36px;height:36px;font-size:13px;display:grid}.nav-links{align-items:center;gap:clamp(14px,2vw,27px);display:flex}.nav-link{color:#59665f;padding-block:9px;font-size:13px;font-weight:600;transition:color .16s;position:relative}.nav-link:hover,.nav-link.is-active{color:var(--accent-dark)}.nav-link.is-active:after{background:var(--accent);content:"";border-radius:2px;height:2px;position:absolute;bottom:1px;left:0;right:0}.nav-actions{align-items:center;gap:10px;display:flex}.resume-button{color:#78837d;cursor:not-allowed;white-space:nowrap;background:0 0;border:1px solid #d5dfd9;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:12px;font-weight:700;display:inline-flex}.resume-button svg{color:#8c9791}.menu-toggle{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:none}.hero{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:center;gap:clamp(40px,8vw,112px);min-height:min(760px,100svh - 82px);padding-block:74px 96px;display:grid;position:relative}.hero:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle,#dceee4b3,#f5f7f500 70%);border-radius:50%;width:440px;height:440px;position:absolute;top:10%;right:1%}.hero-copy{max-width:640px}.eyebrow{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:9px;margin:0 0 25px;font-size:12px;font-weight:700;display:inline-flex}.eyebrow-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #177a631a}.hero-title{max-width:690px;font-family:var(--display-font);letter-spacing:-.075em;margin:0;font-size:clamp(50px,6.7vw,82px);font-weight:600;line-height:1.02}.hero-title span{display:block}.hero-title .name-line{color:var(--accent)}.role-line{color:#53615a;min-height:49px;font-family:var(--display-font);letter-spacing:-.035em;align-items:center;margin-top:22px;font-size:clamp(18px,2vw,24px);font-weight:500;display:flex}.role-line span{display:inline-block}.hero-description{max-width:560px;color:var(--muted);margin:21px 0 0;font-size:16px;line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:13px;margin-top:32px;display:flex}.button-primary,.button-secondary{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:0 20px;font-size:13px;font-weight:700;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s;display:inline-flex}.button-primary{background:var(--ink);color:#fff;box-shadow:0 9px 18px #17231f1f}.button-primary:hover{background:var(--accent-dark);box-shadow:0 12px 24px #177a6333}.button-secondary{color:var(--ink);background:#ffffff9e;border-color:#dce4de}.button-secondary:hover{background:#fff;border-color:#bdd3c7}.social-links{align-items:center;gap:17px;margin-top:29px;display:flex}.social-link{color:#606d66;align-items:center;gap:7px;font-size:12px;font-weight:600;transition:color .16s;display:inline-flex}.social-link:hover{color:var(--accent-dark)}.social-divider{background:#d7dfd9;width:1px;height:17px}.hero-visual{place-items:center;min-height:444px;display:grid;position:relative}.visual-orbit{aspect-ratio:1;border:1px solid #dfe9e2;border-radius:50%;width:min(100%,430px);position:absolute}.visual-orbit:before,.visual-orbit:after{content:"";border:1px solid #e6ede8;border-radius:50%;position:absolute}.visual-orbit:before{inset:9%}.visual-orbit:after{inset:19%}.profile-card{background:radial-gradient(at 85% 8%,#b5e1c9c7,#0000 44%),linear-gradient(145deg,#e1f0e7 0%,#f5f8f5 53%,#dcebe1 100%);border:1px solid #ffffffb8;border-radius:28px;flex-direction:column;justify-content:space-between;width:min(100%,328px);min-height:348px;padding:27px;display:flex;position:relative;overflow:hidden;transform:rotate(2deg);box-shadow:0 28px 80px #17231f1c,inset 0 1px #fffc}.profile-card-top{color:#536b5e;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;display:flex}.profile-card-top svg{color:var(--accent)}.monogram{color:var(--ink);font-family:var(--display-font);letter-spacing:-.13em;text-shadow:0 9px 25px #17231f17;align-self:center;font-size:104px;font-weight:600;line-height:1}.profile-card-bottom{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.profile-card-name{font-family:var(--display-font);letter-spacing:-.045em;margin:0;font-size:20px;font-weight:600}.profile-card-location{color:#617169;align-items:center;gap:5px;margin:5px 0 0;font-size:11px;display:flex}.floating-chip{z-index:1;color:#4a5b52;white-space:nowrap;background:#ffffffe6;border:1px solid #dfe8e2e6;border-radius:999px;align-items:center;gap:8px;padding:11px 14px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;box-shadow:0 12px 30px #17231f14}.floating-chip svg{color:var(--accent)}.chip-stack{top:16%;right:-3%}.hero-scroll{color:#839087;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;bottom:27px;left:0}.hero-scroll svg{color:var(--accent)}.about-section{background:#fff;border-top:1px solid #e8ede9;padding-block:112px 120px}.about-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(44px,8vw,104px);display:grid}.about-copy{max-width:485px}.section-eyebrow{color:var(--accent);letter-spacing:.15em;text-transform:uppercase;margin:0 0 17px;font-size:11px;font-weight:700}.about-title{font-family:var(--display-font);letter-spacing:-.07em;margin:0;font-size:clamp(39px,4.7vw,58px);font-weight:600;line-height:1.08}.about-title span{color:var(--accent);display:block}.about-introduction{color:var(--muted);margin:24px 0 0;font-size:15px;line-height:1.85}.career-note{background:#f5faf6;border:1px solid #dfece4;border-radius:16px;align-items:flex-start;gap:13px;margin-top:25px;padding:17px 18px;display:flex}.career-note-mark{width:34px;height:34px;color:var(--accent);background:#e6f3eb;border-radius:11px;flex:none;place-items:center;display:grid}.career-note p{color:#53645a;margin:0;font-size:12px;line-height:1.75}.about-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:8px;display:grid}.highlight-card{background:#fbfcfb;border:1px solid #e4eae5;border-radius:18px;min-height:186px;padding:21px 20px;transition:border-color .18s,box-shadow .18s,transform .18s}.highlight-card:hover{border-color:#cbded1;transform:translateY(-3px);box-shadow:0 14px 28px #17231f0d}.highlight-card-top{align-items:center;gap:10px;display:flex}.highlight-icon{background:var(--accent-soft);width:33px;height:33px;color:var(--accent-dark);border-radius:11px;place-items:center;display:grid}.highlight-label{color:#6a776f;font-size:11px;font-weight:700}.highlight-card h3{font-family:var(--display-font);letter-spacing:-.035em;margin:18px 0 0;font-size:17px;font-weight:600;line-height:1.35}.highlight-card p{color:var(--muted);margin:8px 0 0;font-size:11px;line-height:1.7}.skills-section{background:var(--canvas);border-top:1px solid #e8ede9;padding-block:104px 112px}.skills-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.skills-heading .section-eyebrow{margin-bottom:14px}.skills-title{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(36px,4.5vw,52px);font-weight:600;line-height:1.1}.skills-description{max-width:350px;color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.75}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.skill-category{background:#fff;border:1px solid #e1e8e3;border-radius:18px;min-height:184px;padding:21px;transition:border-color .18s,box-shadow .18s,transform .18s}.skill-category:hover{border-color:#cbded1;transform:translateY(-3px);box-shadow:0 14px 28px #17231f0d}.skill-category-heading{align-items:center;gap:11px;display:flex}.skill-category-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-dark);border-radius:12px;flex:none;place-items:center;display:grid}.skill-category-heading h3{font-family:var(--display-font);letter-spacing:-.035em;margin:0;font-size:16px;font-weight:600}.skill-list{flex-wrap:wrap;gap:8px;margin:23px 0 0;padding:0;list-style:none;display:flex}.skill-pill{color:#536159;background:#f8faf8;border:1px solid #e5ebe6;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:600;line-height:1.1}.projects-section{background:#fff;border-top:1px solid #e8ede9;padding-block:104px 116px}.projects-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.projects-heading .section-eyebrow{margin-bottom:14px}.projects-title{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(36px,4.5vw,52px);font-weight:600;line-height:1.1}.projects-description{max-width:350px;color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.75}.featured-project{background:#fbfcfb;border:1px solid #e1e8e3;border-radius:24px;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);display:grid;overflow:hidden;box-shadow:0 22px 55px #17231f0d}.project-copy{padding:clamp(25px,4vw,42px)}.project-meta{flex-wrap:wrap;align-items:center;gap:11px;display:flex}.featured-label{color:var(--accent-dark);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:10px;font-weight:700;display:inline-flex}.featured-label span{background:var(--accent);border-radius:50%;width:7px;height:7px}.project-category{color:#647169;border:1px solid #e1e8e3;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:600}.project-copy h3{font-family:var(--display-font);letter-spacing:-.06em;margin:21px 0 0;font-size:clamp(28px,3vw,38px);font-weight:600;line-height:1.12}.project-summary{color:var(--muted);margin:15px 0 0;font-size:13px;line-height:1.8}.project-feature-list{gap:10px;margin:23px 0 0;padding:0;list-style:none;display:grid}.project-feature-list li{color:#4c5c53;align-items:flex-start;gap:9px;font-size:12px;line-height:1.55;display:flex}.project-feature-list svg{color:var(--accent);flex:none;margin-top:1px}.project-tech-list{flex-wrap:wrap;gap:7px;margin:24px 0 0;padding:0;list-style:none;display:flex}.project-tech-list li{color:#59665f;background:#fff;border:1px solid #e1e8e3;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:600}.project-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:23px;display:flex}.project-link{color:#4d5d53;background:#fff;border:1px solid #dfe7e1;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-size:11px;font-weight:700;transition:border-color .16s,color .16s;display:inline-flex}.project-link:hover{color:var(--accent-dark);border-color:#b7d0c0}.project-link-primary{border-color:var(--ink);background:var(--ink);color:#fff}.project-link-primary:hover{border-color:var(--accent-dark);background:var(--accent-dark);color:#fff}.project-links-note{color:#76827a;margin:0;font-size:11px;line-height:1.6}.project-details{border-top:1px solid #e3e9e4;margin-top:21px}.project-details summary{color:#45554b;cursor:pointer;justify-content:space-between;align-items:center;gap:15px;min-height:47px;font-size:11px;font-weight:700;list-style:none;display:flex}.project-details summary::-webkit-details-marker{display:none}.project-details summary svg{color:var(--accent);transition:transform .16s}.project-details[open] summary svg{transform:rotate(180deg)}.project-details-body{padding:0 0 14px}.project-details-body p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.project-details-body ul{gap:8px;margin:13px 0 0;padding:0;list-style:none;display:grid}.project-details-body li{color:#58665e;align-items:flex-start;gap:7px;font-size:10px;line-height:1.5;display:flex}.project-details-body li svg{color:var(--accent);flex:none;margin-top:1px}.project-artwork{background:radial-gradient(at 75% 15%,#c5e2cfc7,#0000 34%),linear-gradient(145deg,#eaf3ec,#f3f6f2 54%,#e1eee5);place-items:center;min-height:530px;padding:42px;display:grid;position:relative;overflow:hidden}.project-artwork:before,.project-artwork:after{content:"";border:1px solid #80a98f2e;border-radius:50%;position:absolute}.project-artwork:before{aspect-ratio:1;width:420px}.project-artwork:after{aspect-ratio:1;width:340px}.store-window{z-index:1;background:#fff;border:1px solid #ffffffe6;border-radius:16px;width:min(100%,475px);position:relative;overflow:hidden;transform:rotate(-2deg);box-shadow:0 28px 65px #1d392826}.store-browser-bar{background:#fbfcfb;border-bottom:1px solid #eef1ed;align-items:center;gap:5px;height:31px;padding-inline:12px;display:flex}.store-browser-bar>span{background:#d7dfd9;border-radius:50%;width:6px;height:6px}.store-browser-bar>span:first-child{background:#d9a69d}.store-browser-bar i{color:#a0aaa2;margin-left:auto;font-size:7px;font-style:normal}.store-content{padding:15px 18px 18px}.store-nav{color:#7b867d;justify-content:space-between;align-items:center;gap:8px;font-size:7px;display:flex}.store-wordmark{color:#1d3025;font-family:var(--display-font);align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.store-wordmark svg{color:var(--accent)}.store-hero{background:radial-gradient(at 88% 55%,#c2dac5c7,#0000 32%),linear-gradient(112deg,#e9f1e7 0%,#f6f2e8 100%);border-radius:11px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:155px;margin-top:13px;padding:18px 22px;display:flex}.store-hero>span:first-child{color:#5a7662;letter-spacing:.14em;font-size:6px;font-weight:700}.store-hero strong{color:#23392b;font-family:var(--display-font);letter-spacing:-.06em;margin-top:8px;font-size:clamp(20px,3vw,30px);font-weight:600;line-height:1}.store-cta{color:#4c6955;align-items:center;gap:5px;margin-top:11px;font-size:7px;font-weight:700;display:inline-flex}.store-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px;display:grid}.store-product{flex-direction:column;gap:5px;display:flex}.product-shape{border-radius:7px;height:74px;display:block}.product-shape-one{background:radial-gradient(at 50% 34%,#d4b68f 0 14%,#0000 15%),linear-gradient(145deg,#efe5d6,#e0d1bb)}.product-shape-two{background:radial-gradient(at 50% 34%,#839b81 0 14%,#0000 15%),linear-gradient(145deg,#e3eade,#cfddcd)}.product-shape-three{background:radial-gradient(at 50% 34%,#bb8e80 0 14%,#0000 15%),linear-gradient(145deg,#efe3df,#dfc9c1)}.store-product i{background:#e5e9e5;border-radius:4px;width:68%;height:4px}.store-product i:last-child{background:#edf0ed;width:42%}.artwork-caption{z-index:1;color:#617468;text-align:right;font-size:9px;font-weight:600;position:absolute;bottom:17px;right:20px}.experience-section{background:var(--canvas);border-top:1px solid #e8ede9;padding-block:104px 116px}.experience-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.experience-heading .section-eyebrow{margin-bottom:14px}.experience-title{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(36px,4.5vw,52px);font-weight:600;line-height:1.1}.experience-description{max-width:350px;color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.75}.experience-timeline{gap:24px;margin:0;padding:0;list-style:none;display:grid}.experience-entry{grid-template-columns:minmax(190px,.34fr) minmax(0,1fr);gap:25px;display:grid}.experience-period{align-items:flex-start;gap:12px;padding-top:30px;display:flex;position:relative}.experience-period:after{content:"";background:#dce5de;width:1px;position:absolute;top:62px;bottom:-40px;left:16px}.experience-entry:last-child .experience-period:after{display:none}.experience-marker{z-index:1;width:33px;height:33px;color:var(--accent);background:#edf5ef;border:1px solid #d5e5da;border-radius:11px;flex:none;place-items:center;display:grid;position:relative}.experience-period p{color:#647168;margin:6px 0 0;font-size:11px;font-weight:600;line-height:1.6}.experience-card{background:#fff;border:1px solid #e1e8e3;border-radius:20px;padding:clamp(23px,3.5vw,36px);box-shadow:0 16px 40px #17231f0a}.experience-card-top{align-items:center;gap:10px;display:flex}.experience-role-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-dark);border-radius:11px;place-items:center;display:grid}.experience-type{color:#66736b;border:1px solid #e1e8e3;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:600}.experience-card h3{font-family:var(--display-font);letter-spacing:-.055em;margin:20px 0 0;font-size:clamp(24px,3vw,32px);font-weight:600;line-height:1.15}.experience-organization{color:#405248;margin:8px 0 0;font-size:14px;font-weight:600}.experience-location{color:#77837b;align-items:center;gap:6px;margin:8px 0 0;font-size:11px;display:inline-flex}.experience-location svg{color:var(--accent)}.experience-responsibilities{border-top:1px solid #edf0ed;gap:12px;margin:25px 0 0;padding:22px 0 0;list-style:none;display:grid}.experience-responsibilities li{color:#56645b;align-items:flex-start;gap:9px;font-size:12px;line-height:1.7;display:flex}.experience-responsibilities svg{color:var(--accent);flex:none;margin-top:2px}.experience-tools{flex-wrap:wrap;align-items:center;gap:10px;margin-top:21px;display:flex}.experience-tools>span{color:#76827a;font-size:10px;font-weight:600}.experience-tools ul{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.experience-tools li{color:#58665d;background:#f8faf8;border:1px solid #e2e9e3;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:600}.education-section{background:#fff;border-top:1px solid #e8ede9;padding-block:104px 116px}.education-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.education-heading .section-eyebrow{margin-bottom:14px}.education-title{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(36px,4.5vw,52px);font-weight:600;line-height:1.1}.education-description{max-width:350px;color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.75}.education-list{gap:14px;display:grid}.education-card{background:#fbfcfb;border:1px solid #e1e8e3;border-radius:20px;justify-content:space-between;align-items:center;gap:28px;padding:clamp(22px,3.5vw,34px);transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.education-card:hover{border-color:#cbded1;transform:translateY(-2px);box-shadow:0 14px 28px #17231f0d}.education-card-main{align-items:flex-start;gap:17px;display:flex}.education-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-dark);border-radius:15px;flex:none;place-items:center;display:grid}.education-kind{color:var(--accent-dark);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.education-card h3{font-family:var(--display-font);letter-spacing:-.045em;margin:8px 0 0;font-size:clamp(20px,2.7vw,28px);font-weight:600;line-height:1.25}.education-institution{color:#45554b;margin:7px 0 0;font-size:13px;font-weight:600}.education-location{color:#77837b;align-items:center;gap:6px;margin:8px 0 0;font-size:11px;display:inline-flex}.education-location svg{color:var(--accent)}.education-period{color:#5f6c63;background:#fff;border:1px solid #e0e8e2;border-radius:999px;flex:none;align-items:center;gap:9px;min-height:43px;padding:0 14px;font-size:11px;font-weight:600;display:flex}.education-period svg{color:var(--accent)}.resume-section{background:var(--canvas);border-top:1px solid #e8ede9;padding-block:96px 110px}.resume-card{background:radial-gradient(at 90% 5%,#dbede1b8,#0000 34%),#fff;border:1px solid #dfe9e2;border-radius:24px;grid-template-columns:minmax(0,1fr) minmax(230px,.45fr);align-items:center;gap:48px;padding:clamp(28px,5vw,52px);display:grid;box-shadow:0 20px 50px #17231f0d}.resume-card-copy{max-width:590px}.resume-card-copy .section-eyebrow{margin-bottom:14px}.resume-card-copy h2{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(32px,4vw,46px);font-weight:600;line-height:1.1}.resume-card-copy>p:not(.section-eyebrow){max-width:500px;color:var(--muted);margin:16px 0 0;font-size:13px;line-height:1.8}.resume-status{color:#647168;align-items:center;gap:8px;margin-top:18px;font-size:11px;font-weight:600;display:inline-flex}.resume-status-dot{background:#96a39a;border-radius:50%;width:7px;height:7px}.resume-card-actions{flex-direction:column;align-items:center;gap:14px;display:flex}.resume-file-icon{width:58px;height:58px;color:var(--accent);background:#edf5ef;border:1px solid #dfe9e2;border-radius:18px;place-items:center;display:grid}.resume-download-link{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 17px;font-size:11px;font-weight:700;transition:border-color .16s,background-color .16s;display:inline-flex}.resume-download-link:disabled{color:#748077;cursor:not-allowed;opacity:1;background:#f3f5f3;border-color:#d9e1db}.resume-download-link:not(:disabled):hover{border-color:var(--accent-dark);background:var(--accent-dark)}.resume-contact-link{color:#5d6c62;align-items:center;gap:7px;font-size:11px;font-weight:600;transition:color .16s;display:inline-flex}.resume-contact-link:hover{color:var(--accent-dark)}.resume-contact-link svg{color:var(--accent)}.contact-section{background:#fff;border-top:1px solid #e8ede9;padding-block:104px 116px}.contact-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:36px;display:flex}.contact-heading .section-eyebrow{margin-bottom:14px}.contact-title{font-family:var(--display-font);letter-spacing:-.065em;margin:0;font-size:clamp(36px,4.5vw,52px);font-weight:600;line-height:1.1}.contact-description{max-width:360px;color:var(--muted);margin:0 0 4px;font-size:13px;line-height:1.75}.contact-layout{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);align-items:start;gap:22px;display:grid}.contact-info,.contact-form-card{background:#fbfcfb;border:1px solid #e1e8e3;border-radius:20px;padding:clamp(22px,3.5vw,32px)}.contact-info-intro{margin-bottom:24px}.contact-info-icon{background:var(--accent-soft);width:39px;height:39px;color:var(--accent-dark);border-radius:13px;place-items:center;display:grid}.contact-info-intro h3,.contact-form-card h3{font-family:var(--display-font);letter-spacing:-.04em;margin:16px 0 0;font-size:20px;font-weight:600}.contact-info-intro p{color:var(--muted);margin:8px 0 0;font-size:11px;line-height:1.7}.contact-detail{border-top:1px solid #e7ece8;grid-template-columns:35px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:13px 0;display:grid}.contact-detail-icon{width:34px;height:34px;color:var(--accent);background:#f0f5f1;border-radius:11px;place-items:center;display:grid}.contact-detail>span:nth-child(2){gap:4px;min-width:0;display:grid}.contact-detail small{color:#78847b;font-size:10px;font-weight:600}.contact-detail strong{color:#3d4d43;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.contact-detail>svg{color:#8a968e}.contact-detail:hover strong,.contact-detail:hover>svg{color:var(--accent-dark)}.contact-location{color:#718077;align-items:flex-start;gap:7px;margin:17px 0 0;font-size:10px;line-height:1.6;display:flex}.contact-location svg{color:var(--accent);flex:none;margin-top:1px}.contact-form-card h3{margin-top:0}.contact-form-note{color:#718077;margin:8px 0 0;font-size:10px;line-height:1.65}.contact-form{margin-top:22px}.contact-fields{border:0;min-width:0;margin:0;padding:0}.contact-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 13px;display:grid}.contact-field{align-content:start;gap:7px;min-width:0;display:grid}.contact-field-wide{grid-column:1/-1}.contact-field label{color:#48584e;font-size:11px;font-weight:700}.contact-field input,.contact-field textarea{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #dfe7e1;border-radius:11px;outline:0;padding:11px 12px;font-size:12px;line-height:1.5;transition:border-color .16s,box-shadow .16s}.contact-field input{min-height:42px}.contact-field textarea{resize:vertical;min-height:128px}.contact-field input:focus,.contact-field textarea:focus{border-color:#83b49a;box-shadow:0 0 0 3px #177a631a}.contact-field input[aria-invalid=true],.contact-field textarea[aria-invalid=true]{border-color:#c85b57}.contact-field-error{color:#a63d38;font-size:10px;line-height:1.4}.contact-submit{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:44px;margin-top:18px;padding:0 16px;font-size:11px;font-weight:700;transition:border-color .16s,background-color .16s,opacity .16s;display:inline-flex}.contact-submit:hover:not(:disabled){border-color:var(--accent-dark);background:var(--accent-dark)}.contact-submit:disabled{cursor:wait;opacity:.75}.contact-loader{animation:.8s linear infinite contact-loader-spin}@keyframes contact-loader-spin{to{transform:rotate(360deg)}}.contact-status{color:#56645b;background:#fff;border:1px solid #e1e8e3;border-radius:12px;gap:9px;margin-top:16px;padding:12px 14px;font-size:11px;line-height:1.6;display:grid}.contact-status-error{color:#943b35;background:#fff8f7;border-color:#f0d2cf}.contact-status-preparing{background:#f5faf6;border-color:#dce7df}.contact-status-draft{color:#41604d;background:#f5faf6;border-color:#cfe2d4}.contact-status a{width:fit-content;color:var(--accent-dark);align-items:center;gap:7px;font-weight:700;display:inline-flex}.site-footer{color:#fff;background:#17231f;padding-top:54px}.footer-main{grid-template-columns:minmax(0,1.4fr) minmax(150px,.7fr) minmax(150px,.7fr);gap:48px;padding-bottom:42px;display:grid}.footer-brand{font-family:var(--display-font);letter-spacing:-.055em;align-items:center;gap:11px;font-size:19px;font-weight:700;display:inline-flex}.footer-brand-mark{color:#fff;letter-spacing:-.08em;background:#234b3b;border:1px solid #ffffff2e;border-radius:12px;place-items:center;width:36px;height:36px;font-size:12px;display:grid}.footer-title{color:#d3ddd6;margin:14px 0 0;font-size:12px;font-weight:600}.footer-thanks{color:#9caaa1;margin:8px 0 0;font-size:11px}.footer-column-title{color:#cbd6ce;letter-spacing:.12em;text-transform:uppercase;margin:3px 0 16px;font-size:10px;font-weight:700}.footer-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 18px;margin:0;padding:0;list-style:none;display:grid}.footer-navigation a,.footer-social-link{color:#aab8af;font-size:11px;font-weight:500;transition:color .16s}.footer-navigation a:hover,.footer-social-link:hover{color:#fff}.footer-connect{flex-direction:column;align-items:flex-start;gap:13px;display:flex}.footer-connect .footer-column-title{margin-bottom:3px}.footer-social-link{align-items:center;gap:8px;display:inline-flex}.footer-social-link svg{color:#83b49a}.footer-bottom{border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:20px;min-height:62px;display:flex}.footer-bottom p{color:#9caaa1;margin:0;font-size:10px}.back-to-top{color:#d6dfd8;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:0 11px;font-size:10px;font-weight:600;transition:border-color .16s,background-color .16s;display:inline-flex}.back-to-top:hover{background:#ffffff12;border-color:#fff6}.back-to-top svg{color:#9ac3a8}.admin-login-page{background:radial-gradient(at 50% 0,#aeccb633,#0000 48%),#f5f7f6;place-items:center;min-height:100vh;padding:28px 18px;display:grid}.admin-login-card{background:#fff;border:1px solid #e2e8e3;border-radius:20px;width:min(100%,410px);padding:30px;box-shadow:0 22px 65px #17231f14}.admin-login-back{color:#66736b;font-size:10px;font-weight:600}.admin-login-back:hover{color:var(--accent-dark)}.admin-login-icon{width:46px;height:46px;color:var(--accent-dark);background:#edf5ef;border:1px solid #dfe8e1;border-radius:14px;place-items:center;margin-top:29px;display:grid}.admin-login-card>.admin-eyebrow{margin-top:22px}.admin-login-card h1{color:#202c26;font-family:var(--display-font);letter-spacing:-.055em;margin:0;font-size:29px;font-weight:600}.admin-login-description{color:#748078;margin:9px 0 0;font-size:11px;line-height:1.65}.admin-login-form{gap:15px;margin-top:24px;display:grid}.admin-login-submit{border:1px solid var(--accent-dark);background:var(--accent-dark);color:#fff;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:42px;margin-top:3px;font-size:10px;font-weight:700;transition:background-color .16s;display:inline-flex}.admin-login-submit:hover:not(:disabled){background:#254d39}.admin-login-submit:disabled{cursor:wait;opacity:.7}.admin-login-error{color:#a4493d;background:#fff7f5;border:1px solid #f0d7d3;border-radius:9px;margin:0;padding:10px 11px;font-size:9px;line-height:1.5}.admin-login-security-note{color:#87918a;border-top:1px solid #edf0ed;margin:18px 0 0;padding-top:14px;font-size:9px;line-height:1.6}.admin-auth-state{color:#344239;text-align:center;background:#f5f7f6;align-content:center;justify-items:center;gap:10px;min-height:100vh;padding:24px;display:grid}.admin-auth-state h1,.admin-auth-state p{margin:0}.admin-auth-state h1{font-family:var(--display-font);font-size:22px}.admin-auth-state p{color:#748078;font-size:11px}.admin-auth-state button{border:1px solid var(--accent-dark);background:var(--accent-dark);color:#fff;cursor:pointer;border-radius:999px;min-height:36px;margin-top:5px;padding:0 14px;font-size:10px;font-weight:700}.admin-shell{color:#202c26;background:#f5f7f6;grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{background:#fff;border-right:1px solid #e4e9e5;flex-direction:column;height:100vh;padding:23px 16px 18px;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:11px;padding:0 7px;display:flex}.admin-brand-mark{color:#fff;width:38px;height:38px;font-family:var(--display-font);letter-spacing:-.07em;background:#17231f;border-radius:12px;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.admin-brand>span:last-child{gap:3px;min-width:0;display:grid}.admin-brand strong{font-family:var(--display-font);letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-brand small{color:#7b8780;font-size:10px}.admin-nav-label{color:#8a958e;letter-spacing:.12em;text-transform:uppercase;margin:37px 9px 10px;font-size:9px;font-weight:700}.admin-navigation{gap:5px;display:grid}.admin-nav-link{color:#66736b;border-radius:11px;align-items:center;gap:10px;min-height:42px;padding:0 11px;font-size:12px;font-weight:600;transition:background-color .16s,color .16s;display:flex}.admin-nav-link:hover,.admin-nav-link.is-active{color:var(--accent-dark);background:#edf5ef}.admin-nav-link.is-active{font-weight:700}.admin-sidebar-footer{border-top:1px solid #edf0ed;gap:13px;margin-top:auto;padding:12px 7px 0;display:grid}.admin-preview-pill{color:#806334;background:#fffaf0;border:1px solid #f0dfc0;border-radius:999px;align-items:center;gap:7px;width:fit-content;padding:7px 9px;font-size:10px;font-weight:700;display:inline-flex}.admin-preview-pill>span{background:#c99239;border-radius:50%;width:6px;height:6px}.admin-public-link{color:#647168;align-items:center;gap:8px;font-size:11px;font-weight:600;display:inline-flex}.admin-public-link:hover{color:var(--accent-dark)}.admin-main{min-width:0}.admin-header{background:#fff;border-bottom:1px solid #e4e9e5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:14px clamp(22px,4vw,48px);display:flex}.admin-header p{color:#7b8780;margin:0;font-size:10px;font-weight:600}.admin-header h1{font-family:var(--display-font);letter-spacing:-.04em;margin:4px 0 0;font-size:17px;font-weight:600}.admin-header-link,.admin-open-site{color:#526057;white-space:nowrap;background:#fff;border:1px solid #dfe7e1;border-radius:999px;justify-content:center;align-items:center;min-height:37px;padding:0 13px;font-size:10px;font-weight:700;transition:border-color .16s,color .16s;display:inline-flex}.admin-logout-button{color:#526057;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dfe7e1;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:37px;padding:0 12px;font-size:10px;font-weight:700;display:inline-flex}.admin-logout-button:hover:not(:disabled){color:var(--accent-dark);border-color:#b7d0c0}.admin-logout-button:disabled{cursor:wait;opacity:.7}.admin-header-link:hover,.admin-open-site:hover{color:var(--accent-dark);border-color:#b7d0c0}.admin-logout-error{color:#a4493d;margin:12px clamp(22px,4vw,48px) 0;font-size:10px}.admin-preview-warning{color:#765a2c;background:#fffaf0;border:1px solid #eedfbe;border-radius:12px;align-items:flex-start;gap:10px;margin:23px clamp(22px,4vw,48px) 0;padding:12px 14px;display:flex}.admin-preview-warning svg{flex:none;margin-top:1px}.admin-preview-warning p{margin:0;font-size:10px;line-height:1.65}.admin-content{padding:29px clamp(22px,4vw,48px) 48px}.admin-dashboard{width:min(100%,1120px);margin-inline:auto}.admin-page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:23px;display:flex}.admin-eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-size:9px;font-weight:700}.admin-page-heading h2{font-family:var(--display-font);letter-spacing:-.055em;margin:0;font-size:clamp(24px,3vw,31px);font-weight:600}.admin-page-heading>div>p:last-child{color:#748078;margin:7px 0 0;font-size:11px;line-height:1.6}.admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.admin-stat-card{background:#fff;border:1px solid #e2e8e3;border-radius:15px;min-width:0;padding:17px}.admin-stat-icon{border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.tone-green{color:#237554;background:#e9f4ed}.tone-blue{color:#416c9e;background:#eaf1fa}.tone-violet{color:#765bb3;background:#f0ecfa}.tone-amber{color:#9a7030;background:#fbf1df}.tone-rose{color:#a45b54;background:#f9ecea}.tone-slate{color:#66767e;background:#edf0f1}.admin-stat-card p{color:#68756c;margin:13px 0 0;font-size:10px;font-weight:600}.admin-stat-card strong{overflow-wrap:anywhere;color:#202c26;font-family:var(--display-font);letter-spacing:-.055em;margin-top:5px;font-size:clamp(20px,2.8vw,27px);font-weight:600;display:block}.admin-stat-card small{color:#8a958e;margin-top:4px;font-size:9px;line-height:1.5;display:block}.admin-content-card{background:#fff;border:1px solid #e2e8e3;border-radius:15px;margin-top:19px;padding:20px}.admin-content-card-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-content-card-heading h3{font-family:var(--display-font);letter-spacing:-.04em;margin:0;font-size:17px;font-weight:600}.admin-local-tag{color:#5b7763;background:#f6faf7;border:1px solid #dfe8e1;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:700}.admin-snapshot-list{margin:15px 0 0;padding:0;list-style:none;display:grid}.admin-snapshot-list li{border-top:1px solid #edf0ed;justify-content:space-between;align-items:center;gap:18px;padding:12px 0;display:flex}.admin-snapshot-list span{color:#77837b;font-size:10px}.admin-snapshot-list strong{color:#46564c;text-align:right;text-overflow:ellipsis;font-size:10px;font-weight:600;overflow:hidden}.admin-project-workspace,.admin-skill-workspace{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:15px;display:grid}.admin-profile-workspace{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:15px;display:grid}.admin-profile-preview-card{background:#fafcfb;border:1px solid #e8ede9;border-radius:13px;margin-top:19px;padding:18px}.admin-profile-avatar{width:44px;height:44px;color:var(--accent-dark);background:#edf5ef;border:1px solid #dfe8e1;border-radius:13px;place-items:center;display:grid}.admin-profile-preview-card h4{overflow-wrap:anywhere;color:#29362e;font-family:var(--display-font);letter-spacing:-.045em;margin:15px 0 0;font-size:19px;font-weight:600}.admin-profile-preview-title{color:#66736b;align-items:flex-start;gap:7px;margin:7px 0 0;font-size:10px;line-height:1.6;display:flex}.admin-profile-preview-title svg{color:var(--accent);flex:none;margin-top:1px}.admin-profile-details{border-top:1px solid #e8ede9;gap:11px;margin:18px 0 0;padding:15px 0 0;list-style:none;display:grid}.admin-profile-details li{color:#617067;align-items:flex-start;gap:8px;min-width:0;font-size:9px;line-height:1.6;display:flex}.admin-profile-details svg{color:var(--accent);flex:none;margin-top:1px}.admin-profile-details span{overflow-wrap:anywhere;min-width:0}.admin-profile-validation{color:#a4493d;margin:-4px 0 0;font-size:9px;line-height:1.5}.admin-about-form{gap:15px;display:grid}.admin-about-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:15px;display:grid}.admin-about-copy-fields{gap:13px;margin-top:19px;display:grid}.admin-about-copy-fields textarea{resize:vertical;white-space:pre-line;min-height:115px}.admin-about-highlight-list{gap:7px;margin-top:17px;display:grid}.admin-about-highlight-option{color:#68756c;cursor:pointer;text-align:left;background:#fff;border:1px solid #e8ede9;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:9px 10px;transition:border-color .16s,background-color .16s;display:flex}.admin-about-highlight-option:hover,.admin-about-highlight-option.is-selected{background:#f7faf7;border-color:#b7d0c0}.admin-about-highlight-option>span{gap:4px;min-width:0;display:grid}.admin-about-highlight-option small{color:#7b8780;font-size:8px;font-weight:700}.admin-about-highlight-option strong{color:#344239;text-overflow:ellipsis;font-size:9px;font-weight:700;overflow:hidden}.admin-about-highlight-option>svg{flex:none}.admin-about-highlight-fields{border-top:1px solid #edf0ed;gap:12px;margin-top:15px;padding-top:14px;display:grid}.admin-about-highlight-fields .admin-local-tag{width:fit-content}.admin-about-preview{background:#fff;border:1px solid #e2e8e3;border-radius:15px;padding:19px}.admin-about-preview-copy{gap:10px;margin-top:16px;display:grid}.admin-about-preview-copy p{color:#68756c;white-space:pre-line;margin:0;font-size:10px;line-height:1.7}.admin-about-preview-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.admin-about-preview-highlights article{background:#fafcfb;border:1px solid #e8ede9;border-radius:11px;min-width:0;padding:12px}.admin-about-preview-highlights article>span{color:#738078;font-size:8px;font-weight:700}.admin-about-preview-highlights h4{overflow-wrap:anywhere;color:#344239;font-family:var(--display-font);margin:6px 0 0;font-size:11px;font-weight:600}.admin-about-preview-highlights p{color:#758178;margin:5px 0 0;font-size:9px;line-height:1.6}.admin-about-form-footer{flex-wrap:wrap;align-items:center;gap:10px;padding-top:3px;display:flex}.admin-about-validation{color:#a4493d;flex-basis:100%;margin:0;font-size:9px;line-height:1.5}.admin-record-tabs{flex-wrap:wrap;gap:7px;margin-bottom:15px;display:flex}.admin-record-tabs button{color:#647168;cursor:pointer;background:#fff;border:1px solid #dfe7e1;border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:9px;font-weight:700;display:inline-flex}.admin-record-tabs button.is-selected{color:var(--accent-dark);background:#edf5ef;border-color:#b7d0c0}.admin-record-workspace{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:start;gap:15px;display:grid}.admin-record-list-panel,.admin-record-preview{background:#fff;border:1px solid #e2e8e3;border-radius:15px;min-width:0;padding:19px}.admin-record-list{gap:8px;margin-top:17px;display:grid}.admin-record-item{color:#68756c;cursor:pointer;text-align:left;background:#fff;border:1px solid #e8ede9;border-radius:11px;gap:5px;min-width:0;padding:11px;transition:border-color .16s,background-color .16s;display:grid}.admin-record-item:hover,.admin-record-item.is-selected{background:#f7faf7;border-color:#b7d0c0}.admin-record-item strong{color:#344239;text-overflow:ellipsis;font-size:10px;font-weight:700;overflow:hidden}.admin-record-item span,.admin-record-item small{color:#7b8780;font-size:9px;line-height:1.5}.admin-record-date-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-record-current{color:#58665d;cursor:pointer;align-items:center;gap:7px;width:fit-content;font-size:9px;display:inline-flex}.admin-record-current input{width:14px;height:14px;accent-color:var(--accent-dark);margin:0}.admin-record-preview{margin-top:15px}.admin-record-preview-card{background:#fafcfb;border:1px solid #e8ede9;border-radius:12px;margin-top:16px;padding:16px}.admin-record-preview-card h4{overflow-wrap:anywhere;color:#29362e;font-family:var(--display-font);letter-spacing:-.04em;margin:0;font-size:16px;font-weight:600}.admin-record-preview-card>p{color:#627067;margin:6px 0 0;font-size:10px}.admin-record-preview-meta{flex-wrap:wrap;gap:8px 18px;margin-top:12px;display:flex}.admin-record-preview-meta span{color:#748078;align-items:flex-start;gap:6px;min-width:0;font-size:9px;line-height:1.5;display:inline-flex}.admin-record-preview-meta svg{color:var(--accent);flex:none;margin-top:1px}.admin-record-preview-columns{border-top:1px solid #e8ede9;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:16px;margin-top:17px;padding-top:15px;display:grid}.admin-record-preview-columns>div>strong{color:#58665d;align-items:center;gap:6px;font-size:9px;display:inline-flex}.admin-record-preview-columns ul{color:#6f7c73;gap:7px;margin:9px 0 0;padding-left:15px;font-size:9px;line-height:1.6;display:grid}.admin-record-validation{color:#a4493d;margin:12px 0 0;font-size:9px;line-height:1.5}.admin-record-empty{color:#7b8780;margin:17px 0 0;font-size:10px}.admin-resume-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:15px;display:grid}.admin-resume-notice{color:#765a2c;background:#fffaf0;border:1px solid #eedfbe;border-radius:10px;align-items:flex-start;gap:8px;margin-top:16px;padding:11px;display:flex}.admin-resume-notice svg{flex:none;margin-top:1px}.admin-resume-notice p{margin:0;font-size:9px;line-height:1.6}.admin-resume-url-note{color:#7b8780;font-size:8px;line-height:1.5}.admin-resume-validation{color:#a4493d;margin:-4px 0 0;font-size:9px;line-height:1.5}.admin-resume-preview-card{background:#fafcfb;border:1px solid #e8ede9;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;margin-top:19px;padding:14px;display:flex}.admin-resume-file-icon{width:42px;height:42px;color:var(--accent-dark);background:#fff;border:1px solid #e3e9e4;border-radius:12px;flex:none;place-items:center;display:grid}.admin-resume-file-details{flex:150px;gap:5px;min-width:0;display:grid}.admin-resume-status{color:#8a6c38;align-items:center;gap:6px;font-size:8px;font-weight:700;display:inline-flex}.admin-resume-status>span{background:#c99239;border-radius:50%;width:6px;height:6px}.admin-resume-status.is-configured{color:#4a7658}.admin-resume-status.is-configured>span{background:#4a9b69}.admin-resume-file-details strong{color:#344239;text-overflow:ellipsis;font-size:10px;overflow:hidden}.admin-resume-file-details small{overflow-wrap:anywhere;color:#7b8780;font-size:8px;line-height:1.5}.admin-resume-download-preview{color:#87918a;cursor:not-allowed;background:#f0f3f1;border:1px solid #dfe7e1;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:8px;font-weight:700;display:inline-flex}.admin-resume-download-preview:disabled{opacity:1}.admin-message-connection{background:#fffaf0;border:1px solid #eedfbe;border-radius:15px;align-items:flex-start;gap:14px;padding:18px;display:flex}.admin-message-connection-icon{color:#806334;background:#fff;border:1px solid #f0dfc0;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.admin-message-connection-copy{min-width:0}.admin-message-connection-status{color:#806334;align-items:center;gap:6px;font-size:8px;font-weight:700;display:inline-flex}.admin-message-connection-status>span{background:#c99239;border-radius:50%;width:6px;height:6px}.admin-message-connection h3{color:#3d3425;font-family:var(--display-font);letter-spacing:-.035em;margin:7px 0 0;font-size:16px;font-weight:600}.admin-message-connection p{color:#765f3c;margin:6px 0 0;font-size:9px;line-height:1.65}.admin-message-inbox{background:#fff;border:1px solid #e2e8e3;border-radius:15px;margin-top:15px;padding:19px}.admin-message-inbox-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.admin-message-empty-state{text-align:center;background:#fafcfb;border:1px dashed #dfe7e1;border-radius:13px;justify-items:center;margin-top:17px;padding:34px 18px;display:grid}.admin-message-empty-icon{width:46px;height:46px;color:var(--accent-dark);background:#edf5ef;border-radius:14px;place-items:center;display:grid}.admin-message-empty-state h4{color:#344239;font-family:var(--display-font);letter-spacing:-.03em;margin:13px 0 0;font-size:14px;font-weight:600}.admin-message-empty-state p{color:#748078;max-width:470px;margin:7px 0 0;font-size:9px;line-height:1.65}.admin-message-empty-state a{color:var(--accent-dark);text-underline-offset:3px;margin-top:13px;font-size:9px;font-weight:700;text-decoration:underline}.admin-message-empty-state a:hover{color:#254d39}.admin-message-preview-note{color:#66736b;background:#f7faf8;border:1px solid #dfe7e1;border-radius:10px;align-items:flex-start;gap:8px;margin-top:14px;padding:11px 12px;display:flex}.admin-message-preview-note svg{flex:none;margin-top:1px}.admin-message-preview-note p{margin:0;font-size:9px;line-height:1.6}.admin-footer-options{border:1px solid #e8ede9;border-radius:10px;flex-wrap:wrap;gap:10px 18px;margin:0;padding:13px;display:flex}.admin-footer-options legend{color:#58665d;padding:0 5px;font-size:9px;font-weight:700}.admin-footer-options label{color:#58665d;cursor:pointer;align-items:center;gap:7px;font-size:9px;display:inline-flex}.admin-footer-options input{width:14px;height:14px;accent-color:var(--accent-dark);margin:0}.admin-footer-preview{background:#fff;border:1px solid #e2e8e3;border-radius:15px;margin-top:15px;padding:19px}.admin-footer-preview-content{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,.7fr));gap:20px;margin-top:19px;display:grid}.admin-footer-preview-identity,.admin-footer-preview-column{min-width:0}.admin-footer-preview-identity>strong{color:#344239;font-family:var(--display-font);font-size:13px;font-weight:600}.admin-footer-preview-identity>p{overflow-wrap:anywhere;color:#748078;margin:6px 0 0;font-size:9px;line-height:1.6}.admin-footer-preview-identity .admin-footer-preview-message{color:#536157;margin-top:11px}.admin-footer-preview-column>strong{color:#344239;font-size:9px;font-weight:700}.admin-footer-preview-column ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.admin-footer-preview-column li{color:#748078;align-items:center;gap:6px;font-size:9px;display:inline-flex}.admin-footer-preview-column li svg{color:var(--accent)}.admin-footer-preview-bottom{color:#859088;border-top:1px solid #edf0ed;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:18px;padding-top:12px;font-size:8px;display:flex}.admin-project-list,.admin-project-editor,.admin-skill-list,.admin-editor-panel{background:#fff;border:1px solid #e2e8e3;border-radius:15px;min-width:0;padding:19px}.admin-project-section-heading,.admin-editor-section-heading{align-items:center;gap:11px;display:flex}.admin-project-section-icon,.admin-editor-section-icon{width:35px;height:35px;color:var(--accent-dark);background:#edf5ef;border-radius:11px;flex:none;place-items:center;display:grid}.admin-project-section-heading h3,.admin-editor-section-heading h3{color:#29362e;font-family:var(--display-font);letter-spacing:-.035em;margin:0;font-size:15px;font-weight:600}.admin-project-section-heading p,.admin-editor-section-heading p{color:#7b8780;margin:4px 0 0;font-size:9px;line-height:1.5}.admin-skill-category-list{gap:8px;margin-top:17px;display:grid}.admin-skill-category{color:#68756c;cursor:pointer;text-align:left;background:#fff;border:1px solid #e8ede9;border-radius:12px;grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:9px;min-width:0;padding:10px;transition:border-color .16s,background-color .16s;display:grid}.admin-skill-category:hover,.admin-skill-category.is-selected{background:#f7faf7;border-color:#b7d0c0}.admin-skill-category-icon{width:30px;height:30px;color:var(--accent-dark);background:#edf5ef;border-radius:9px;place-items:center;display:grid}.admin-skill-category-copy{gap:4px;min-width:0;display:grid}.admin-skill-category-copy strong{color:#344239;text-overflow:ellipsis;font-size:10px;font-weight:700;overflow:hidden}.admin-skill-category-copy small{color:#7b8780;font-size:9px}.admin-editor-field{gap:6px;min-width:0;display:grid}.admin-skill-preview{background:#fafcfb;border:1px solid #edf0ed;border-radius:10px;padding:12px}.admin-skill-preview>p{color:#68756c;margin:0;font-size:9px;font-weight:700}.admin-skill-preview ul{flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.admin-skill-preview li{color:#526057;background:#fff;border:1px solid #e2e9e3;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:9px;display:inline-flex}.admin-skill-preview li svg{color:var(--accent)}.admin-skill-empty{color:#7b8780;margin-top:8px;font-size:9px;display:block}.admin-project-form,.admin-editor-form{gap:13px;margin-top:19px;display:grid}.admin-project-items{gap:8px;margin-top:17px;display:grid}.admin-project-item{min-width:0;color:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #e8ede9;border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px;transition:border-color .16s,background-color .16s;display:grid}.admin-project-item:hover,.admin-project-item.is-selected{background:#f7faf7;border-color:#b7d0c0}.admin-project-item-icon{color:#68756c;background:#f1f3f1;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.admin-project-item-copy{gap:4px;min-width:0;display:grid}.admin-project-item-copy strong{color:#344239;text-overflow:ellipsis;font-size:10px;font-weight:700;overflow:hidden}.admin-project-item-copy small{color:#7b8780;font-size:9px}.admin-project-status{color:#77837b;white-space:nowrap;border:1px solid #e5e9e6;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:700}.admin-project-status.is-published{color:#4a7658;background:#f1f8f3;border-color:#d7e8dc}.admin-project-field{gap:6px;min-width:0;display:grid}.admin-project-field>span,.admin-editor-field>span{color:#58665d;font-size:9px;font-weight:700}.admin-project-field input,.admin-project-field textarea,.admin-editor-field input,.admin-editor-field textarea{color:#344239;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #dfe7e1;border-radius:9px;outline:none;padding:10px 11px;font-size:10px;line-height:1.6;transition:border-color .16s}.admin-project-field textarea,.admin-editor-field textarea{resize:vertical;min-height:90px}.admin-editor-field textarea{min-height:124px}.admin-project-field input:focus,.admin-project-field textarea:focus,.admin-editor-field input:focus,.admin-editor-field textarea:focus{border-color:#83aa90}.admin-project-options{flex-wrap:wrap;gap:11px 18px;display:flex}.admin-project-options label{color:#58665d;cursor:pointer;align-items:center;gap:7px;font-size:9px;display:inline-flex}.admin-project-options input{width:14px;height:14px;accent-color:var(--accent-dark);margin:0}.admin-project-form-footer,.admin-editor-form-footer{flex-wrap:wrap;align-items:center;gap:10px;padding-top:3px;display:flex}.admin-project-save,.admin-editor-save{border:1px solid var(--accent-dark);background:var(--accent-dark);color:#fff;cursor:pointer;border-radius:999px;min-height:36px;padding:0 13px;font-size:9px;font-weight:700;transition:background-color .16s}.admin-project-save:hover,.admin-editor-save:hover{background:#254d39}.admin-project-save-message,.admin-editor-save-message{color:#4a7658;font-size:9px;line-height:1.5}.admin-project-disclaimer,.admin-editor-disclaimer{color:#7b8780;margin:14px 0 0;font-size:9px;line-height:1.6}.admin-skill-validation{color:#a4493d;margin:-4px 0 0;font-size:9px;line-height:1.5}.admin-project-empty{color:#7b8780;margin:18px 0 0;font-size:10px}@media (width<=1050px){.page-shell{width:min(var(--content-width), calc(100% - 48px))}.nav-links{gap:16px}.nav-link{font-size:12px}.hero{grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:45px}}@media (width<=860px){.navbar{min-height:74px}.nav-links{border-bottom:1px solid var(--line);background:#f5f7f5fa;align-items:stretch;gap:0;padding:8px 24px 18px;display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;box-shadow:0 16px 22px #17231f0d}.nav-links.is-open{flex-direction:column;animation:.18s ease-out both mobile-nav-in;display:flex}.nav-link{border-bottom:1px solid #e7ece8;padding:13px 4px;font-size:14px}.nav-link:last-child{border-bottom:0}.nav-link.is-active:after{width:2px;height:16px;bottom:12px;left:-7px;right:auto}.menu-toggle{display:inline-flex}.hero{grid-template-columns:1fr;gap:48px;min-height:auto;padding-block:72px 92px}.hero-copy{max-width:700px}.hero-visual{min-height:400px}.about-section{padding-block:88px 96px}.about-layout{grid-template-columns:1fr;gap:38px}.skills-section{padding-block:88px 96px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-section,.experience-section,.education-section,.resume-section,.contact-section{padding-block:88px 96px}.footer-main{grid-template-columns:minmax(0,1.1fr) minmax(180px,.9fr);gap:38px}.footer-identity{grid-column:1/-1}.footer-connect{grid-column:2}.admin-shell{grid-template-columns:215px minmax(0,1fr)}.featured-project{grid-template-columns:1fr}.project-artwork{order:-1;min-height:420px}.about-copy{max-width:660px}.visual-orbit{width:min(100%,380px)}.hero-scroll{bottom:27px}}@keyframes mobile-nav-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (width<=540px){.page-shell{width:calc(100% - 40px)}.navbar{min-height:68px}.brand{font-size:17px}.brand-mark{width:33px;height:33px}.resume-button{width:42px;min-height:42px;padding:0;font-size:0}.resume-button svg{width:17px}.menu-toggle{width:42px;height:42px}.nav-links{padding-left:20px;padding-right:20px}.hero{gap:27px;padding-top:58px}.eyebrow{margin-bottom:20px;font-size:10px}.hero-title{font-size:clamp(46px,12vw,63px)}.role-line{min-height:50px;margin-top:18px;font-size:18px}.hero-description{margin-top:14px;font-size:14px;line-height:1.75}.hero-actions{gap:10px;margin-top:25px}.button-primary,.button-secondary{min-height:47px;padding-inline:16px;font-size:12px}.social-links{margin-top:23px}.hero-visual{min-height:335px}.about-section{padding-block:74px 82px}.about-layout{gap:30px}.about-title{font-size:clamp(38px,10vw,49px)}.about-introduction{margin-top:18px;font-size:14px}.about-highlights{grid-template-columns:1fr;gap:11px}.skills-section{padding-block:74px 82px}.skills-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.skills-title{font-size:clamp(35px,9.5vw,46px)}.skills-description{max-width:100%;font-size:13px}.skills-grid{grid-template-columns:1fr;gap:11px}.projects-section,.experience-section,.education-section,.resume-section,.contact-section{padding-block:74px 82px}.site-footer{padding-top:40px}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:32px}.footer-identity{grid-column:1/-1}.footer-connect{grid-column:auto}.admin-shell{grid-template-columns:1fr}.admin-sidebar{border-bottom:1px solid #e4e9e5;border-right:0;grid-template-columns:minmax(0,1fr) auto;gap:10px;height:auto;padding:12px 18px;display:grid;position:static}.admin-nav-label,.admin-sidebar-footer{display:none}.admin-navigation{grid-column:1/-1}.admin-nav-link{min-height:37px}.admin-header{min-height:68px;padding-inline:18px}.admin-preview-warning{margin:15px 18px 0}.admin-content{padding:22px 18px 36px}.admin-page-heading{flex-direction:column;align-items:flex-start}.admin-project-workspace,.admin-skill-workspace,.admin-about-workspace,.admin-profile-workspace,.admin-record-workspace,.admin-resume-workspace{grid-template-columns:1fr}.admin-footer-preview-content{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-footer-preview-identity{grid-column:1/-1}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admin-stat-card{padding:13px}.admin-stat-card strong{font-size:clamp(18px,6vw,24px)}.admin-content-card{padding:16px}.admin-snapshot-list li{flex-direction:column;align-items:flex-start;gap:5px}.admin-project-item{grid-template-columns:30px minmax(0,1fr)}.admin-about-preview-highlights,.admin-record-date-fields,.admin-record-preview-columns{grid-template-columns:1fr}.admin-project-status{grid-column:2;justify-self:start}.admin-snapshot-list strong{text-align:left}.admin-project-list,.admin-project-editor,.admin-skill-list,.admin-editor-panel{padding:15px}.experience-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.experience-title{font-size:clamp(35px,9.5vw,46px)}.experience-description{max-width:100%}.experience-entry{grid-template-columns:1fr;gap:8px}.experience-period{align-items:center;padding-top:0}.experience-period:after{display:none}.experience-period p{margin-top:0}.experience-card{padding:21px 19px}.experience-responsibilities{margin-top:20px;padding-top:18px}.education-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.education-title{font-size:clamp(35px,9.5vw,46px)}.education-description{max-width:100%}.education-card{flex-direction:column;align-items:flex-start;gap:18px;padding:20px 18px}.resume-card{grid-template-columns:1fr;gap:27px;padding:24px 20px}.contact-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.contact-title{font-size:clamp(35px,9.5vw,46px)}.contact-description{max-width:100%}.contact-layout{grid-template-columns:1fr;gap:14px}.contact-info,.contact-form-card{padding:21px 19px}.contact-field-grid{grid-template-columns:1fr}.contact-field-wide{grid-column:auto}.resume-card-actions{align-items:flex-start}.resume-card-copy h2{font-size:34px}.education-card-main{gap:13px}.education-icon{border-radius:13px;width:42px;height:42px}.education-card h3{font-size:20px}.education-period{min-height:39px;padding-inline:12px;font-size:10px}.projects-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.projects-title{font-size:clamp(35px,9.5vw,46px)}.projects-description{max-width:100%;font-size:13px}.project-copy{padding:22px 19px}.project-copy h3{font-size:29px}.project-artwork{min-height:330px;padding:26px 18px 42px}.project-artwork:before{width:310px}.project-artwork:after{width:250px}.store-content{padding:12px}.store-hero{min-height:125px;padding:15px}.product-shape{height:55px}.artwork-caption{font-size:8px;bottom:12px;right:12px}.skill-category{min-height:0;padding:18px}.skill-list{margin-top:18px}.highlight-card{min-height:0;padding:18px}.profile-card{border-radius:24px;width:min(78vw,300px);min-height:310px;padding:22px}.monogram{font-size:90px}.chip-stack{top:12%;right:-1%}.floating-chip{padding:9px 11px;font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
