.seal-mark[data-astro-cid-x4excdfi]{vertical-align:middle;align-items:center;gap:.45em;margin-right:.45em;display:inline-flex}.seal-mark__box[data-astro-cid-x4excdfi]{border:1px solid color-mix(in srgb, currentColor 38%, transparent);justify-content:center;align-items:center;width:1.85em;height:1.85em;display:inline-flex}.seal-mark__glyph[data-astro-cid-x4excdfi]{font-size:1.3em;line-height:1}.seal-mark__glyph--stacked[data-astro-cid-x4excdfi]{letter-spacing:0;writing-mode:vertical-rl;text-orientation:upright;font-size:1.01em;line-height:.88}.seal-mark__slash[data-astro-cid-x4excdfi]{opacity:.72;font-size:.86em}.identity-plate{--plate-bg:#0a1014;--plate-border:#2b3a42;--plate-line:#192329;--plate-seal:#405966;--plate-muted:#7c8a93;--plate-g1:#00b9e9;--plate-g2:#00d4d4;--plate-dot:#42ffff;--plate-scan:#003d56;--ip-jolt-scale:1;--ip-burst-duration:.64s;width:100%;height:auto;display:block}:root[data-theme=light] .identity-plate{--plate-bg:#eef3f5;--plate-border:#a9bcc6;--plate-line:#cddae1;--plate-seal:#8ba4b0;--plate-muted:#526b77;--plate-g1:#016f97;--plate-g2:#007586;--plate-dot:#0092c7;--plate-scan:#bed9e2}:root[data-theme] .identity-plate--ghost{--plate-bg:transparent;--plate-border:var(--c-ink);--plate-line:var(--c-ink);--plate-seal:var(--c-ink);--plate-muted:var(--c-ink);--plate-g1:var(--c-ink);--plate-g2:var(--c-soft);--plate-dot:var(--c-ink);--plate-scan:var(--c-ink);--c-soft:var(--c-ink)}.ip-mono{font-family:var(--font-mono);font-weight:500}.ip-head{letter-spacing:.5px;font-size:30px}.ip-ccs{letter-spacing:2px;font-size:24px}.ip-role{letter-spacing:2.6px;font-size:30px}.ip-meta{letter-spacing:2.9px;font-size:22px}.ip-label{letter-spacing:2.5px;font-size:16px}.ip-value{letter-spacing:.5px;font-size:22px}.ip-seal{font-family:var(--font-seal);font-size:46px;font-weight:500;line-height:1}.ip-stamp{letter-spacing:4px;opacity:.85;font-size:46px}.ip-monogram{font-family:var(--font-serif);letter-spacing:8px;font-size:310px;font-weight:900}.ip-details-narrow{display:none}@media (width<=767px){.ip-details-wide{display:none}.ip-details-narrow{display:inline}.ip-head,.ip-ccs{font-size:34px}.ip-header-seal{transform:translate(64px)}.ip-role,.ip-meta{font-size:32px}.ip-label,.ip-value{font-size:35px}}@media (prefers-reduced-motion:no-preference){.identity-plate.is-glitching{animation:ip-sheet-burst var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching--quick{--ip-jolt-scale:.5;--ip-burst-duration:.36s}.identity-plate.is-glitching .ip-jolt{will-change:transform}.identity-plate.is-glitching .ip-jolt--frame{animation:ip-jolt-frame var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--header{animation:ip-jolt-header var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--window{animation:ip-jolt-window var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--ruler{animation:ip-jolt-ruler var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--dossier{animation:ip-jolt-dossier var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--details{animation:ip-jolt-details var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--facts{animation:ip-jolt-facts var(--ip-burst-duration) steps(1, end) both}.identity-plate.is-glitching .ip-jolt--stamp{animation:ip-jolt-stamp var(--ip-burst-duration) steps(1, end) both}}@keyframes ip-sheet-burst{0%,to{transform:translate(0)}7%{transform:translate(calc(4px * var(--ip-jolt-scale)), calc(-2px * var(--ip-jolt-scale)))}19%{transform:translate(calc(-5px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}33%{transform:translate(calc(3px * var(--ip-jolt-scale)), calc(1px * var(--ip-jolt-scale)))}49%{transform:translate(calc(-3px * var(--ip-jolt-scale)), 0)}63%{transform:translate(calc(2px * var(--ip-jolt-scale)), calc(-1px * var(--ip-jolt-scale)))}76%{transform:translate(0)}}@keyframes ip-jolt-frame{0%,to{transform:translate(0)}17%{transform:translate(calc(4px * var(--ip-jolt-scale)), calc(-2px * var(--ip-jolt-scale)))}35%{transform:translate(calc(-5px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}53%{transform:translate(calc(3px * var(--ip-jolt-scale)), 0)}69%{transform:translate(0)}}@keyframes ip-jolt-header{0%,to{transform:translate(0)}7%{transform:translate(calc(18px * var(--ip-jolt-scale)), calc(-6px * var(--ip-jolt-scale)))}16%{transform:translate(calc(-10px * var(--ip-jolt-scale)), calc(3px * var(--ip-jolt-scale)))}27%{transform:translate(calc(24px * var(--ip-jolt-scale)), calc(-2px * var(--ip-jolt-scale)))}40%{transform:translate(calc(-7px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}54%{transform:translate(calc(6px * var(--ip-jolt-scale)), 0)}67%{transform:translate(0)}}@keyframes ip-jolt-window{0%,to{transform:translate(0)}9%{transform:translate(calc(-14px * var(--ip-jolt-scale)), calc(4px * var(--ip-jolt-scale)))}19%{transform:translate(calc(20px * var(--ip-jolt-scale)), calc(-1px * var(--ip-jolt-scale)))}31%{transform:translate(calc(-26px * var(--ip-jolt-scale)), calc(5px * var(--ip-jolt-scale)))}45%{transform:translate(calc(12px * var(--ip-jolt-scale)), calc(-3px * var(--ip-jolt-scale)))}58%{transform:translate(calc(-5px * var(--ip-jolt-scale)), calc(1px * var(--ip-jolt-scale)))}72%{transform:translate(0)}}@keyframes ip-jolt-ruler{0%,to{transform:translate(0)}11%{transform:translate(calc(9px * var(--ip-jolt-scale)), calc(-3px * var(--ip-jolt-scale)))}23%{transform:translate(calc(-13px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}37%{transform:translate(calc(17px * var(--ip-jolt-scale)), calc(-4px * var(--ip-jolt-scale)))}52%{transform:translate(calc(-6px * var(--ip-jolt-scale)), calc(1px * var(--ip-jolt-scale)))}66%{transform:translate(0)}}@keyframes ip-jolt-dossier{0%,to{transform:translate(0)}10%{transform:translate(calc(13px * var(--ip-jolt-scale)), calc(-5px * var(--ip-jolt-scale)))}23%{transform:translate(calc(-19px * var(--ip-jolt-scale)), calc(4px * var(--ip-jolt-scale)))}36%{transform:translate(calc(6px * var(--ip-jolt-scale)), calc(-2px * var(--ip-jolt-scale)))}51%{transform:translate(calc(-10px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}65%{transform:translate(calc(2px * var(--ip-jolt-scale)), 0)}77%{transform:translate(0)}}@keyframes ip-jolt-details{0%,to{transform:translate(0)}13%{transform:translate(calc(9px * var(--ip-jolt-scale)), calc(3px * var(--ip-jolt-scale)))}26%{transform:translate(calc(-12px * var(--ip-jolt-scale)), calc(-2px * var(--ip-jolt-scale)))}41%{transform:translate(calc(15px * var(--ip-jolt-scale)), calc(4px * var(--ip-jolt-scale)))}56%{transform:translate(calc(-5px * var(--ip-jolt-scale)), 0)}70%{transform:translate(0)}}@keyframes ip-jolt-facts{0%,to{transform:translate(0)}12%{transform:translate(calc(-11px * var(--ip-jolt-scale)), calc(-3px * var(--ip-jolt-scale)))}25%{transform:translate(calc(15px * var(--ip-jolt-scale)), calc(3px * var(--ip-jolt-scale)))}39%{transform:translate(calc(-7px * var(--ip-jolt-scale)), calc(-4px * var(--ip-jolt-scale)))}54%{transform:translate(calc(9px * var(--ip-jolt-scale)), calc(2px * var(--ip-jolt-scale)))}68%{transform:translate(0)}}@keyframes ip-jolt-stamp{0%,to{transform:translate(0)}14%{transform:translate(calc(-18px * var(--ip-jolt-scale)), calc(7px * var(--ip-jolt-scale)))}28%{transform:translate(calc(13px * var(--ip-jolt-scale)), calc(-5px * var(--ip-jolt-scale)))}44%{transform:translate(calc(-9px * var(--ip-jolt-scale)), calc(4px * var(--ip-jolt-scale)))}59%{transform:translate(calc(5px * var(--ip-jolt-scale)), 0)}73%{transform:translate(0)}}.identity-plate-stage{isolation:isolate;--ip-ghost-scale:1;--ip-ghost-duration:.64s;--ip-ghost-alpha:1;--ip-scan-alpha:1;position:relative}.identity-plate-stage.is-glitching--quick{--ip-ghost-scale:.5;--ip-ghost-duration:.36s;--ip-ghost-alpha:.8;--ip-scan-alpha:.72}.ip-main{z-index:1;line-height:0;position:relative}.ip-ghost{z-index:2;opacity:0;visibility:hidden;pointer-events:none;position:absolute;inset:0}.ip-ghost--bands{z-index:3;-webkit-mask-image:linear-gradient(#0000 0% 17%,#000 17% 25%,#0000 25% 46%,#000 46% 54%,#0000 54% 72%,#000 72% 79%,#0000 79% 100%);mask-image:linear-gradient(#0000 0% 17%,#000 17% 25%,#0000 25% 46%,#000 46% 54%,#0000 54% 72%,#000 72% 79%,#0000 79% 100%)}.identity-plate-stage.is-glitching .ip-ghost{visibility:visible}.identity-plate-stage:after{content:"";z-index:4;height:12%;color:var(--c-ink);opacity:0;pointer-events:none;background:linear-gradient(#0000 0%,currentColor 46% 54%,#0000 100%);position:absolute;top:0;left:-2%;right:-2%;transform:translateY(-140%)}@media (prefers-reduced-motion:no-preference){.identity-plate-stage.is-glitching .ip-ghost{will-change:transform, opacity}.identity-plate-stage.is-glitching .ip-ghost--full{animation:ip-ghost-full var(--ip-ghost-duration) steps(1, end) both}.identity-plate-stage.is-glitching .ip-ghost--bands{animation:ip-ghost-bands var(--ip-ghost-duration) steps(1, end) both}.identity-plate-stage.is-glitching:after{animation:ip-scan-sweep var(--ip-ghost-duration) steps(1, end) both}}@media (prefers-reduced-motion:reduce){.ip-ghost,.identity-plate-stage:after{display:none}}@keyframes ip-ghost-full{0%{opacity:0;transform:translate(0)}6%{opacity:calc(.62 * var(--ip-ghost-alpha));transform:translate(calc(-18px * var(--ip-ghost-scale)), calc(-4px * var(--ip-ghost-scale)))}18%{opacity:calc(.3 * var(--ip-ghost-alpha));transform:translate(calc(10px * var(--ip-ghost-scale)), calc(3px * var(--ip-ghost-scale)))}30%{opacity:calc(.68 * var(--ip-ghost-alpha));transform:translate(calc(-26px * var(--ip-ghost-scale)), calc(-2px * var(--ip-ghost-scale)))}46%{opacity:calc(.4 * var(--ip-ghost-alpha));transform:translate(calc(14px * var(--ip-ghost-scale)), calc(5px * var(--ip-ghost-scale)))}60%{opacity:calc(.55 * var(--ip-ghost-alpha));transform:translate(calc(-12px * var(--ip-ghost-scale)), calc(1px * var(--ip-ghost-scale)))}76%{opacity:calc(.22 * var(--ip-ghost-alpha));transform:translate(calc(6px * var(--ip-ghost-scale)), calc(-2px * var(--ip-ghost-scale)))}to{opacity:0;transform:translate(0)}}@keyframes ip-ghost-bands{0%{opacity:0;transform:translate(0)}8%{opacity:calc(.9 * var(--ip-ghost-alpha));transform:translate(calc(20px * var(--ip-ghost-scale)), calc(3px * var(--ip-ghost-scale)))}20%{opacity:calc(.55 * var(--ip-ghost-alpha));transform:translate(calc(-14px * var(--ip-ghost-scale)), calc(-4px * var(--ip-ghost-scale)))}33%{opacity:calc(.95 * var(--ip-ghost-alpha));transform:translate(calc(24px * var(--ip-ghost-scale)), calc(1px * var(--ip-ghost-scale)))}47%{opacity:calc(.65 * var(--ip-ghost-alpha));transform:translate(calc(-18px * var(--ip-ghost-scale)), calc(4px * var(--ip-ghost-scale)))}61%{opacity:calc(.82 * var(--ip-ghost-alpha));transform:translate(calc(12px * var(--ip-ghost-scale)), calc(-2px * var(--ip-ghost-scale)))}76%{opacity:calc(.25 * var(--ip-ghost-alpha));transform:translate(calc(-6px * var(--ip-ghost-scale)), calc(1px * var(--ip-ghost-scale)))}to{opacity:0;transform:translate(0)}}@keyframes ip-scan-sweep{0%{opacity:0;transform:translateY(-140%)}8%{opacity:calc(.2 * var(--ip-scan-alpha));transform:translateY(40%)}22%{opacity:calc(.18 * var(--ip-scan-alpha));transform:translateY(310%)}30%{opacity:calc(.12 * var(--ip-scan-alpha));transform:translateY(480%)}34%{opacity:0;transform:translateY(540%)}60%{opacity:calc(.14 * var(--ip-scan-alpha));transform:translateY(820%)}70%{opacity:0;transform:translateY(900%)}to{opacity:0;transform:translateY(-140%)}}@media (prefers-reduced-motion:no-preference){.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]{animation:.62s cubic-bezier(.2,.7,.2,1) both hero-rise}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(2){animation-delay:50ms}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(3){animation-delay:.1s}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(4){animation-delay:.15s}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(5){animation-delay:.2s}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(6){animation-delay:.25s}.hero-copy[data-astro-cid-223aa3li]>[data-astro-cid-223aa3li]:nth-child(7){animation-delay:.3s}.hero-copy[data-astro-cid-223aa3li].is-armed>[data-astro-cid-223aa3li]{opacity:0;animation:none;transform:translateY(10px)}.hero-copy[data-astro-cid-223aa3li].is-armed .status-ping[data-astro-cid-223aa3li]{animation:none}.hero-copy[data-astro-cid-223aa3li]:not(.is-armed) .status-ping[data-astro-cid-223aa3li]{animation:2.6s cubic-bezier(0,0,.2,1) 3 forwards status-ping}}@media (prefers-reduced-motion:reduce){.status-ping[data-astro-cid-223aa3li]{display:none}}@keyframes status-ping{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(2.6)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.about-glyph[data-astro-cid-x2ysck2y]{font-family:var(--font-serif);letter-spacing:-.05em;font-size:230px;font-weight:900}.about-title__part[data-astro-cid-x2ysck2y]{z-index:1;display:inline-block;position:relative}@media (prefers-reduced-motion:no-preference){h2[data-astro-cid-x2ysck2y]:after{transition:opacity .42s .52s}.is-armed[data-astro-cid-x2ysck2y] h2[data-astro-cid-x2ysck2y]:after,.is-armed[data-astro-cid-x2ysck2y] .about-title__part[data-astro-cid-x2ysck2y]{opacity:0}.is-shown[data-astro-cid-x2ysck2y] .about-title__part--lead[data-astro-cid-x2ysck2y]{animation:.62s cubic-bezier(.16,1,.3,1) 80ms both about-title-lead}.is-shown[data-astro-cid-x2ysck2y] .about-title__part--tail[data-astro-cid-x2ysck2y]{animation:.72s cubic-bezier(.16,1,.3,1) .52s both about-title-tail}}@keyframes about-title-lead{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translate(0,0)}}@keyframes about-title-tail{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translate(0,0)}}.section-marker__rule[data-astro-cid-llqe7pk6]{transform-origin:0}@media (prefers-reduced-motion:no-preference){.section-marker__rule[data-astro-cid-llqe7pk6]{transition:transform .72s cubic-bezier(.16,1,.3,1)}.section-marker__meta[data-astro-cid-llqe7pk6],.section-marker__title[data-astro-cid-llqe7pk6],.section-marker__lead[data-astro-cid-llqe7pk6]{transition:opacity .48s cubic-bezier(.16,1,.3,1),transform .48s cubic-bezier(.16,1,.3,1)}.section-marker__title[data-astro-cid-llqe7pk6]{transition-delay:70ms}.section-marker__lead[data-astro-cid-llqe7pk6]{transition-delay:.13s}.section-marker__title[data-astro-cid-llqe7pk6]:after{transition:opacity .42s .18s}.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__rule[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__meta[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__title[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__lead[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__title[data-astro-cid-llqe7pk6]:after{transition:none}.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__rule[data-astro-cid-llqe7pk6]{transform:scaleX(0)}.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__meta[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__title[data-astro-cid-llqe7pk6],.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__lead[data-astro-cid-llqe7pk6]{opacity:0;transform:translateY(7px)}.section-marker[data-astro-cid-llqe7pk6].is-armed .section-marker__title[data-astro-cid-llqe7pk6]:after{opacity:0}}.service-item[data-astro-cid-dcqeiarm]{height:100%}.service-item--lead[data-astro-cid-dcqeiarm]{background-color:color-mix(in srgb, var(--c-panel) 8%, var(--c-page))}.service-item--lead[data-astro-cid-dcqeiarm]:hover{background-color:color-mix(in srgb, var(--c-panel) 16%, var(--c-page))}@media (prefers-reduced-motion:no-preference){.service-item[data-astro-cid-dcqeiarm]{transition:opacity .52s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1),background-color .18s;transition-delay:var(--service-delay,0s), var(--service-delay,0s), 0s}.service-item[data-astro-cid-dcqeiarm].is-armed{opacity:0;transition:none;transform:translateY(10px)}}.architecture-flow[data-astro-cid-fz6y3z2y]{--node-offset:22px;background-color:var(--c-line);grid-template-columns:minmax(0,1fr);gap:1px;display:grid}.architecture-stage[data-astro-cid-fz6y3z2y]{text-align:left;cursor:pointer;background-color:var(--c-page);min-width:0;padding:14px 16px;transition:background-color .18s;display:block;position:relative}.architecture-stage[data-astro-cid-fz6y3z2y]:hover{background-color:color-mix(in srgb, var(--c-panel) 26%, transparent)}.architecture-stage[data-astro-cid-fz6y3z2y][data-state=active]{background-color:color-mix(in srgb, var(--c-panel) 36%, transparent)}.architecture-stage[data-astro-cid-fz6y3z2y]:focus-visible{outline-offset:-3px}.stage-node[data-astro-cid-fz6y3z2y]{display:none}.stage-index[data-astro-cid-fz6y3z2y]{font-family:var(--font-mono);letter-spacing:.12em;color:var(--c-muted);font-size:10px;line-height:1.4;transition:color .18s;display:block}.stage-index[data-astro-cid-fz6y3z2y]:empty{display:none}.stage-label[data-astro-cid-fz6y3z2y]{font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted);margin-top:8px;font-size:14px;font-weight:600;line-height:1.15;transition:color .18s;display:block}.stage-detail[data-astro-cid-fz6y3z2y]{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted);margin-top:5px;font-size:10px;line-height:1.45;display:block}.architecture-stage[data-astro-cid-fz6y3z2y][data-state=active] .stage-index[data-astro-cid-fz6y3z2y]{color:var(--c-soft)}.architecture-stage[data-astro-cid-fz6y3z2y][data-state=active] .stage-label[data-astro-cid-fz6y3z2y]{color:var(--c-ink)}.architecture-detail[data-astro-cid-fz6y3z2y]{background-color:var(--c-page)}.detail-body[data-astro-cid-fz6y3z2y][hidden]{display:none}.detail-body[data-astro-cid-fz6y3z2y]:not([hidden]){animation:.26s cubic-bezier(.16,1,.3,1) both detail-enter}@keyframes detail-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (width>=1024px){.architecture-flow[data-astro-cid-fz6y3z2y]{background-color:#0000;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.architecture-stage[data-astro-cid-fz6y3z2y]{border-right:1px solid var(--c-line);padding:52px 18px 22px}.architecture-stage[data-astro-cid-fz6y3z2y]:last-child{border-right:0}.architecture-stage[data-astro-cid-fz6y3z2y]:before{content:"";background-color:var(--c-line);height:1px;position:absolute;top:32px;left:0;right:0}.stage-node[data-astro-cid-fz6y3z2y]{top:28px;left:calc(var(--node-offset) - 4px);border:1px solid var(--c-line-strong);background-color:var(--c-page);width:9px;height:9px;transition:background-color .18s,border-color .18s,box-shadow .18s;display:block;position:absolute}.architecture-stage[data-astro-cid-fz6y3z2y][data-state=active] .stage-node[data-astro-cid-fz6y3z2y]{border-color:var(--c-soft);background-color:var(--c-soft);box-shadow:0 0 0 4px color-mix(in srgb, var(--c-soft) 16%, transparent)}.stage-label[data-astro-cid-fz6y3z2y]{font-size:15px}.architecture-detail[data-astro-cid-fz6y3z2y]{min-height:148px}}@media (width>=1280px){.architecture-stage[data-astro-cid-fz6y3z2y]{padding:56px 24px 24px}.architecture-stage[data-astro-cid-fz6y3z2y]:before{top:34px}.stage-node[data-astro-cid-fz6y3z2y]{top:30px}.stage-label[data-astro-cid-fz6y3z2y]{font-size:16px}}@media (prefers-reduced-motion:reduce){.architecture-stage[data-astro-cid-fz6y3z2y],.architecture-stage[data-astro-cid-fz6y3z2y]:before,.stage-index[data-astro-cid-fz6y3z2y],.stage-label[data-astro-cid-fz6y3z2y],.stage-node[data-astro-cid-fz6y3z2y],.detail-body[data-astro-cid-fz6y3z2y]:not([hidden]){transition:none;animation:none!important}}.section-marker__rule[data-v-e6e3a3d3]{transform-origin:0}@media (prefers-reduced-motion:no-preference){.section-marker__rule[data-v-e6e3a3d3]{transition:transform .72s cubic-bezier(.16,1,.3,1)}.section-marker__meta[data-v-e6e3a3d3],.section-marker__title[data-v-e6e3a3d3],.section-marker__lead[data-v-e6e3a3d3]{transition:opacity .48s cubic-bezier(.16,1,.3,1),transform .48s cubic-bezier(.16,1,.3,1)}.section-marker__title[data-v-e6e3a3d3]{transition-delay:70ms}.section-marker__lead[data-v-e6e3a3d3]{transition-delay:.13s}.section-marker__title[data-v-e6e3a3d3]:after{transition:opacity .42s .18s}.section-marker.is-armed .section-marker__rule[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__meta[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__title[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__lead[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__title[data-v-e6e3a3d3]:after{transition:none}.section-marker.is-armed .section-marker__rule[data-v-e6e3a3d3]{transform:scaleX(0)}.section-marker.is-armed .section-marker__meta[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__title[data-v-e6e3a3d3],.section-marker.is-armed .section-marker__lead[data-v-e6e3a3d3]{opacity:0;transform:translateY(7px)}.section-marker.is-armed .section-marker__title[data-v-e6e3a3d3]:after{opacity:0}}.tech-icon[data-v-415ed95e]{overflow:visible}.tech-icon-mask[data-v-415ed95e]{-webkit-mask:var(--tech-icon-url) center / contain no-repeat;mask:var(--tech-icon-url) center / contain no-repeat;background-color:currentColor;transition:background-color .3s;display:inline-block}@media (prefers-reduced-motion:reduce){.tech-icon-mask[data-v-415ed95e]{transition:none}}.stack-tile[data-v-b9a9e667]{--tech-color:var(--tech-color-dark)}html[data-theme=light]{--tech-color:var(--tech-color-light)}.stack-tile[data-v-b9a9e667]:is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--tech-color) 60%, var(--c-line));box-shadow:0 14px 30px -24px var(--tech-color)}.stack-tile:is(:hover,:focus-visible) .stack-tile__icon[data-v-b9a9e667]{color:var(--tech-color);filter:drop-shadow(0 2px 6px color-mix(in srgb, var(--tech-color) 65%, transparent))}.stack-tile:is(:hover,:focus-visible) .stack-tile__arrow[data-v-b9a9e667]{color:var(--tech-color);transform:translate(2px,-2px)}.stack-tile__line[data-v-b9a9e667]{background-color:var(--tech-color)}@media (prefers-reduced-motion:no-preference){.stack-group__header[data-v-b9a9e667],.stack-tile-cell[data-v-b9a9e667]{transition:opacity .46s cubic-bezier(.16,1,.3,1),transform .46s cubic-bezier(.16,1,.3,1);transition-delay:var(--tile-delay,0s)}.stack-group.is-armed .stack-group__header[data-v-b9a9e667],.stack-group.is-armed .stack-tile-cell[data-v-b9a9e667]{opacity:0;transition:none;transform:translateY(9px)}}@media (prefers-reduced-motion:reduce){.stack-tile:is(:hover,:focus-visible) .stack-tile__arrow[data-v-b9a9e667]{transform:none}}.experience-rail__base[data-v-eec6ca85],.experience-rail__trace[data-v-eec6ca85]{inset-block:0;width:1px;position:absolute;left:0}.experience-rail__base[data-v-eec6ca85]{background-color:var(--c-line)}.experience-rail__trace[data-v-eec6ca85]{background-image:linear-gradient(to bottom, color-mix(in srgb, var(--c-soft) 65%, transparent), var(--c-aqua) 72%, color-mix(in srgb, var(--c-aqua) 35%, transparent) 100%);opacity:.9}.experience-dot[data-v-eec6ca85]{background-color:var(--c-muted);border-radius:9999px;width:8px;height:8px;position:absolute;top:2rem;left:50%;transform:translate(-50%)}@media (width>=768px){.experience-dot[data-v-eec6ca85]{top:2.25rem}}.experience-dot.is-live[data-v-eec6ca85]{background-color:var(--c-soft);box-shadow:0 0 0 4px color-mix(in srgb, var(--c-soft) 12%, transparent)}.experience-dot__ring[data-v-eec6ca85]{border:1px solid var(--c-soft);opacity:0;border-radius:9999px;position:absolute;inset:-1px}.experience-branch[data-v-eec6ca85]{opacity:0;transform-origin:0;background-image:linear-gradient(to right, var(--c-soft), transparent);width:1.5rem;height:1px;display:none;position:absolute;top:calc(2.25rem + 3.5px);left:1px;transform:scaleX(0)}@media (width>=768px){.experience-branch[data-v-eec6ca85]{display:block}}@media (width>=1024px){.experience-branch[data-v-eec6ca85]{width:2.5rem}}@media (prefers-reduced-motion:no-preference){.experience-entry [data-experience-block][data-v-eec6ca85]{transition:opacity .46s cubic-bezier(.16,1,.3,1),transform .46s cubic-bezier(.16,1,.3,1);transition-delay:var(--block-delay,0s)}.experience-entry.is-armed [data-experience-block][data-v-eec6ca85]{opacity:0;transition:none;transform:translateY(9px)}.experience-rail__trace[data-v-eec6ca85]{transform-origin:top;transform:scaleY(0)}.is-traced .experience-rail__trace[data-v-eec6ca85]{animation:.9s cubic-bezier(.65,0,.35,1) both experience-rail-draw-eec6ca85}.is-traced .experience-dot__ring[data-v-eec6ca85]{animation:.78s cubic-bezier(.16,1,.3,1) both experience-ping-eec6ca85}.is-traced .experience-branch[data-v-eec6ca85]{animation:.62s cubic-bezier(.16,1,.3,1) .22s both experience-branch-eec6ca85}}@keyframes experience-rail-draw-eec6ca85{0%{opacity:.35;transform:scaleY(0)}18%{opacity:1}to{opacity:.9;transform:scaleY(1)}}@keyframes experience-branch-eec6ca85{0%{opacity:0;transform:scaleX(0)}55%{opacity:.9}to{opacity:.5;transform:scaleX(1)}}@keyframes experience-ping-eec6ca85{0%{opacity:.85;transform:scale(.7)}65%{opacity:.18}to{opacity:0;transform:scale(3)}}.carousel-track[data-v-6fb22a97]{scrollbar-color:var(--c-line-strong) transparent;scrollbar-width:thin}.carousel-track[data-v-6fb22a97]::-webkit-scrollbar{height:6px}.carousel-track[data-v-6fb22a97]::-webkit-scrollbar-track{background:0 0}.carousel-track[data-v-6fb22a97]::-webkit-scrollbar-thumb{background:var(--c-line-strong);border-radius:9999px}@media (prefers-reduced-motion:no-preference){.featured-copy[data-v-50a49fc1]>*{transition:opacity .46s cubic-bezier(.16,1,.3,1),transform .46s cubic-bezier(.16,1,.3,1)}.featured-copy__title[data-v-50a49fc1]{transition-delay:55ms}.featured-copy__meta[data-v-50a49fc1]{transition-delay:.1s}.featured-copy__description[data-v-50a49fc1]{transition-delay:.145s}.featured-copy__tech[data-v-50a49fc1]{transition-delay:.19s}.featured-copy__relations[data-v-50a49fc1]{transition-delay:.235s}.featured-copy__code[data-v-50a49fc1]{transition-delay:.28s}.featured-copy__actions[data-v-50a49fc1]{transition-delay:.315s}.featured-project.is-armed .featured-copy[data-v-50a49fc1]>*{opacity:0;transition:none;transform:translateY(9px)}}.code-disclosure>summary[data-v-50a49fc1]::-webkit-details-marker{display:none}.code-disclosure__close-label[data-v-50a49fc1],.code-disclosure[open] .code-disclosure__open-label[data-v-50a49fc1]{display:none}.code-disclosure[open] .code-disclosure__close-label[data-v-50a49fc1]{display:inline}.code-disclosure__chevron[data-v-50a49fc1]{transition:transform .18s}.code-disclosure[open] .code-disclosure__chevron[data-v-50a49fc1]{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.code-disclosure__chevron[data-v-50a49fc1]{transition:none}}.education-item__trace[data-v-e88b8693]{opacity:0;transform-origin:0;background-image:linear-gradient(to right, var(--c-soft), var(--c-aqua) 62%, transparent);height:1px;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}@media (prefers-reduced-motion:no-preference){.education-item[data-v-e88b8693]>:not(.education-item__trace){transition:opacity .48s cubic-bezier(.16,1,.3,1),transform .48s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--reveal-order,0) * 70ms)}.education-item.is-armed[data-v-e88b8693]>:not(.education-item__trace){opacity:0;transition:none;transform:translateY(9px)}.education-item.is-shown .education-item__trace[data-v-e88b8693]{animation:education-trace-e88b8693 .92s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 70ms) both}}@keyframes education-trace-e88b8693{0%{opacity:0;transform:scaleX(0)}14%{opacity:.9}62%{opacity:.9;transform:scaleX(1)}to{opacity:1;transform:scaleX(1)}}.certification-item__trace[data-v-4a8cf640]{opacity:0;transform-origin:0;background-image:linear-gradient(to right, transparent, var(--c-soft) 18%, var(--c-aqua) 82%, transparent);height:1px;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}@media (prefers-reduced-motion:no-preference){.certification-item[data-v-4a8cf640]>:not(.certification-item__trace){transition:opacity .44s cubic-bezier(.16,1,.3,1),transform .44s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--reveal-order,0) * 55ms)}.certification-item.is-armed[data-v-4a8cf640]>:not(.certification-item__trace){opacity:0;transition:none;transform:translateY(8px)}.certification-item.is-shown .certification-item__trace[data-v-4a8cf640]{animation:certification-trace-4a8cf640 .9s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 55ms) both}}@keyframes certification-trace-4a8cf640{0%{opacity:0;transform:scaleX(0)}16%{opacity:.85}64%{opacity:.85;transform:scaleX(1)}to{opacity:1;transform:scaleX(1)}}.blog-card__register[data-v-d734d518]{opacity:0;transform-origin:0;background-image:linear-gradient(to right, var(--c-soft), var(--c-aqua) 58%, transparent 100%);height:1px;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}@media (prefers-reduced-motion:no-preference){.blog-card[data-v-d734d518]{transition:opacity .48s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 70ms), transform .48s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 70ms), border-color .18s ease, background-color .18s ease}.blog-card.is-armed[data-v-d734d518]{opacity:0;transition:none;transform:translateY(10px)}.blog-card.is-shown .blog-card__register[data-v-d734d518]{animation:blog-register-d734d518 .96s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 70ms) both}}@keyframes blog-register-d734d518{0%{opacity:0;transform:scaleX(0)}16%{opacity:.9}60%{opacity:.9;transform:scaleX(1)}to{opacity:1;transform:scaleX(1)}}.contact-texture[data-v-4ac34a7c]{--dot-field-focus:0% 0%;--dot-field-reach:40% 100%;--dot-field-strength:60%;--dot-field-fade:70%}.contact-pill[data-copied=true][data-v-4ac34a7c]{border-color:color-mix(in srgb, var(--c-soft) 70%, transparent);color:var(--c-soft)}.contact-copy-trace[data-v-4ac34a7c]{inset-inline:0;pointer-events:none;opacity:0;transform-origin:0;background-image:linear-gradient(90deg, transparent, var(--c-soft) 12%, var(--c-aqua) 82%, transparent);height:1px;position:absolute;bottom:-7px;transform:scaleX(0)}@media (prefers-reduced-motion:no-preference){.contact-copy-trace[data-active=true][data-v-4ac34a7c]{animation:.56s cubic-bezier(.16,1,.3,1) both contact-copy-trace-4ac34a7c}.contact-panel[data-v-4ac34a7c]{transition:opacity .48s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 80ms), transform .48s cubic-bezier(.16, 1, .3, 1) calc(var(--reveal-order,0) * 80ms)}.contact-panel.is-armed[data-v-4ac34a7c]{opacity:0;transition:none;transform:translateY(10px)}}@keyframes contact-copy-trace-4ac34a7c{0%{opacity:0;transform:scaleX(0)}18%{opacity:1}72%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}
