.navbar{--nav-height: var(--nav-offset, 58px);--nav-max-width: var(--max-width);--nav-gutter: var(--gutter);--nav-side-btn: 44px;--nav-rail: 200px;--nav-accent: var(--accent);--nav-bg-solid: color-mix(in srgb, var(--bg) 78%, #000000 22%);--nav-bg: color-mix(in srgb, var(--bg) 62%, transparent);--nav-bg-2: color-mix(in srgb, var(--bg) 54%, transparent);--nav-border: color-mix(in srgb, var(--border) 72%, transparent);--nav-hairline: color-mix(in srgb, #ffffff 7%, transparent);--nav-accent-hairline: color-mix(in srgb, var(--nav-accent) 18%, transparent);--nav-text: var(--text);--nav-text-strong: var(--text-strong);--nav-link-size: clamp(15px, 1.05vw, 18px);--nav-link-radius: 10px;--nav-link-pad-y: 6px;--nav-link-pad-x: 14px;--nav-link-min-height: 44px;--nav-link-weight: 520;--nav-link-weight-active: 650;--nav-letter-spacing: .15px;--nav-underline-height: 1.5px;--nav-underline-inset: var(--nav-link-pad-x);--nav-underline-offset: 2px;--nav-hover-underline-opacity: .36;--nav-focus-ring: color-mix(in srgb, var(--nav-accent) 64%, transparent);--nav-shadow: 0 12px 26px -22px rgba(0, 0, 0, .78);--nav-scrim: color-mix(in srgb, var(--bg) 82%, transparent);--nav-cta-bg: color-mix(in srgb, var(--bg) 58%, transparent);--nav-cta-border: color-mix(in srgb, var(--nav-accent) 30%, var(--border));--nav-cta-bg-hover: color-mix(in srgb, var(--bg) 48%, transparent);--nav-cta-border-hover: color-mix(in srgb, var(--nav-accent) 44%, var(--border));position:fixed;top:0;left:0;width:100%;height:var(--nav-height);z-index:1000;display:flex;align-items:center;background:var(--nav-bg-solid);border-bottom:1px solid var(--nav-border);box-shadow:var(--nav-shadow);isolation:isolate}.navbar:before{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--nav-hairline);pointer-events:none;opacity:.9}.navbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--nav-accent-hairline),transparent);pointer-events:none;opacity:.9}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.navbar,.navbar.is-translucent{background:var(--nav-bg-2);-webkit-backdrop-filter:saturate(150%) blur(12px);backdrop-filter:saturate(150%) blur(12px)}}:root[data-theme=light] .navbar{--nav-scrim: color-mix(in srgb, var(--text-strong) 14%, transparent);--nav-bg-solid: color-mix(in srgb, #ffffff 78%, transparent);--nav-bg: color-mix(in srgb, #ffffff 70%, transparent);--nav-bg-2: color-mix(in srgb, #ffffff 64%, transparent);--nav-cta-bg: color-mix(in srgb, var(--nav-accent) 10%, transparent);--nav-cta-border: color-mix(in srgb, var(--nav-accent) 18%, transparent);--nav-cta-bg-hover: color-mix(in srgb, var(--nav-accent) 14%, transparent);--nav-cta-border-hover: color-mix(in srgb, var(--nav-accent) 28%, transparent);--nav-shadow: 0 12px 22px -22px rgba(2, 6, 23, .28);--nav-hairline: rgba(2, 6, 23, .1);--nav-accent-hairline: color-mix(in srgb, var(--nav-accent) 22%, transparent)}.nav-scrim{display:none}@media(max-width:768px){.nav-scrim{display:block;position:fixed;left:0;right:0;top:var(--nav-height);bottom:0;background:var(--nav-scrim);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(2px) saturate(120%);backdrop-filter:blur(2px) saturate(120%);z-index:0;transition:opacity .18s ease}.navbar--menu-open .nav-scrim{opacity:1;pointer-events:auto}}.nav-container{position:relative;z-index:1;width:100%;max-width:var(--nav-max-width);height:100%;margin:0 auto;padding:0 var(--nav-gutter);display:grid;grid-template-columns:var(--nav-rail) minmax(0,1fr) var(--nav-rail);align-items:center}.nav-left,.nav-right{height:100%;display:flex;align-items:center}.nav-left{justify-self:start;justify-content:flex-end;padding-right:10px}.nav-right{justify-self:end;justify-content:flex-start;padding-left:10px;gap:10px}.nav-links{grid-column:2;justify-self:center;height:100%;min-width:0}@media(min-width:769px){.nav-links{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;width:min(760px,100%);align-items:center;gap:0}.nav-item{height:100%;display:flex;align-items:center}.nav-item a{width:100%;justify-content:center}}.nav-item a{color:var(--nav-text);text-decoration:none;font-size:var(--nav-link-size);font-weight:var(--nav-link-weight);letter-spacing:var(--nav-letter-spacing);line-height:1;min-height:var(--nav-link-min-height);padding:var(--nav-link-pad-y) var(--nav-link-pad-x);border-radius:var(--nav-link-radius);display:inline-flex;align-items:center;justify-content:center;position:relative;border:1px solid transparent;transition:color .18s ease,opacity .18s ease,background-color .18s ease,border-color .18s ease}@media(min-width:769px){.nav-item a:hover{color:var(--nav-text-strong);background-color:color-mix(in srgb,#ffffff 5%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 18%,transparent)}}.nav-item a:before{content:"";position:absolute;left:var(--nav-underline-inset);right:var(--nav-underline-inset);bottom:var(--nav-underline-offset);height:var(--nav-underline-height);border-radius:999px;background:var(--nav-accent);opacity:0;transform:scaleX(.92);transform-origin:center;transition:opacity .18s ease,transform .18s ease}.nav-item a:hover:before{opacity:var(--nav-hover-underline-opacity);transform:scaleX(1)}.nav-item a:active{opacity:.92}.nav-item a[aria-current=page],.nav-item a.is-active{color:var(--nav-text-strong);font-weight:var(--nav-link-weight-active)}@media(min-width:769px){.nav-item a[aria-current=page],.nav-item a.is-active{background-color:color-mix(in srgb,var(--nav-accent) 10%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 22%,transparent)}}.nav-item a[aria-current=page]:after,.nav-item a.is-active:after{content:"";position:absolute;left:var(--nav-underline-inset);right:var(--nav-underline-inset);bottom:var(--nav-underline-offset);height:var(--nav-underline-height);border-radius:999px;background:var(--nav-accent);opacity:.94}.nav-item a[aria-current=page]:before,.nav-item a.is-active:before{opacity:0}.nav-item--cta a{width:auto;justify-content:center;padding:8px 14px;min-height:38px;border-radius:999px;background:var(--nav-cta-bg);border-color:var(--nav-cta-border);color:var(--nav-text-strong);font-weight:650;box-shadow:0 12px 26px -24px #000000b8;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease,color .18s ease}.nav-item--cta a:before,.nav-item--cta a:after{content:none!important}.nav-item--cta a:hover{background:var(--nav-cta-bg-hover);border-color:var(--nav-cta-border-hover);transform:translateY(-1px);box-shadow:0 16px 34px -28px #000000d1,0 0 0 1px color-mix(in srgb,var(--nav-accent) 10%,transparent)}.nav-item--cta a:active{transform:translateY(0);opacity:.94}.nav-item--cta a[aria-current=page]{border-color:color-mix(in srgb,var(--nav-accent) 58%,transparent);background:color-mix(in srgb,var(--nav-accent) 18%,transparent)}.theme-toggle,.hamburger{width:var(--nav-side-btn);height:var(--nav-side-btn);padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--nav-link-radius);background:color-mix(in srgb,#ffffff 3%,transparent);border:1px solid color-mix(in srgb,#ffffff 6%,transparent);box-sizing:border-box;cursor:pointer;transition:color .18s ease,background-color .18s ease,border-color .18s ease,opacity .18s ease}.theme-toggle{color:var(--nav-text)}.theme-toggle:hover{color:var(--nav-text-strong);background-color:color-mix(in srgb,#ffffff 6%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 18%,transparent)}.theme-toggle:active{opacity:.92}.hamburger{color:var(--nav-text-strong);display:none}.hamburger:hover{background-color:color-mix(in srgb,#ffffff 6%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 18%,transparent)}.hamburger:active{opacity:.92}.nav-item a:focus-visible,.hamburger:focus-visible,.theme-toggle:focus-visible,.nav-item--cta a:focus-visible{outline:2px solid var(--nav-focus-ring);outline-offset:2px}@media(max-width:768px){.nav-container{grid-template-columns:var(--nav-side-btn) minmax(0,1fr) var(--nav-side-btn)}.nav-left{padding-right:0;justify-content:center}.nav-right{padding-left:0;justify-content:flex-end}.hamburger{display:inline-flex}.hamburger{background:transparent;border-color:transparent}.nav-links{display:none}.nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:6px;position:fixed;top:var(--nav-height);left:0;right:0;padding:12px var(--nav-gutter);background:var(--nav-bg-solid);border-top:1px solid var(--nav-border);border-bottom-left-radius:14px;border-bottom-right-radius:14px;box-shadow:0 18px 34px #0000007a;z-index:2}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.nav-links.open{background:var(--nav-bg-2);-webkit-backdrop-filter:saturate(150%) blur(12px);backdrop-filter:saturate(150%) blur(12px)}}.nav-item{height:auto;width:100%}.nav-item a{width:100%;justify-content:flex-start;font-size:18px;padding:12px;border-radius:10px;border-color:color-mix(in srgb,var(--nav-accent) 14%,transparent);background-color:color-mix(in srgb,#ffffff 4%,transparent)}.nav-item a:hover{border-color:color-mix(in srgb,var(--nav-accent) 24%,transparent)}.nav-item a:before,.nav-item a[aria-current=page]:after,.nav-item a.is-active:after{left:12px;right:12px;bottom:4px}.nav-item--theme{margin-top:6px;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--nav-border) 70%,transparent)}.theme-toggle--in-menu{width:100%;height:44px;justify-content:flex-start;padding:0 12px;border-radius:10px;background:transparent;border:1px solid color-mix(in srgb,var(--nav-accent) 14%,transparent)}.theme-toggle--in-menu:hover{background-color:color-mix(in srgb,#ffffff 6%,transparent);border-color:color-mix(in srgb,var(--nav-accent) 24%,transparent)}}@media(prefers-reduced-motion:reduce){.nav-item a,.nav-item a:before,.hamburger,.theme-toggle,.nav-scrim,.nav-item--cta a{transition:none}.nav-item a:before{transform:none}.nav-item--cta a:hover{transform:none}}.career-timeline-page-container{width:100%;max-width:var(--content-max, 1000px);margin:0 auto;padding-inline:clamp(16px,2vw,28px)}.career-timeline-card{--ct-accent: var(--accent);--ct-measure: 74ch;--ct-content-max: min(var(--ct-measure), 860px);--ct-tab-height: 44px;--ct-tab-font: 14px;--ct-tab-weight: 500;--ct-tab-weight-active: 650;--ct-tab-pad-x: 14px;--ct-underline-h: 2px;--ct-underline-inset: 14px;--ct-underline-offset: 6px;--ct-hover-underline-opacity: .34;--ct-tab-hover-bg: color-mix(in srgb, var(--text-strong) 6%, transparent);--ct-card-pad: 22px;--ct-card-radius: var(--r-lg, 18px);--ct-divider: color-mix(in srgb, var(--border) 60%, transparent);--ct-mask-ink: #000;--ct-glass-top: color-mix(in srgb, #000 78%, var(--surface-1) 22%);--ct-glass-bot: color-mix(in srgb, #000 86%, var(--surface-2) 14%);--ct-card-border: color-mix(in srgb, var(--border) 52%, transparent);--ct-ring-neutral: 0 0 0 1px color-mix(in srgb, var(--border) 16%, transparent);--ct-ring-accent: 0 0 0 1px color-mix(in srgb, var(--ct-accent) 14%, transparent);--ct-card-shadow: var(--shadow-edge, 0 12px 20px -20px rgba(0, 0, 0, .8));width:100%;padding:var(--ct-card-pad);border-radius:var(--ct-card-radius);background:linear-gradient(180deg,var(--ct-glass-top),var(--ct-glass-bot));border:1px solid var(--ct-card-border);box-shadow:var(--ct-card-shadow),var(--ct-ring-neutral),var(--ct-ring-accent);color:var(--text);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(10px) saturate(130%);backdrop-filter:blur(10px) saturate(130%)}.career-timeline-card:before{content:"";position:absolute;left:14px;right:14px;top:10px;height:1px;border-radius:999px;background:color-mix(in srgb,var(--ct-accent) 22%,transparent);opacity:.55;pointer-events:none}.career-timeline-card:after{content:"";position:absolute;left:14px;right:14px;bottom:10px;height:1px;background:color-mix(in srgb,var(--ct-accent) 14%,transparent);opacity:.28;pointer-events:none}:root[data-theme=light] .career-timeline-card{--ct-glass-top: color-mix(in srgb, #ffffff 86%, var(--surface-1) 14%);--ct-glass-bot: color-mix(in srgb, #ffffff 90%, var(--surface-2) 10%);-webkit-backdrop-filter:blur(8px) saturate(120%);backdrop-filter:blur(8px) saturate(120%)}.bg-panel--timeline .career-timeline-page-container{max-width:100%;margin:0;padding-inline:0}.bg-panel--timeline .career-timeline-card{padding:0;border-radius:0;background:transparent;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible}.bg-panel--timeline .career-timeline-card:before,.bg-panel--timeline .career-timeline-card:after{display:none}.career-timeline-tabs{display:flex;align-items:center;justify-content:flex-start;gap:var(--ct-tabs-gap, 14px);overflow-x:auto;overflow-y:hidden;padding-bottom:8px;margin:0 auto 12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-padding-inline:6px;scrollbar-width:none;max-width:var(--ct-content-max)}.career-timeline-tabs::-webkit-scrollbar{height:0}@supports ((-webkit-mask-image: linear-gradient(var(--ct-mask-ink),var(--ct-mask-ink))) or (mask-image: linear-gradient(var(--ct-mask-ink),var(--ct-mask-ink)))){.career-timeline-tabs{-webkit-mask-image:linear-gradient(90deg,transparent 0,var(--ct-mask-ink) 18px,var(--ct-mask-ink) calc(100% - 18px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,var(--ct-mask-ink) 18px,var(--ct-mask-ink) calc(100% - 18px),transparent 100%)}}.career-timeline-tab{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:var(--ct-tab-height);padding-inline:var(--ct-tab-pad-x);border-radius:10px;background:transparent;font-size:var(--ct-tab-font);font-weight:var(--ct-tab-weight);letter-spacing:.15px;white-space:nowrap;color:color-mix(in srgb,var(--text-strong) 82%,var(--muted));scroll-snap-align:start;position:relative;transition:color .18s ease,background-color .18s ease,opacity .18s ease}.career-timeline-tab *{color:inherit}.career-timeline-tab:before{content:"";position:absolute;left:var(--ct-underline-inset);right:var(--ct-underline-inset);bottom:var(--ct-underline-offset);height:var(--ct-underline-h);border-radius:999px;background:var(--ct-accent);opacity:0;transform:scaleX(.92);transform-origin:center;transition:opacity .18s ease,transform .18s ease}.career-timeline-tab:hover{color:var(--text-strong);background:var(--ct-tab-hover-bg)}.career-timeline-tab:hover:before{opacity:var(--ct-hover-underline-opacity);transform:scaleX(1)}.career-timeline-tab.is-active{color:var(--text-strong);font-weight:var(--ct-tab-weight-active);background:transparent}.career-timeline-tab.is-active:after{content:"";position:absolute;left:var(--ct-underline-inset);right:var(--ct-underline-inset);bottom:var(--ct-underline-offset);height:var(--ct-underline-h);border-radius:999px;background:var(--ct-accent);opacity:.95}.career-timeline-tab.is-active:before{opacity:0}.career-timeline-tab:focus-visible{outline:2px solid color-mix(in srgb,var(--ct-accent) 55%,transparent);outline-offset:3px;border-radius:12px}.career-timeline-tab:active{opacity:.92}.career-timeline-subtabs{margin-top:-6px;margin-bottom:14px;--ct-tab-height: 36px;--ct-tab-font: 13px;--ct-tab-weight: 500;--ct-tab-weight-active: 500;--ct-tab-pad-x: 10px;--ct-underline-h: 2px;--ct-underline-inset: 10px;--ct-underline-offset: 5px;--ct-hover-underline-opacity: .2;--ct-tab-hover-bg: color-mix(in srgb, var(--text-strong) 4%, transparent);color:color-mix(in srgb,var(--text-strong) 62%,var(--muted))}.career-timeline-subtab{color:color-mix(in srgb,var(--text-strong) 62%,var(--muted));letter-spacing:.1px}.career-timeline-subtab:hover{color:color-mix(in srgb,var(--text-strong) 82%,var(--muted))}.career-timeline-subtab.is-active{color:var(--text-strong);font-weight:500}.career-timeline-subtab.is-active:after{opacity:.78}.career-timeline-content{max-width:var(--ct-content-max);margin:0 auto;border-top:1px solid var(--ct-divider);padding-top:18px}.career-timeline-role{margin:0 0 8px;font-size:clamp(1.55rem,2.2vw,2.2rem);line-height:1.12;color:var(--text-strong);letter-spacing:-.01em;text-wrap:balance}.career-timeline-dates{margin:0 0 16px;color:var(--muted);font-size:.98rem}.career-timeline-list{margin:0;padding:0;list-style:none;display:grid;gap:16px}.career-timeline-item{position:relative;padding-left:18px;line-height:1.62;color:var(--text)}.career-timeline-item:before{content:"";position:absolute;left:0;top:.62em;width:4px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--text-strong) 42%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--ct-accent) 12%,transparent)}@media(max-width:768px){.career-timeline-page-container{padding-inline:16px}.career-timeline-card{--ct-card-pad: 18px;--ct-card-radius: var(--r-md, 16px);--ct-tab-font: 13px;--ct-tab-pad-x: 12px}.bg-panel--timeline .career-timeline-card{padding:0;border-radius:0}.career-timeline-tab{min-height:44px}.career-timeline-subtabs{--ct-tab-height: 40px;--ct-tab-font: 13px;--ct-tab-pad-x: 10px;margin-top:-4px;margin-bottom:12px}.career-timeline-content{padding-top:16px}.career-timeline-role{font-size:1.5rem}.career-timeline-tab:before,.career-timeline-tab.is-active:after{bottom:6px;left:10px;right:10px}}@media(prefers-reduced-motion:reduce){.career-timeline-tab,.career-timeline-tab:before{transition:none}.career-timeline-tab:before{transform:none}}.icon-container{--icon-hit: 40px;--icon-radius: 12px;--icon-size: 22px;--rail-radius: 999px;--rail-pad-y: 6px;--rail-pad-x: 10px;--rail-gap: 10px;--rail-bg: color-mix(in srgb, var(--bg) 72%, transparent);--rail-bg-2: color-mix(in srgb, var(--bg) 62%, transparent);--rail-border: color-mix(in srgb, var(--border) 70%, transparent);--rail-accent: color-mix(in srgb, var(--accent) 18%, transparent);display:inline-flex;align-items:center;justify-content:center;gap:var(--rail-gap);padding:var(--rail-pad-y) var(--rail-pad-x);border-radius:var(--rail-radius);background:var(--rail-bg);border:1px solid color-mix(in srgb,var(--rail-border) 78%,var(--rail-accent));box-shadow:0 16px 34px -30px #000000d9,0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent);position:relative;isolation:isolate;flex:0 0 auto;width:auto;inline-size:max-content;max-inline-size:calc(100vw - 32px);max-width:calc(100vw - 32px);white-space:nowrap}@supports (color: color-mix(in srgb,white 50%,black)){.icon-container{background:linear-gradient(180deg,color-mix(in srgb,var(--rail-bg-2) 92%,#ffffff 8%),var(--rail-bg))}.icon-container:before{content:"";position:absolute;left:12px;right:12px;top:0;height:1px;border-radius:999px;background:color-mix(in srgb,var(--accent) 26%,transparent);opacity:.7;pointer-events:none}}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.icon-container{-webkit-backdrop-filter:saturate(150%) blur(10px);backdrop-filter:saturate(150%) blur(10px)}}.contact-icons--compact{--icon-hit: 36px;--icon-radius: 11px;--icon-size: 20px;--rail-pad-y: 4px;--rail-pad-x: 8px;--rail-gap: 8px;box-shadow:0 14px 30px -28px #000000d9,0 0 0 1px color-mix(in srgb,var(--accent) 9%,transparent)}.contact-icons--stack{flex-direction:column;align-items:center;--rail-pad-y: 10px;--rail-pad-x: 8px;--rail-gap: 10px;border-radius:22px;inline-size:max-content}.home-hero__icon-chip .icon-container{--icon-hit: 36px;--icon-radius: 11px;--icon-size: 20px;--rail-pad-y: 4px;--rail-pad-x: 8px;--rail-gap: 8px;box-shadow:0 14px 30px -30px #000000d1,0 0 0 1px color-mix(in srgb,var(--accent) 9%,transparent)}.icon-container a,.contact-icons__link{width:var(--icon-hit);height:var(--icon-hit);display:grid;place-items:center;border-radius:var(--icon-radius);background:transparent;border:1px solid transparent;box-shadow:none;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,background-color .16s ease,border-color .16s ease,opacity .16s ease,color .16s ease}.icon-container a:hover,.contact-icons__link:hover{transform:translateY(-1px);background-color:color-mix(in srgb,#ffffff 4%,transparent);border-color:color-mix(in srgb,var(--accent) 18%,transparent)}.icon-container a:active,.contact-icons__link:active{transform:translateY(0);opacity:.92}.icon-container a:focus-visible,.contact-icons__link:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:3px;border-color:color-mix(in srgb,var(--accent) 26%,transparent);background-color:color-mix(in srgb,var(--accent) 8%,transparent)}@media(hover:none){.icon-container a:hover,.contact-icons__link:hover{transform:none}}.icons{font-size:var(--icon-size);width:1em;height:1em;display:block;line-height:1;color:color-mix(in srgb,var(--text-strong) 92%,transparent);transition:color .16s ease}.icon-container a:hover .icon-linkedin,.icon-container a:focus-visible .icon-linkedin,.contact-icons__link:hover .icon-linkedin,.contact-icons__link:focus-visible .icon-linkedin{color:#0077b5}.icon-container a:hover .icon-email,.icon-container a:focus-visible .icon-email,.contact-icons__link:hover .icon-email,.contact-icons__link:focus-visible .icon-email{color:#0072c6}.icon-container a:hover .icon-credly,.icon-container a:focus-visible .icon-credly,.contact-icons__link:hover .icon-credly,.contact-icons__link:focus-visible .icon-credly{color:#ff6b00}.icon-container a:hover .icon-pdf,.icon-container a:focus-visible .icon-pdf,.contact-icons__link:hover .icon-pdf,.contact-icons__link:focus-visible .icon-pdf{color:red}@media(max-width:600px){.icon-container{--icon-hit: 40px;--icon-size: 22px;--rail-pad-x: 10px;--rail-gap: 10px}.contact-icons--compact,.home-hero__icon-chip .icon-container{--icon-hit: 36px;--icon-size: 20px;--rail-pad-x: 8px;--rail-gap: 8px}}@media(prefers-reduced-motion:reduce){.icon-container a,.contact-icons__link,.icons{transition:none}.icon-container a:hover,.contact-icons__link:hover{transform:none}}.certifications-groups{width:100%;display:flex;flex-direction:column;gap:14px}.certifications-group{width:100%;display:flex;flex-direction:column;gap:10px}.vendor-tabs{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;width:100%;max-width:980px;margin:0 auto;padding:6px 2px 10px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;background:transparent;border:0;border-radius:0;box-shadow:none;mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 70%,rgba(0,0,0,.35)) rgba(255,255,255,.06)}.vendor-tab-container{flex:0 0 auto;display:inline-flex;margin:0}.vendor-tab{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;background:linear-gradient(180deg,#ffffff0f,#0000002e);border:1px solid rgba(255,255,255,.14);color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:.95rem;line-height:1;box-shadow:0 1px #ffffff0f inset,0 8px 16px #0000003d;transition:transform .15s ease,border-color .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}.vendor-tab:hover{transform:translateY(-1px);border-color:#ffffff38;box-shadow:0 1px #ffffff14 inset,0 12px 22px #0000004d}.vendor-tab:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 65%,transparent);outline-offset:2px}.vendor-tab--active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.06)),#00000038);border-color:color-mix(in srgb,var(--accent) 55%,rgba(255,255,255,.16));color:var(--text-strong);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent) inset,0 10px 22px #00000057}.vendor-tabs::-webkit-scrollbar{height:8px}.vendor-tabs::-webkit-scrollbar-track{background:#ffffff0f;border-radius:999px;box-shadow:0 0 0 1px #00000059 inset}.vendor-tabs::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 92%,rgba(255,255,255,.1)),color-mix(in srgb,var(--accent) 72%,rgba(0,0,0,.35)));border:2px solid rgba(0,0,0,.28);box-shadow:0 1px #ffffff1a inset,0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent),0 6px 14px #00000059}.vendor-tabs::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 98%,rgba(255,255,255,.12)),color-mix(in srgb,var(--accent) 78%,rgba(0,0,0,.28)))}.certifications-list{width:100%;max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,260px));justify-content:center;gap:12px;align-items:stretch}.certification-card{border-radius:14px;border:1px solid var(--glass-border);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));box-shadow:var(--shadow);overflow:hidden;min-height:0}.pdf-link{display:block;padding:12px;text-decoration:none;color:inherit;background:transparent;border:0;border-radius:0;box-shadow:none;transition:transform .2s ease,box-shadow .2s ease}.pdf-link:hover{transform:translateY(-2px);box-shadow:0 14px 30px #00000052}.certification-card-container{display:flex;flex-direction:column;gap:10px}.certification-badge{width:100%;display:grid;place-items:center;padding:10px;border-radius:12px;background:#00000029;border:1px solid rgba(255,255,255,.1)}.certification-badge-img{width:min(170px,100%);height:auto;object-fit:contain;display:block;background:transparent}.certification-title{font-size:.95rem;line-height:1.25;text-align:center;color:var(--text-strong);overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:normal;margin:0;padding:2px 6px 0}@media(max-width:768px){.vendor-tabs{gap:8px;padding:6px 2px 10px;mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%)}.vendor-tab{padding:7px 12px;font-size:.85rem}.vendor-tabs::-webkit-scrollbar{height:7px}.certifications-list{gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));justify-content:stretch}.pdf-link{padding:12px}.certification-badge-img{width:min(160px,100%)}.certification-title{font-size:.9rem}}[data-theme=light] .vendor-tabs{mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);scrollbar-color:color-mix(in srgb,var(--accent) 70%,rgba(2,6,23,.3)) rgba(2,6,23,.1)}[data-theme=light] .vendor-tab{background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 60%,transparent));border-color:color-mix(in srgb,rgba(2,6,23,.22) 60%,transparent);color:color-mix(in srgb,#0b1220 90%,var(--muted));box-shadow:0 1px #fff9 inset,0 12px 22px -26px #02061747}[data-theme=light] .vendor-tab:hover{border-color:color-mix(in srgb,var(--accent) 22%,rgba(2,6,23,.2));box-shadow:0 1px #ffffffb3 inset,0 16px 28px -30px #02061757}[data-theme=light] .vendor-tab--active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,#ffffff),color-mix(in srgb,var(--accent) 6%,#ffffff));border-color:color-mix(in srgb,var(--accent) 34%,rgba(2,6,23,.18));color:color-mix(in srgb,#0b1220 94%,var(--muted));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 16%,transparent) inset,0 16px 28px -30px #02061757}[data-theme=light] .vendor-tabs::-webkit-scrollbar-track{background:#0206171a;box-shadow:0 0 0 1px #0206171f inset}[data-theme=light] .vendor-tabs::-webkit-scrollbar-thumb{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 78%,rgba(255,255,255,.14)),color-mix(in srgb,var(--accent) 62%,rgba(2,6,23,.22)));border:2px solid rgba(255,255,255,.7);box-shadow:0 1px #ffffff8c inset,0 6px 14px #02061738}[data-theme=light] .vendor-tabs::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 86%,rgba(255,255,255,.16)),color-mix(in srgb,var(--accent) 70%,rgba(2,6,23,.18)))}[data-theme=light] .certification-card{background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 62%,transparent));border-color:color-mix(in srgb,#000000 14%,transparent);box-shadow:0 16px 30px -28px #02061757}[data-theme=light] .certification-badge{background:color-mix(in srgb,#ffffff 70%,transparent);border-color:color-mix(in srgb,#000000 12%,transparent)}[data-theme=light] .certification-title{color:color-mix(in srgb,#0b1220 92%,var(--muted))}.certification-card-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--cert-content-gap, 14px)}.certification-badge{width:min(var(--cert-badge-size, 220px),100%);aspect-ratio:var(--cert-badge-aspect, 1 / 1);border-radius:var(--cert-badge-radius, 14px);background:var( --cert-badge-bg, linear-gradient( 180deg, color-mix(in srgb, var(--surface-1) 92%, transparent), color-mix(in srgb, var(--surface-2) 92%, transparent) ) );border:1px solid var(--cert-badge-border, color-mix(in srgb, var(--border) 55%, transparent));display:grid;place-items:center;padding:var(--cert-badge-pad, 12px);overflow:hidden;box-sizing:border-box;background-clip:padding-box;box-shadow:var( --cert-badge-shadow, inset 0 1px 0 color-mix(in srgb, var(--text-strong) 8%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--border) 34%, transparent), inset 0 0 0 2px color-mix(in srgb, var(--accent) 6%, transparent) )}.certification-badge-img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-width:100%;max-height:100%;transform-origin:center;backface-visibility:hidden;transform:translateZ(0)}.certification-badge-img[src*=ITIL-Foundation-IMG]{transform:translateZ(0) scale(1.12)}.certification-title{margin:0;--cert-title-lines: 2;--cert-title-lh: 1.25;font-size:15.5px;line-height:var(--cert-title-lh);font-weight:750;color:var(--text-strong);max-width:30ch;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--cert-title-lines);overflow:hidden;text-overflow:ellipsis;min-height:calc(1em * var(--cert-title-lh) * var(--cert-title-lines));text-wrap:balance}@media(max-width:600px){.certification-badge{padding:var(--cert-badge-pad-mobile, 12px);border-radius:var(--cert-badge-radius-mobile, 14px)}.certification-title{font-size:15px}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark}body{min-height:100vh;min-height:100svh}img,svg,video,canvas,picture{display:block;max-width:100%}iframe{border:0}::selection{background:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--text-strong)}::-moz-selection{background:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--text-strong)}@supports (scrollbar-color: auto){*{scrollbar-color:color-mix(in srgb,var(--accent) 28%,transparent) color-mix(in srgb,var(--surface-1) 70%,transparent);scrollbar-width:thin}}@supports selector(::-webkit-scrollbar){::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:color-mix(in srgb,var(--surface-1) 70%,transparent)}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 22%,transparent);border-radius:999px;border:2px solid color-mix(in srgb,var(--surface-1) 78%,transparent)}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 34%,transparent)}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}:root{--t-font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;--t-fs-base: 16px;--t-lh-base: 1.6;--t-fw-regular: 400;--t-fw-medium: 500;--t-fw-semibold: 600;--t-fw-bold: 700;--t-fw-extrabold: 800;--t-fw-black: 850;--t-color-bg-0: #1f1f1f;--t-color-white: #ffffff;--t-color-white-a96: rgba(255, 255, 255, .96);--t-color-white-a92: rgba(255, 255, 255, .92);--t-color-white-a86: rgba(255, 255, 255, .86);--t-color-white-a72: rgba(255, 255, 255, .72);--t-color-accent-0: #a00;--t-color-accent-1: #c40000;--t-color-white-a14: rgba(255, 255, 255, .14);--t-color-white-a10: rgba(255, 255, 255, .1);--t-color-white-a06: rgba(255, 255, 255, .06);--t-color-white-a03: rgba(255, 255, 255, .03);--t-color-black-a34: rgba(0, 0, 0, .34);--t-color-black-a46: rgba(0, 0, 0, .46);--t-color-black-a80: rgba(0, 0, 0, .8);--t-color-black-a18: rgba(0, 0, 0, .18);--t-color-glow-a18: rgba(170, 0, 0, .18);--t-color-glow-a12: rgba(170, 0, 0, .12);--t-color-glow-a06: rgba(170, 0, 0, .06);--t-space-1: 4px;--t-space-2: 8px;--t-space-3: 12px;--t-space-4: 16px;--t-space-5: 20px;--t-space-6: 24px;--t-space-7: 28px;--t-space-8: 32px;--t-space-9: 40px;--t-space-10: 48px;--t-space-11: 56px;--t-space-12: 72px;--t-space-gutter: clamp(16px, 2vw, 28px);--t-space-pad-top: clamp(10px, 1.5vw, 18px);--t-space-pad-bottom: clamp(48px, 5vw, 72px);--t-size-page-max: 1100px;--t-size-content-max: 1000px;--t-size-nav-offset: 60px;--t-radius-sm: 12px;--t-radius-md: 16px;--t-radius-lg: 18px;--t-border-strong: var(--t-color-white-a14);--t-border-soft: var(--t-color-white-a10);--t-surface-1: var(--t-color-white-a06);--t-surface-2: var(--t-color-white-a03);--t-shadow-1: 0 10px 30px rgba(0, 0, 0, .26);--t-shadow-2: 0 18px 48px rgba(0, 0, 0, .34);--t-shadow-edge: 0 12px 22px -22px rgba(0, 0, 0, .7);--t-hairline: var(--t-color-black-a18);--t-glow: var(--t-color-glow-a18);--t-ease: .18s ease;--t-dur-fast: .16s;--t-dur: .18s;--t-ease-out: cubic-bezier(.2, .8, .2, 1)}:root{--font-sans: var(--t-font-sans);--fs-base: var(--t-fs-base);--lh-base: var(--t-lh-base);--bg: #0b0b0b;--text: rgba(255, 255, 255, .86);--text-strong: rgba(255, 255, 255, .96);--muted: rgba(255, 255, 255, .68);--accent: #aa0000;--accent-rgb: 170 0 0;--accent-strong: #c40000;--accent-05: rgb(var(--accent-rgb) / .05);--accent-08: rgb(var(--accent-rgb) / .08);--accent-10: rgb(var(--accent-rgb) / .1);--accent-12: rgb(var(--accent-rgb) / .12);--accent-14: rgb(var(--accent-rgb) / .14);--accent-16: rgb(var(--accent-rgb) / .16);--accent-18: rgb(var(--accent-rgb) / .18);--accent-22: rgb(var(--accent-rgb) / .22);--accent-26: rgb(var(--accent-rgb) / .26);--accent-32: rgb(var(--accent-rgb) / .32);--accent-46: rgb(var(--accent-rgb) / .46);--accent-60: rgb(var(--accent-rgb) / .6);--max-width: var(--t-size-page-max);--content-max: var(--t-size-content-max);--gutter: var(--t-space-gutter);--pad-top: var(--t-space-pad-top);--pad-bottom: var(--t-space-pad-bottom);--nav-offset: var(--t-size-nav-offset);--r-sm: var(--t-radius-sm);--r-md: var(--t-radius-md);--r-lg: var(--t-radius-lg);--border: rgba(255, 255, 255, .16);--border-soft: rgba(255, 255, 255, .11);--surface-1: #121212;--surface-2: #171717;--hairline: 0 0 0 1px rgba(255, 255, 255, .07);--shadow: 0 12px 30px rgba(0, 0, 0, .35);--shadow-strong: 0 16px 40px rgba(0, 0, 0, .45);--shadow-edge: 0 0 0 1px rgba(0, 0, 0, .26);--glow: 0 0 0 3px var(--accent-18);--ease: var(--t-ease);--dur-fast: var(--t-dur-fast, .16s);--dur: var(--t-dur, .18s);--ease-out: var(--t-ease-out, cubic-bezier(.2, .8, .2, 1));--focus-ring: var(--accent-60);--card-bg: var(--surface-1);--card-bg-2: var(--surface-2);--card-border: var(--border-soft);--card-shadow: var(--shadow);--card-shadow-hover: var(--shadow-strong);--hover-border: var(--accent-32);--focus-border: var(--accent-46);--accent-soft: var(--accent-32);--accent-softer: var(--accent-18);--keyline: var(--accent-16);--app-bg: var(--bg);--app-text: var(--text-strong);--app-glow: var(--glow);--app-max-width: var(--max-width);--app-gutter: var(--gutter);--app-pad-top: var(--pad-top);--app-pad-bottom: var(--pad-bottom);--glass-blur: 10px;--glass-sat: 135%;--glass-ink-top: color-mix(in srgb, #000 76%, var(--surface-1) 24%);--glass-ink-bot: color-mix(in srgb, #000 82%, var(--surface-2) 18%);--glass-border: color-mix(in srgb, var(--border) 52%, transparent);--glass-ring: color-mix(in srgb, var(--accent) 12%, transparent);--glass-ring-hover: color-mix(in srgb, var(--accent) 22%, transparent);--glass-inset: inset 0 1px 0 color-mix(in srgb, var(--text-strong) 8%, transparent);--glass-bloom: 0 0 38px rgb(var(--accent-rgb) / .1)}@supports (color: color-mix(in srgb,white 50%,black)){:root{--surface-1: color-mix(in srgb, var(--bg) 92%, #ffffff 8%);--surface-2: color-mix(in srgb, var(--bg) 86%, #ffffff 14%);--border: color-mix(in srgb, #ffffff 16%, transparent);--border-soft: color-mix(in srgb, #ffffff 11%, transparent);--hairline: 0 0 0 1px color-mix(in srgb, #ffffff 7%, transparent);--hover-border: color-mix(in srgb, var(--accent) 32%, transparent);--focus-border: color-mix(in srgb, var(--accent) 46%, transparent);--focus-ring: color-mix(in srgb, var(--accent) 64%, transparent);--keyline: color-mix(in srgb, var(--accent) 18%, transparent)}}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-base);color:var(--text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto}button,input,textarea,select{font:inherit}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.content{width:100%;max-width:var(--content-max);margin:0 auto}.section{width:100%;display:flex;justify-content:center}.stack{display:flex;flex-direction:column;gap:18px}.card{border-radius:var(--r-lg);padding:22px;background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);color:var(--text);overflow:hidden}@supports (color: color-mix(in srgb,white 50%,black)){.card{background:linear-gradient(180deg,color-mix(in srgb,var(--card-bg) 94%,var(--accent) 6%),var(--card-bg-2))}}.card-tight{padding:16px;border-radius:var(--r-md)}.link-reset{text-decoration:none;color:inherit}.btn-reset{background:none;border:none;padding:0;color:inherit;font:inherit}.interactive{transition:transform var(--dur) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);outline:none;will-change:transform}.interactive:hover{transform:translateY(-1px);border-color:var(--hover-border);box-shadow:var(--card-shadow-hover)}.interactive:focus-visible{outline:none;border-color:var(--focus-border);box-shadow:0 0 0 2px var(--accent-softer),var(--card-shadow-hover)}@media(prefers-reduced-motion:reduce){.interactive{transition:none}.interactive:hover{transform:none}}.glass-card{border-radius:var(--r-lg);padding:22px;background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-bloom),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.glass-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.55}.glass-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent),var(--glass-bloom),var(--glass-inset)}.glass-card:focus-within{border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),var(--glass-bloom),var(--glass-inset)}@media(max-width:768px){.glass-card{border-radius:var(--r-md);padding:18px}}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}:root[data-theme=light]{color-scheme:light;--bg: #f7f8fa;--text: rgba(15, 23, 42, .9);--text-strong: #0f172a;--muted: rgba(15, 23, 42, .62);--border: rgba(15, 23, 42, .12);--border-soft: rgba(15, 23, 42, .08);--surface-1: rgba(15, 23, 42, .05);--surface-2: rgba(15, 23, 42, .025);--shadow: 0 10px 26px rgba(2, 6, 23, .1);--shadow-strong: 0 18px 42px rgba(2, 6, 23, .14);--shadow-edge: 0 10px 18px -18px rgba(2, 6, 23, .28);--hairline: rgba(2, 6, 23, .12);--glow: rgba(2, 6, 23, .04)}html,body,#root{height:100%;min-height:100%}html{scroll-padding-top:calc(var(--nav-offset, 60px) + 16px)}#root{position:relative;isolation:isolate}body{margin:0;color:var(--text);overflow-x:hidden;background:var(--bg);position:relative;--cc-x: 50%;--cc-y: 46%;--cc-nudge-x: -.045em;--app-grid-size: 92px;--app-grid-alpha: .055;--app-hatch-alpha: .014;--app-scan-alpha: .012;--app-base-top: color-mix(in srgb, var(--bg) 58%, #000 42%);--app-base-bot: color-mix(in srgb, var(--bg) 92%, #000 8%);--app-wash: rgb(var(--accent-rgb) / .1);--cc-ring-size: min(58vw, 680px);--cc-fill: color-mix(in srgb, var(--text-strong) 4%, transparent);--cc-stroke: rgb(var(--accent-rgb) / .14);--cc-ring: rgb(var(--accent-rgb) / .14);--cc-ring-inner: color-mix(in srgb, var(--border) 14%, transparent);--bull-step: 64px;--bull-ink: color-mix(in srgb, var(--border) 10%, transparent);--tick-ink: rgb(var(--accent-rgb) / .16);--tick-width: 1.1deg}:root[data-theme=light] body{background:#fafafa;--app-grid-alpha: .025;--app-hatch-alpha: .008;--app-scan-alpha: .008;--app-base-top: #ffffff;--app-base-bot: #ffffff;--app-wash: rgb(var(--accent-rgb) / .06);--cc-fill: color-mix(in srgb, #000 5%, transparent);--cc-stroke: rgb(var(--accent-rgb) / .12);--cc-ring: rgb(var(--accent-rgb) / .12);--cc-ring-inner: color-mix(in srgb, #000 10%, transparent);--bull-ink: color-mix(in srgb, #000 8%, transparent);--tick-ink: rgb(var(--accent-rgb) / .12)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-2;background:conic-gradient(from 45deg at var(--cc-x) var(--cc-y),transparent 0deg,var(--tick-ink) 0deg var(--tick-width),transparent var(--tick-width) 90deg,var(--tick-ink) 90deg calc(90deg + var(--tick-width)),transparent calc(90deg + var(--tick-width)) 180deg,var(--tick-ink) 180deg calc(180deg + var(--tick-width)),transparent calc(180deg + var(--tick-width)) 270deg,var(--tick-ink) 270deg calc(270deg + var(--tick-width)),transparent calc(270deg + var(--tick-width)) 360deg),radial-gradient(circle at var(--cc-x) var(--cc-y),transparent 0,transparent calc((var(--cc-ring-size) * .5) - 1px),var(--cc-ring) calc((var(--cc-ring-size) * .5)),transparent calc((var(--cc-ring-size) * .5) + 1px),transparent 100%),radial-gradient(circle at var(--cc-x) var(--cc-y),transparent 0,transparent calc((var(--cc-ring-size) * .42) - 1px),var(--cc-ring-inner) calc((var(--cc-ring-size) * .42)),transparent calc((var(--cc-ring-size) * .42) + 1px),transparent 100%),repeating-radial-gradient(circle at var(--cc-x) var(--cc-y),transparent 0 var(--bull-step),var(--bull-ink) var(--bull-step) calc(var(--bull-step) + 1px)),linear-gradient(180deg,var(--app-base-top),var(--app-base-bot)),radial-gradient(820px 320px at 50% -12%,var(--app-wash),transparent 72%),linear-gradient(90deg,rgba(255,255,255,var(--app-grid-alpha)) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,var(--app-grid-alpha)) 1px,transparent 1px),repeating-linear-gradient(180deg,rgba(255,255,255,var(--app-scan-alpha)) 0 1px,transparent 1px 12px),repeating-linear-gradient(45deg,rgba(255,255,255,var(--app-hatch-alpha)) 0 1px,transparent 1px 30px),repeating-linear-gradient(-45deg,rgba(255,255,255,var(--app-hatch-alpha)) 0 1px,transparent 1px 30px);background-size:auto,auto,auto,100% 100%,100% 100%,100% 100%,var(--app-grid-size) var(--app-grid-size),var(--app-grid-size) var(--app-grid-size),100% 100%,100% 100%,100% 100%;background-position:center,center,center,center,center,center,-1px -1px,-1px -1px,0 0,0 0,0 0;background-attachment:fixed;opacity:1}body:after{content:"CC";position:fixed;left:var(--cc-x);top:var(--cc-y);transform:translate(-50%,-50%) translate(var(--cc-nudge-x));pointer-events:none;-webkit-user-select:none;user-select:none;z-index:-1;font-weight:900;letter-spacing:-.08em;line-height:1;font-size:calc(var(--cc-ring-size) * .62);color:var(--cc-fill);text-shadow:0 0 .7px var(--cc-stroke),0 0 34px rgb(var(--accent-rgb) / .1);opacity:.5}@media(min-width:1100px){body{--app-grid-alpha: .065;--app-hatch-alpha: .017;--app-scan-alpha: .014}}@media(max-width:520px){body{--app-grid-alpha: .045;--app-hatch-alpha: .011;--app-scan-alpha: .01;--cc-ring-size: min(78vw, 520px)}}@media(max-width:768px){body:before{background-attachment:scroll}body:after{position:absolute}}.skip-link{position:fixed;top:10px;left:10px;padding:10px 14px;border-radius:12px;color:var(--text-strong);text-decoration:none;font-weight:750;letter-spacing:.1px;line-height:1;background:color-mix(in srgb,var(--surface-1) 82%,transparent);border:1px solid rgb(var(--accent-rgb) / .22);box-shadow:var(--shadow-strong);transform:translateY(-140%);opacity:0;z-index:2000;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%);transition:transform .16s ease,opacity .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);opacity:1;outline:2px solid rgb(var(--accent-rgb) / .55);outline-offset:3px;border-color:rgb(var(--accent-rgb) / .34)}.skip-link:hover{border-color:rgb(var(--accent-rgb) / .3)}@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}#main-content:focus{outline:none}#main-content:focus-visible{outline:2px solid rgb(var(--accent-rgb) / .55);outline-offset:6px;border-radius:18px}.app-page{width:100%;max-width:var(--max-width);margin:0 auto;position:relative;z-index:1;padding-inline:0;padding-top:calc(var(--nav-offset, 60px) + var(--pad-top));padding-bottom:var(--pad-bottom)}@media(max-width:768px){.app-page{padding-top:calc(var(--nav-offset, 60px) + 14px);padding-bottom:clamp(40px,6vw,60px)}}:where(.home-hero__text,.project-card,.skill-card,.contact-card,.resume-embed,.project-meta,.bg-panel,.background-page .bg-section>.bg-stack){--page-surface-hi: color-mix(in srgb, var(--text-strong) 10%, var(--surface-1))}[data-theme=light] :where(.home-hero__text,.project-card,.skill-card,.contact-card,.resume-embed,.project-meta,.bg-panel,.background-page .bg-section>.bg-stack){--page-surface-hi: color-mix(in srgb, var(--bg) 88%, var(--surface-1))}[data-theme=light] :where(.glass-panel,.glass-card){background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 62%,transparent));border-color:color-mix(in srgb,#000000 14%,transparent);box-shadow:0 12px 22px -22px #02061747,0 0 0 1px color-mix(in srgb,#000000 6%,transparent),inset 0 1px #ffffff8c}[data-theme=light] :where(.glass-panel:before,.glass-card:before){opacity:.28}[data-theme=light] :where(.glass-panel:hover,.glass-card:hover){border-color:color-mix(in srgb,var(--accent) 22%,rgba(2,6,23,.18));box-shadow:0 16px 30px -28px #02061757,0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent),inset 0 1px #ffffff9e}[data-theme=light] :where(.home-hero__text,.project-card,.skill-card,.contact-card,.resume-embed,.resume-rec,.bg-panel,.background-page .bg-section>.bg-stack){background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 62%,transparent));border-color:color-mix(in srgb,#000000 14%,transparent)}[data-theme=light] :where(.project-description,.skill-description,.contact-intro,.resume-rec__quote){color:color-mix(in srgb,#0b1220 82%,var(--muted))}.fade-in-up{opacity:0;transform:translateY(10px);animation:fadeInUp .85s ease forwards;animation-delay:var(--d, 0s)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.fade-in-up{animation:none;opacity:1;transform:none}}.glass-panel,.glass-card{background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:border-color var(--dur, .18s) var(--ease-out, ease),box-shadow var(--dur, .18s) var(--ease-out, ease),transform var(--dur, .18s) var(--ease-out, ease),background var(--dur, .18s) var(--ease-out, ease),opacity var(--dur, .18s) var(--ease-out, ease)}.glass-panel{border-radius:var(--r-lg);padding:26px}.glass-card{border-radius:var(--r-lg);padding:18px}.glass-panel:before,.glass-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.55}.glass-panel:hover,.glass-card:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent);transform:translateY(-1px)}.glass-panel:focus-within,.glass-card:focus-within{border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}@media(max-width:768px){.glass-panel{padding:18px;border-radius:var(--r-md)}.glass-card{padding:16px;border-radius:var(--r-md)}}:where(.projects-page,.skills-page,.contact-page,.resume-page){width:100%;max-width:var(--max-width);margin:0 auto;padding:var(--pad-top) var(--gutter) var(--pad-bottom);min-height:calc(100svh - var(--nav-offset, 84px));display:flex;flex-direction:column;align-items:center;gap:clamp(16px,2vw,26px)}.resume-page{gap:clamp(10px,1.4vw,16px)}.section-header{width:100%;max-width:var(--content-max);margin:clamp(18px,2.4vw,34px) auto 12px;text-align:center;color:var(--text-strong);font-weight:850;letter-spacing:-.01em;line-height:1.08;font-size:clamp(26px,2.7vw,40px);text-wrap:balance;scroll-margin-top:calc(var(--nav-offset, 84px) + 16px);position:relative}.section-header:after{content:"";display:block;width:clamp(56px,6vw,88px);height:2px;margin:10px auto 0;border-radius:999px;background:color-mix(in srgb,var(--accent) 55%,transparent);opacity:.55}:where(.projects-page,.resume-page)>.section-header{margin-top:0}.resume-page>.section-header{margin-bottom:6px}.home-page{width:100%;display:flex;flex-direction:column;align-items:center;padding-top:0;opacity:0;transition:opacity .3s ease}.home-page--ready{opacity:1}.home-icon-row{width:100%;display:flex;justify-content:center;align-items:center;padding:0;margin:8px 0 0;flex-wrap:wrap;gap:10px}.bg-panel--home-bio{width:min(860px,100%)}.bg-panel--home-bio>*{max-width:74ch;margin-inline:auto}.home-container{width:100%;max-width:var(--max-width);margin:0 auto;padding:10px var(--gutter) 56px;display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;isolation:isolate}.home-hero{width:100%;max-width:var(--content-max);display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;position:relative;isolation:isolate}.home-hero:before{content:"";position:absolute;inset:-26px -16px auto -16px;height:220px;pointer-events:none;background:radial-gradient(640px 240px at 50% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 68%);opacity:.9;z-index:-1}.home-hero__name{margin:0;font-weight:850;letter-spacing:-.02em;line-height:1.02;font-size:clamp(30px,4vw,48px);color:var(--text-strong);text-wrap:balance;position:relative}.home-hero__name:after{content:"";display:block;width:clamp(74px,9vw,118px);height:2px;border-radius:999px;margin:10px auto 0;background:color-mix(in srgb,var(--accent) 62%,transparent);opacity:.52}.home-hero__tagline{margin:0;font-style:italic;line-height:1.35;font-size:clamp(14px,1.3vw,18px);color:var(--muted);text-wrap:balance}.home-hero__media{position:relative;--hero-media-w: min(340px, 86vw);display:grid;place-items:center;width:fit-content;max-width:100%;margin-bottom:24px;overflow:visible;isolation:isolate}.home-hero__media:before{content:"";position:absolute;top:-14px;right:-14px;bottom:-14px;left:-14px;border-radius:22px;pointer-events:none;background:radial-gradient(340px 260px at 50% 35%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 68%);filter:blur(10px);opacity:.75;z-index:-1}.home-hero__image{display:block;width:var(--hero-media-w);height:auto;max-height:440px;border-radius:16px;border:1px solid color-mix(in srgb,var(--border) 58%,transparent);box-shadow:var(--shadow),0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent);margin:0}.home-hero__icon-chip{position:absolute;left:50%;bottom:-10px;transform:translate(-50%);z-index:2;width:fit-content;max-width:calc(100vw - 32px);pointer-events:auto}.home-hero__icon-chip .icon-container{width:fit-content;max-width:100%}.home-hero__cta{width:100%;display:flex;justify-content:center;margin-top:4px;transform:translateY(-4px)}.home-hero__certs-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:32px;padding:5px 10px;border-radius:999px;text-decoration:none;font-weight:740;letter-spacing:.08px;color:color-mix(in srgb,var(--text-strong) 82%,var(--muted));background:color-mix(in srgb,var(--surface-1) 66%,transparent);border:1px solid color-mix(in srgb,var(--border) 44%,transparent);box-shadow:0 10px 24px -26px #000000b3;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,opacity .16s ease}.home-hero__certs-link:hover{transform:translateY(-1px);color:var(--text-strong);border-color:color-mix(in srgb,var(--accent) 26%,var(--border));background:color-mix(in srgb,var(--surface-2) 72%,transparent);box-shadow:0 14px 30px -26px #000000c7,0 0 0 1px color-mix(in srgb,var(--accent) 9%,transparent)}.home-hero__certs-link:active{transform:translateY(0);opacity:.92}.home-hero__certs-link:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:3px}.home-hero__text{width:min(58ch,94vw);max-width:620px;padding:18px 20px;border-radius:18px;background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);color:var(--text);line-height:1.7;font-size:clamp(15px,1.15vw,18px);text-align:left;position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.home-hero__text:before{content:"";position:absolute;left:14px;right:14px;top:0;height:1px;border-radius:999px;background:color-mix(in srgb,var(--accent) 24%,transparent);opacity:.7;pointer-events:none}.home-hero__text:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent);transform:translateY(-1px)}.home-hero__text p{margin:0 0 10px}.home-hero__text p:last-child{margin-bottom:0}@media(max-width:768px){.home-container{padding:10px var(--gutter) 48px;gap:12px}.home-hero__media{--hero-media-w: min(340px, 90vw);margin-bottom:22px}.home-hero__icon-chip{position:static;left:auto;bottom:auto;transform:none;margin-top:10px}.home-hero__cta{margin-top:8px;transform:none}.home-hero__text{padding:18px 16px;border-radius:var(--r-md)}.home-hero__text:before{left:12px;right:12px}}.resume-page__container{width:min(1040px,100%);display:grid;gap:clamp(10px,1.2vw,14px)}.resume-actions{width:100%;display:flex;justify-content:flex-end;align-items:center;margin-top:-2px}.resume-download{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:12px;text-decoration:none;font-weight:800;letter-spacing:.1px;color:var(--text-strong);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s ease}.resume-download:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.resume-download:active{transform:translateY(0);opacity:.92}.resume-download:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:3px}.resume-embed{width:100%;border-radius:var(--r-lg);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.resume-embed:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.45}.resume-embed__object{width:calc(100% - 22px);margin:11px;display:block;border:0;border-radius:calc(var(--r-lg) - 10px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 48%,transparent),0 18px 40px -34px #000000d9;background:color-mix(in srgb,#000 78%,var(--surface-2) 22%);height:clamp(520px,56vh,700px)}.resume-embed:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.resume-embed:focus-within{border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.resume-embed__fallback{margin:0;padding:18px;color:var(--muted);line-height:1.6}.resume-snap{width:100%}.resume-snap__viewport{width:100%;border-radius:var(--r-lg);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.resume-snap__loading,.resume-snap__error{padding:18px;color:var(--muted)}.resume-snap__scroller{height:clamp(560px,calc(100svh - var(--nav-offset, 84px) - 240px),900px);overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior:contain;padding:16px;gap:16px;display:flex;flex-direction:column}.resume-snap__page{scroll-snap-align:start;scroll-snap-stop:always;min-height:calc(100% + -0px);display:grid;place-items:center;position:relative}.resume-snap__pageInner{width:100%;display:grid;place-items:center;border-radius:calc(var(--r-lg) - 10px);overflow:hidden;background:color-mix(in srgb,#000 78%,var(--surface-2) 22%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 48%,transparent),0 18px 40px -34px #000000bf}.resume-snap__pageNum{margin-top:10px;font-weight:750;color:var(--muted);opacity:.85}.resume-snap__page canvas{max-width:100%!important;height:auto!important;display:block}[data-theme=light] .resume-snap__viewport{background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 62%,transparent));border-color:color-mix(in srgb,#000000 14%,transparent);box-shadow:0 16px 30px -28px #02061757,0 0 0 1px color-mix(in srgb,#000000 6%,transparent),inset 0 1px #ffffff9e}@media(max-width:768px){.resume-snap__scroller{padding:12px;gap:12px;height:clamp(520px,calc(100svh - var(--nav-offset, 84px) - 210px),820px)}}.section-subheader{width:100%;max-width:var(--content-max);margin:0;text-align:left;color:var(--text-strong);font-weight:850;letter-spacing:-.01em;line-height:1.15;font-size:clamp(18px,1.7vw,24px);text-wrap:balance}.resume-recs{width:100%;margin-top:clamp(10px,1.6vw,18px)}.resume-recs__head{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:4px 0 10px}.resume-recs__link{color:var(--muted);text-decoration:none;font-weight:750;border-bottom:1px solid color-mix(in srgb,var(--accent) 42%,transparent);padding-bottom:1px;transition:color .16s ease,border-color .16s ease,opacity .16s ease}.resume-recs__link:hover{color:color-mix(in srgb,var(--accent) 72%,var(--text-strong));border-bottom-color:color-mix(in srgb,var(--accent) 62%,transparent)}.resume-recs__grid{width:100%;display:grid;gap:clamp(12px,1.6vw,16px);grid-template-columns:1fr}.resume-rec{border-radius:var(--r-lg);padding:clamp(18px,2vw,26px);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.resume-rec:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.45}.resume-rec:after{content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;border-radius:999px;background:color-mix(in srgb,var(--accent) 55%,transparent);opacity:.28;pointer-events:none}.resume-rec:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.resume-rec:focus-within{border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.resume-rec__meta{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-left:8px}.resume-rec__who{min-width:0}.resume-rec__name{margin:0;font-weight:850;color:var(--text-strong);line-height:1.15;font-size:clamp(16px,1.35vw,20px);text-wrap:balance}.resume-rec__title{margin:6px 0 0;color:var(--muted);line-height:1.4}.resume-rec__context{text-align:right;min-width:0}.resume-rec__rel,.resume-rec__date{margin:0;color:var(--muted);line-height:1.35}.resume-rec__date{margin-top:6px;opacity:.9;white-space:nowrap}.resume-rec__quote{margin:14px 0 0;padding-left:8px;color:var(--text);line-height:1.75}@media(min-width:900px){.resume-recs__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.resume-recs__head{flex-direction:column;align-items:flex-start}.resume-rec{border-radius:var(--r-md)}.resume-rec__meta{flex-direction:column;align-items:flex-start}.resume-rec__context{text-align:left}.resume-rec__date{white-space:normal}}.projects-page__container{width:min(var(--content-max),100%);margin:0 auto;display:grid;grid-template-columns:1fr;gap:clamp(14px,2vw,20px);align-items:stretch}@media(min-width:900px){.projects-page:not(.projects-page--detail) .projects-page__container{grid-template-columns:repeat(2,minmax(0,1fr))}}.projects-page--detail .projects-page__container{width:min(920px,100%);display:flex;flex-direction:column;gap:18px}.projects-page__container .link-reset{display:block;height:100%;border-radius:var(--r-lg);text-decoration:none;-webkit-tap-highlight-color:transparent}.projects-page__container .link-reset:focus-visible{outline:none!important}.project-card{width:100%;height:100%;border-radius:var(--r-lg);padding:clamp(18px,2vw,26px);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);color:var(--text);display:flex;flex-direction:column;gap:10px;position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.45}.projects-page__container .link-reset:hover .project-card{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.project-title{margin:0;font-size:clamp(18px,1.7vw,24px);font-weight:850;line-height:1.12;color:var(--text-strong);text-wrap:balance}.project-description{margin:0;max-width:80ch;color:var(--muted);line-height:1.65}.skills-page{gap:clamp(22px,3vw,44px)}.skills-page>div{width:min(var(--content-max),100%);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:12px}.skills-page .section-header{margin:0 auto 12px}.skill-intro-text{width:100%;margin:0;color:var(--muted);line-height:1.65;font-size:clamp(14px,1.1vw,17px);text-align:left}.skills-section{width:100%;--skills-gap: clamp(12px, 1.8vw, 16px);display:grid;gap:var(--skills-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.skills-section>.skill-card:last-child:nth-child(odd){grid-column:1 / -1;justify-self:center;width:calc(50% - (var(--skills-gap) / 2));max-width:100%}.skill-card{border-radius:var(--r-lg);padding:18px;background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);color:var(--text);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.skill-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.42}.skill-title{margin:0 0 8px;font-weight:850;letter-spacing:-.01em;line-height:1.15;font-size:clamp(16px,1.4vw,20px);color:var(--text-strong);text-wrap:balance}.skill-description{margin:0;color:var(--text);line-height:1.6}@media(max-width:768px){.skills-section{grid-template-columns:1fr;gap:12px}.skills-section>.skill-card:last-child:nth-child(odd){grid-column:auto;justify-self:stretch;width:auto}.skill-card{padding:16px;border-radius:var(--r-md)}}.contact-header{width:min(var(--content-max),100%);display:grid;gap:10px;text-align:center}.contact-intro{margin:0 auto;max-width:68ch;color:var(--muted);line-height:1.65}.contact-card{width:min(860px,100%);padding:clamp(18px,2.2vw,28px);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.contact-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.55}.contact-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent)}.contact-list{margin:0;padding:0;display:grid}.contact-item{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);column-gap:clamp(18px,2.2vw,32px);align-items:center;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.contact-item:first-child{padding-top:0}.contact-item:last-child{border-bottom:0;padding-bottom:0}.contact-label,.contact-value{margin:0}.contact-label{display:inline-flex;align-items:center;gap:10px;font-weight:750;color:var(--text-strong)}.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;opacity:.92}.contact-icon svg{width:18px;height:18px}.contact-value__row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.contact-value__row>.contact-link,.contact-value__row>span{flex:1 1 auto;min-width:0}.contact-link{color:var(--text);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .18s ease,border-color .18s ease,opacity .18s ease}.contact-link:hover{color:color-mix(in srgb,var(--accent) 72%,var(--text));border-bottom-color:color-mix(in srgb,var(--accent) 58%,transparent)}.contact-link:active{opacity:.92}.contact-link:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px;border-radius:6px}.contact-copy{position:relative;flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface-1) 72%,transparent);border:1px solid color-mix(in srgb,var(--border) 55%,transparent);color:color-mix(in srgb,var(--text-strong) 78%,var(--muted));box-shadow:0 10px 22px -22px #0000008c;opacity:.78;transition:transform .16s ease,background-color .16s ease,border-color .16s ease,opacity .16s ease,color .16s ease,box-shadow .16s ease}.contact-copy:hover{opacity:1;transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--surface-2) 72%,transparent);box-shadow:0 12px 26px -22px #0009,0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}.contact-copy:active{transform:translateY(0);opacity:.92}.contact-copy:focus-visible{opacity:1;outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}.contact-copy.is-copied{opacity:1;border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface-1));color:color-mix(in srgb,var(--accent) 72%,var(--text-strong))}.contact-copy__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.contact-card{border-radius:var(--r-md);padding:18px 16px}.contact-item{grid-template-columns:1fr;row-gap:6px;align-items:start;padding:14px 0}.contact-value__row{justify-content:space-between}.contact-link{white-space:normal;overflow:visible;text-overflow:clip}.contact-copy{opacity:1;transform:none}}.background-page{width:100%;max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;padding:var(--pad-top) var(--gutter) var(--pad-bottom);gap:clamp(18px,2.2vw,28px)}.background-page .section-header:first-of-type{margin-top:0}.bg-section{width:100%;display:flex;justify-content:center}:where(.bg-panel,.background-page .bg-section>.bg-stack){width:min(var(--content-max),100%);--panel-pad: 26px;--panel-radius: var(--r-lg);padding:var(--panel-pad);border-radius:var(--panel-radius);background:linear-gradient(180deg,var(--glass-ink-top),var(--glass-ink-bot));border:1px solid var(--glass-border);box-shadow:var(--shadow-edge),0 0 0 1px var(--glass-ring),var(--glass-inset);position:relative;isolation:isolate;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}:where(.bg-panel,.background-page .bg-section>.bg-stack):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent 40%,transparent 60%,color-mix(in srgb,var(--accent) 10%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--border) 10%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--border) 8%,transparent) 1px,transparent 1px);background-size:100% 2px,72px 72px,72px 72px;background-position:0 0,-1px -1px,-1px -1px;opacity:.55}:where(.bg-panel,.background-page .bg-section>.bg-stack):hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px var(--glass-ring-hover),var(--glass-bloom),inset 0 1px color-mix(in srgb,var(--text-strong) 10%,transparent);transform:translateY(-1px)}.bg-panel--timeline{--panel-pad: 28px}.bg-panel--certs{--panel-pad: 18px}.bg-panel--certs .vendor-tabs{max-width:100%}.bg-panel--certs .certifications-list{max-width:100%;margin:0;grid-template-columns:repeat(auto-fill,minmax(220px,260px));justify-content:start;gap:12px}.bg-panel--certs .certifications-groups{gap:10px}.background-page .bg-section>.bg-stack{--panel-pad: 28px}.bg-stack{width:100%;display:flex;flex-direction:column;gap:18px}.bg-panel .bg-stack{padding:0;border:0;background:transparent!important;box-shadow:none!important;border-radius:0}.bg-panel .bg-stack:before,.bg-panel .bg-stack:after{display:none}.education-accordion{gap:0}.education-item{border-top:1px solid color-mix(in srgb,var(--border) 56%,transparent)}.education-item:first-child{border-top:0}.education-summary{list-style:none;cursor:pointer;margin:0;padding:16px 58px 16px 14px;border-radius:14px;position:relative;outline:none;transition:background-color .16s ease,transform .16s ease,opacity .16s ease,box-shadow .16s ease}.education-summary::-webkit-details-marker{display:none}.education-summary::marker{content:""}.education-summary:hover{background:color-mix(in srgb,var(--surface-1) 72%,transparent)}.education-summary:active{opacity:.94}.education-summary:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:3px}.education-summary .education-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px}.education-summary .education-card-head-title{margin:0;min-width:0;color:var(--text-strong);font-weight:850;letter-spacing:-.01em;line-height:1.15;font-size:clamp(18px,1.7vw,24px);overflow-wrap:anywhere;text-wrap:balance}.education-summary .education-date{margin:0;justify-self:end;color:var(--muted);opacity:.95;font-size:.98rem;white-space:nowrap;padding-right:8px}.education-summary .education-location{margin:8px 0 0;color:var(--muted);line-height:1.5}.education-title-main{display:block}.education-title-sub{display:block;margin-top:6px;font-weight:650;font-size:.98em;line-height:1.3;color:var(--muted);opacity:.96}.education-chevron{position:absolute;right:18px;top:20px;width:12px;height:12px;border-right:2px solid color-mix(in srgb,var(--text-strong) 45%,transparent);border-bottom:2px solid color-mix(in srgb,var(--text-strong) 45%,transparent);transform:rotate(-45deg);transition:transform .16s ease,border-color .16s ease,opacity .16s ease;opacity:.82;pointer-events:none}.education-item[open]>.education-summary{background:color-mix(in srgb,var(--surface-1) 80%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--border) 28%,transparent),inset 0 1px color-mix(in srgb,var(--accent) 14%,transparent)}.education-item[open]>.education-summary:hover{background:color-mix(in srgb,var(--surface-1) 84%,transparent)}.education-item[open] .education-chevron{transform:rotate(45deg);border-right-color:color-mix(in srgb,var(--accent) 45%,transparent);border-bottom-color:color-mix(in srgb,var(--accent) 45%,transparent);opacity:1}.education-details{padding:0 14px 16px}.education-item[open] .education-details{padding-top:16px;border-top:1px solid color-mix(in srgb,var(--border) 45%,transparent);margin-top:14px;animation:eduDetailsIn .18s ease-out both}@keyframes eduDetailsIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.education-item[open] .education-details{animation:none}}.education-list{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:14px}.education-list li{position:relative;padding-left:18px;line-height:1.58;color:var(--text)}.education-list li:before{content:"";position:absolute;left:0;top:.62em;width:4px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 10%,transparent)}main,:where(.home-page,.projects-page,.skills-page,.contact-page,.resume-page,.background-page){background:transparent}[data-theme=light] :where(.project-card,.skill-card,.contact-card,.resume-embed,.resume-download,.resume-rec,:where(.bg-panel,.background-page .bg-section>.bg-stack)){background:linear-gradient(180deg,color-mix(in srgb,#ffffff 78%,transparent),color-mix(in srgb,#ffffff 62%,transparent));border-color:color-mix(in srgb,#000000 14%,transparent);box-shadow:0 16px 30px -28px #02061757,0 0 0 1px color-mix(in srgb,#000000 6%,transparent),inset 0 1px #ffffff9e}[data-theme=light] :where(.project-card:before,.skill-card:before,.contact-card:before,.resume-embed:before,.resume-rec:before,:where(.bg-panel,.background-page .bg-section>.bg-stack):before){opacity:.24}[data-theme=light] :where(.project-description,.skill-description,.contact-intro,.resume-rec__quote,.resume-embed__fallback){color:color-mix(in srgb,#0b1220 84%,var(--muted))}[data-theme=light] .bg-panel--certs .vendor-tab{background:color-mix(in srgb,#ffffff 72%,transparent);border-color:color-mix(in srgb,#000000 14%,transparent);box-shadow:0 10px 20px -22px #02061747;color:color-mix(in srgb,#0b1220 88%,var(--muted))}[data-theme=light] .bg-panel--certs .vendor-tab:hover{border-color:color-mix(in srgb,var(--accent) 24%,rgba(2,6,23,.18))}[data-theme=light] .bg-panel--certs .vendor-tab--active{background:color-mix(in srgb,var(--accent) 10%,#ffffff);border-color:color-mix(in srgb,var(--accent) 32%,rgba(2,6,23,.18));color:color-mix(in srgb,#0b1220 92%,var(--muted))}
