*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ul,dl,dd{margin:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--color-bg:#050505;--color-bg-strong:#0a0a0a;--color-surface:#0a0a0ae6;--color-surface-soft:#0e0e0ebd;--color-text:#f0f0f0;--color-muted:#999;--color-border:#ffffff1a;--color-border-strong:#ffffff38;--color-accent:#fff;--color-signal:#ffffffe0;--color-signal-soft:#ffffff1a;--color-signal-strong:#fffffff5;--color-panel-top:#ffffff09;--color-panel-bottom:#050505c2;--color-panel-sheen:#ffffff06;--color-chip-bg:#ffffff0a;--color-chip-border:#ffffff1a;--color-chip-text:#f0f0f0f0;--color-selection:#ffffff2e;--color-photo-bg:#efeee9;--color-button-primary-bg:#fff;--color-button-primary-text:#050505;--color-button-secondary-bg:#ffffff0a;--color-grid-line:#ffffff0a;--color-body-radial-1:#ffffff0a;--color-body-radial-2:#ffffff05;--color-body-start:#050505;--color-body-mid:#080808;--color-body-end:#050505;--shadow-panel:0 28px 70px #00000052;--shadow-article-panel:0 28px 70px #00000052;--shadow-article-card:0 24px 60px #00000047;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--max-width:1180px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f6f5f2;--color-bg-strong:#ebe8e2;--color-surface:#ffffffeb;--color-surface-soft:#ffffffdb;--color-text:#131313;--color-muted:#5f5f5f;--color-border:#1313131f;--color-border-strong:#13131338;--color-accent:#111;--color-panel-top:#ffffffe6;--color-panel-bottom:#ffffffc2;--color-panel-sheen:#0000000a;--color-chip-bg:#00000008;--color-chip-border:#1313131f;--color-chip-text:#1a1a1a;--color-selection:#1313131f;--color-photo-bg:#ece8e1;--color-button-primary-bg:#111;--color-button-primary-text:#f6f5f2;--color-button-secondary-bg:#00000008;--color-grid-line:#0000000a;--color-body-radial-1:#0000000d;--color-body-radial-2:#00000008;--color-body-start:#faf9f6;--color-body-mid:#f2efe8;--color-body-end:#f6f5f2;--shadow-panel:0 18px 52px #00000014;--shadow-article-panel:0 20px 56px #7a65390d, 0 10px 24px #13131306;--shadow-article-card:0 14px 34px #7a65390a, 0 6px 16px #13131305}body{min-height:100vh;font-family:var(--font-sans);color:var(--color-text);background:radial-gradient(circle at top left, var(--color-body-radial-1), transparent 28%), radial-gradient(circle at top right, var(--color-body-radial-2), transparent 22%), linear-gradient(180deg, var(--color-body-start) 0%, var(--color-body-mid) 48%, var(--color-body-end) 100%);overflow-x:hidden}body:before,body:after{content:"";pointer-events:none;position:fixed;inset:0}body:before{background:linear-gradient(var(--color-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid-line) 1px, transparent 1px);opacity:.42;z-index:-2;background-size:88px 88px;animation:28s linear infinite body-grid-drift;-webkit-mask-image:linear-gradient(#0009,#0000 70%);mask-image:linear-gradient(#0009,#0000 70%)}body:after{opacity:.9;z-index:-3;background:radial-gradient(circle at 18% 14%,#ffffff0f,#0000 24%),radial-gradient(circle at 82% 8%,#ffffff0a,#0000 22%),linear-gradient(#ffffff05,#0000 26%);animation:18s ease-in-out infinite alternate body-glow-drift}.starfield{z-index:-1;pointer-events:none;position:fixed;inset:0}@keyframes body-grid-drift{0%{transform:translate(0,0)}to{transform:translate(-22px,18px)}}@keyframes body-glow-drift{0%{transform:translate(0,0)scale(1)}to{transform:translateY(16px)scale(1.04)}}::selection{background:var(--color-selection);color:var(--color-text)}[data-reveal]{opacity:0;filter:blur(2px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),filter .7s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}[data-reveal].is-visible{opacity:1;filter:blur();transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}.marquee__track{animation:none;transform:none}}.shell{width:min(calc(100% - 40px), var(--max-width));margin:0 auto}.page-shell{z-index:2;position:relative}.skip-link{z-index:40;position:fixed;top:14px;left:50%;transform:translate(-50%,-160%)}.site-header{z-index:20;background:0 0;padding:14px 0;position:sticky;top:0}.site-header__inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding:0;display:grid;position:relative}.site-header__panel{justify-content:center;justify-self:center;min-width:0;display:flex}.site-header__controls{justify-content:flex-end;justify-self:end;align-items:center;gap:8px;display:flex}.site-main{padding-bottom:32px;scroll-margin-top:96px}.contact-section{scroll-margin-top:96px}.page-section,.contact-section{padding:24px 0 0}.page-hero{padding:42px 0 22px}.detail-grid,.experience-grid,.stack-grid,.use-case-grid{gap:18px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-grid,.stack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.use-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{padding:26px 0 42px}.site-footer__shell{display:grid}.site-footer__bar{border-top:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px 28px;padding:18px 0;display:grid}.site-footer__nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}@media (width<=1080px){.experience-grid,.stack-grid,.use-case-grid{grid-template-columns:1fr}}@media (width<=760px){.shell{width:min(calc(100% - 24px), var(--max-width))}.site-header__inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.site-header__panel{z-index:5;width:100%;position:absolute;top:calc(100% + 8px);left:0;right:0}.site-header__panel[hidden]{display:none}.detail-grid{grid-template-columns:1fr}.site-nav{background:var(--color-surface);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;flex-direction:column;align-items:stretch;gap:2px;margin-top:8px;padding:8px}.site-nav__indicator{display:none}.site-nav__link{text-align:center;border-radius:12px;padding:12px 16px;font-size:.88rem}.site-nav__link.is-active{background:var(--color-chip-bg)}.site-header__controls{gap:8px}.nav-toggle{flex-direction:column;justify-content:center;align-items:center;display:flex}.contact-form__row{grid-template-columns:1fr}.contact-hero__actions{flex-direction:column;gap:14px}.site-footer__bar{grid-template-columns:1fr;align-items:start;gap:14px;padding:16px 0}.site-footer__bar>.brand{display:none}.site-footer__nav{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0}.site-main{padding-bottom:26px}.page-section,.contact-section{padding-top:22px}.page-hero{padding:24px 0 16px}}.section-kicker{letter-spacing:.16em;text-transform:uppercase}.brand,.site-nav__link,.site-footer__link{letter-spacing:.01em;text-transform:none}.skip-link{border:1px solid var(--color-border-strong);background:var(--color-chip-bg);min-height:38px;color:var(--color-text);border-radius:999px;padding:0 14px;font-size:.78rem;font-weight:600}.skip-link:focus-visible{border-color:var(--color-accent);transform:translate(-50%)}.brand{border:1px solid var(--color-border);background:var(--color-chip-bg);-webkit-backdrop-filter:blur(16px);color:var(--color-text);border-radius:999px;justify-self:start;align-items:baseline;gap:10px;min-width:0;padding:8px 12px;display:inline-flex}.brand__name{font-size:.88rem;font-weight:700}.brand__role{color:var(--color-muted);letter-spacing:.01em;font-size:.88rem;font-weight:400}.site-nav{background:var(--color-chip-bg);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:22px;align-items:center;gap:2px;padding:4px;display:flex;position:relative}.site-nav__indicator{background:var(--color-surface);border:1px solid var(--color-border-strong);pointer-events:none;opacity:0;border-radius:18px;height:calc(100% - 8px);transition:transform .32s cubic-bezier(.16,1,.3,1),width .32s cubic-bezier(.16,1,.3,1),opacity .2s;position:absolute;top:4px;left:0}.site-nav__link{z-index:1;color:var(--color-muted);white-space:nowrap;border-radius:18px;align-items:center;padding:7px 14px;font-size:.82rem;font-weight:500;transition:color .2s;display:inline-flex;position:relative}.site-nav__link:hover,.site-nav__link.is-active{color:var(--color-text)}.site-footer__link{width:fit-content;color:var(--color-muted);font-size:.84rem;font-weight:500;display:inline-flex;position:relative}.site-footer__link:after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), transparent);transform-origin:50%;width:100%;height:1px;transition:transform .22s;position:absolute;bottom:-6px;left:0;transform:scaleX(0)}.site-footer__link:hover:after,.site-footer__link:focus-visible:after{transform:scaleX(1)}.site-footer__link.is-active{color:var(--color-text)}.nav-toggle{border:1px solid var(--color-border-strong);background:var(--color-chip-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;transition:transform .18s,border-color .18s;display:none}.nav-toggle__bar{background:var(--color-text);border-radius:1px;width:18px;height:2px;transition:transform .3s,opacity .2s;display:block}.nav-toggle__bar+.nav-toggle__bar{margin-top:4px}.site-header.is-nav-open .nav-toggle{border-color:var(--color-accent)}.site-header.is-nav-open .nav-toggle__bar:first-child{transform:translateY(6px)rotate(45deg)}.site-header.is-nav-open .nav-toggle__bar:nth-child(2){opacity:0}.site-header.is-nav-open .nav-toggle__bar:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.theme-toggle{border:1px solid var(--color-border-strong);background:var(--color-chip-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:38px;height:38px;color:var(--color-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:transform .18s,border-color .18s;display:inline-flex}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:var(--color-accent);transform:translateY(-1px)}.theme-toggle svg{width:16px;height:16px}@media (width<=760px){.brand{gap:8px}.brand__role{display:none}}.contact-hero{text-align:center;max-width:860px;margin:0 auto 28px;padding:0 0 20px}.contact-hero .section-kicker{margin-bottom:14px}.contact-hero__title{letter-spacing:-.06em;text-wrap:balance;margin-top:0;font-size:clamp(44px,7vw,90px);font-weight:700;line-height:.95}.contact-hero__title em{color:var(--color-muted);font-style:italic}.contact-hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:30px;display:flex}.contact-tabs{border:1px solid var(--color-border);-webkit-backdrop-filter:blur(18px);background:#ffffff08;border-radius:999px;align-items:center;padding:4px;display:inline-flex}.contact-tab{min-height:46px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-size:.84rem;font-weight:600;transition:transform .18s,background-color .2s,border-color .2s,color .2s;display:inline-flex}.contact-tab svg{flex-shrink:0;width:16px;height:16px}.contact-tab.is-active{color:var(--color-text);background:linear-gradient(#ffffff1f,#ffffff0d);box-shadow:inset 0 1px #ffffff24,0 10px 24px #0000002e}.contact-tab:hover:not(.is-active){color:var(--color-text);transform:translateY(-1px)}.contact-socials{align-items:center;gap:8px;display:flex}.contact-social{border:1px solid var(--color-border);width:42px;height:42px;color:var(--color-muted);background:#ffffff08;border-radius:999px;justify-content:center;align-items:center;transition:transform .18s,color .18s,border-color .18s,background-color .18s;display:flex}.contact-social:hover{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0f;transform:translateY(-1px)}.contact-social svg{width:18px;height:18px}.contact-body{background:linear-gradient(#ffffff0d,#050505db);border-color:#ffffff1f;max-width:none;margin:0;padding:20px;overflow:hidden}.contact-body:before,.contact-panel{display:none}.contact-panel.is-active{display:block}.contact-booking{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.contact-booking__rail,.contact-scheduler{border:1px solid var(--color-border);border-radius:calc(var(--radius-xl) - 6px);background:linear-gradient(#ffffff09,#00000080);padding:24px;display:grid;position:relative;overflow:hidden}.contact-booking__rail{align-content:start;justify-items:start;gap:20px}.contact-booking__profile{align-items:center;gap:14px;display:flex}.contact-booking__avatar{border:1px solid var(--color-border);object-fit:cover;object-position:50% 12%;background:var(--color-photo-bg);border-radius:50%;width:52px;height:52px}.contact-booking__profile-copy{gap:4px;display:grid}.contact-booking__name{color:var(--color-text);font-size:1rem;font-weight:600}.contact-booking__role{color:var(--color-muted);font-size:.86rem}.contact-booking__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.contact-booking__fact{border:1px solid var(--color-border);background:var(--color-chip-bg);border-radius:18px;gap:5px;padding:13px 14px;display:grid}.contact-booking__fact-label{color:var(--color-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:600}.contact-booking__fact-value{color:var(--color-text);font-size:.94rem;font-weight:600}.contact-booking__actions{flex-wrap:wrap;gap:10px;display:flex}.contact-booking__primary,.contact-booking__secondary{text-align:center;flex:140px}.contact-scheduler{align-content:start;gap:20px;min-height:100%}.contact-scheduler__nav{justify-content:space-between;align-items:center;gap:12px;display:flex}.contact-scheduler__month-label{color:var(--color-text);letter-spacing:-.02em;font-size:1.1rem;font-weight:700}.contact-scheduler__nav-buttons{gap:6px;display:flex}.contact-scheduler__nav-btn{border:1px solid var(--color-border);background:var(--color-chip-bg);width:36px;height:36px;color:var(--color-muted);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:border-color .18s,color .18s;display:flex}.contact-scheduler__nav-btn:hover:not(:disabled){border-color:var(--color-border-strong);color:var(--color-text)}.contact-scheduler__nav-btn:disabled{opacity:.3;pointer-events:none}.contact-scheduler__selection{color:var(--color-muted);font-size:.88rem;line-height:1.68}.contact-scheduler__days{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.contact-scheduler__day{border:1px solid var(--color-border);background:var(--color-chip-bg);min-height:96px;color:var(--color-muted);text-align:left;border-radius:20px;gap:4px;padding:14px 12px;transition:transform .18s,border-color .18s,background-color .18s,color .18s;display:grid}.contact-scheduler__day:hover,.contact-scheduler__day:focus-visible{border-color:var(--color-border-strong);color:var(--color-text);transform:translateY(-1px)}.contact-scheduler__day.is-active{border-color:var(--color-border-strong);color:var(--color-text);background:#ffffff17}.contact-scheduler__day-weekday{letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:600}.contact-scheduler__day-number{color:var(--color-text);font-size:1.8rem;font-weight:700;line-height:1}.contact-scheduler__day-month{font-size:.88rem}.contact-scheduler__slot-wrap{gap:12px;display:grid}.contact-scheduler__slot-label{color:var(--color-muted);font-size:.8rem;font-weight:600}.contact-scheduler__slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.contact-scheduler__slot{border:1px solid var(--color-border);background:var(--color-button-secondary-bg);min-height:44px;color:var(--color-text);border-radius:12px;padding:0 10px;font-size:.82rem;font-weight:600;transition:transform .18s,border-color .18s,background-color .18s,color .18s}.contact-scheduler__slot:hover,.contact-scheduler__slot:focus-visible{border-color:var(--color-border-strong);transform:translateY(-1px)}.contact-scheduler__slot.is-active{border-color:var(--color-accent);background:var(--color-button-primary-bg);color:var(--color-button-primary-text)}.contact-scheduler__footer{gap:12px;display:grid}.contact-scheduler__cta{width:fit-content}.contact-form{border:1px solid var(--color-border);border-radius:calc(var(--radius-xl) - 6px);background:linear-gradient(#ffffff09,#00000080);gap:20px;padding:24px;display:grid}.contact-form__row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form__field{gap:8px;display:grid}.contact-form__label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);font-size:.72rem;font-weight:600}.contact-form__control{border:1px solid var(--color-border);background:var(--color-chip-bg);color:var(--color-text);font-family:var(--font-sans);border-radius:12px;outline:none;padding:12px 16px;font-size:.88rem;transition:border-color .18s}.contact-form__control::placeholder{color:var(--color-muted);opacity:.5}.contact-form__control:focus{border-color:var(--color-border-strong)}.contact-form__select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.contact-form__textarea{resize:vertical;min-height:120px;font-family:var(--font-sans)}.contact-form__submit{justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 24px;font-size:.9rem;display:inline-flex}.contact-form__submit svg{width:16px;height:16px}@media (width<=1080px){.contact-booking{grid-template-columns:1fr}.contact-scheduler__days{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=760px){.contact-hero{margin-bottom:22px}.contact-hero__title{font-size:clamp(32px,10vw,56px)}.contact-hero__actions{gap:14px}.contact-tabs{justify-content:stretch;width:100%}.contact-tab{flex:1 1 0;justify-content:center;padding:0 14px}.contact-body{padding:12px}.contact-booking__rail,.contact-scheduler{padding:18px}.contact-booking__facts{grid-template-columns:1fr 1fr}.contact-scheduler__days{grid-template-columns:repeat(5,minmax(0,1fr))}.contact-scheduler__slots{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-booking__actions{flex-direction:column}.contact-booking__primary,.contact-booking__secondary,.contact-scheduler__cta{flex:none;width:100%}.contact-scheduler__day{min-height:76px;padding:10px 8px}.contact-form{padding:18px}.contact-form__row{grid-template-columns:1fr}}.site-main:focus{outline:none}.panel{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--color-panel-top), var(--color-panel-bottom));box-shadow:var(--shadow-panel);position:relative;overflow:hidden}.panel:before{content:"";background:linear-gradient(180deg, var(--color-panel-sheen), transparent 40%);pointer-events:none;position:absolute;inset:0}.panel--interactive:hover{border-color:var(--color-border-strong)}.portrait-card,.page-lead,.detail-card,.timeline-card,.use-case-card{padding:28px}.page-lead{align-content:start;display:grid}.section-kicker{color:var(--color-accent);font-size:.75rem;font-family:var(--font-sans);font-weight:500}.page-title,.card-title{letter-spacing:-.04em;text-wrap:balance;line-height:.92}.page-title{font-size:clamp(30px,4.2vw,52px);font-weight:700}.page-title--large{margin-top:8px}.page-intro,.card-copy{color:var(--color-muted)}.page-intro{max-width:52ch;margin-top:16px;font-size:16px;line-height:1.72}.button-row{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.button{border:1px solid var(--color-border-strong);min-height:46px;font-family:var(--font-sans);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;padding:0 18px;font-weight:700;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:inline-flex}.button:hover,.button:focus-visible{border-color:var(--color-accent);transform:translateY(-1px)}.button--primary{background:var(--color-button-primary-bg);color:var(--color-button-primary-text);font-weight:700;transition:transform .18s,border-color .18s,background-color .18s,box-shadow .28s;box-shadow:0 0 #fff0}.button--primary:hover{box-shadow:0 0 24px #ffffff26}:root[data-theme=light] .button--primary:hover{box-shadow:0 0 24px #0000001a}.button--secondary{color:var(--color-text);background:var(--color-button-secondary-bg)}.portrait-frame{isolation:isolate;border-radius:calc(var(--radius-xl) - 6px);aspect-ratio:2/3;border:1px solid var(--color-chip-border);background:linear-gradient(#f3efe7 0%,#dfd8cb 100%);position:relative;overflow:hidden}.portrait-frame:before,.portrait-frame:after{content:"";pointer-events:none;position:absolute;inset:0}.portrait-frame:before{z-index:1;background:radial-gradient(at 52% 38%,#0e0e0e99 0%,#0e0e0e47 24%,#0e0e0e00 56%),radial-gradient(at 50% 68%,#0a0a0a57 0%,#0a0a0a29 28%,#0a0a0a00 62%),radial-gradient(circle at 50% 16%,#ffffffb8,#ffffff4d 22%,#0000 42%)}.portrait-frame:after{z-index:2;opacity:.78;background:radial-gradient(circle at 50% 18%,#ffffff2e,#0000 24%),radial-gradient(circle,#0000 0% 40%,#08080814 84%,#08080829 100%)}.portrait-frame__image{z-index:3;object-fit:cover;object-position:center top;transform-origin:50% 10%;will-change:transform;filter:brightness(1.01)contrast(1.03)saturate(.98);width:100%;height:100%;animation:6.8s cubic-bezier(.45,0,.2,1) infinite alternate portrait-drift;display:block;position:relative;transform:translate(0,0)scale(1.07)}.section-head{gap:8px;max-width:860px;margin-bottom:24px;display:grid}.card-title{font-size:28px;font-weight:700}.card-copy{margin-top:12px;font-size:15px;line-height:1.72}.marquee__viewport{padding-inline:2px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 2.5% 97.5%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 2.5% 97.5%,#0000 100%)}.marquee__track{align-items:stretch;gap:16px;width:max-content;padding:4px;animation:26s linear infinite paused marquee-scroll;display:flex}.marquee__track.is-reverse{animation-direction:reverse}.marquee__track--interactive{transform:translate3d(calc(-1 * var(--marquee-offset,0px)), 0, 0);will-change:transform;animation:none}.marquee__track.is-active{animation-play-state:running}.marquee__track.is-active:hover,.marquee__track.is-active:focus-within{animation-play-state:paused}.marquee__viewport--interactive{overscroll-behavior-x:contain}.marquee__group{align-items:center;gap:16px;display:flex}.logo-marquee__shell{gap:18px;padding:20px;display:grid}.logo-marquee__rows{gap:18px;display:grid}.logo-marquee__row{gap:12px;display:grid}.logo-marquee__row .marquee__track{animation-duration:30s}.logo-marquee__label{color:var(--color-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.logo-marquee__item{border:1px solid var(--color-chip-border);background:var(--color-chip-bg);border-radius:24px;flex:none;align-content:center;justify-items:center;gap:8px;width:84px;height:84px;padding:12px 8px;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:inline-grid;position:relative}.logo-marquee__item:hover,.logo-marquee__item:focus-visible{border-color:var(--color-accent);background:var(--color-surface-soft);transform:translateY(-2px)}.logo-marquee__icon{object-fit:contain;width:36px;height:36px}.logo-marquee__icon--wide{width:50px;height:18px}.logo-marquee__fallback{color:var(--color-text);letter-spacing:.08em;font-size:12px;font-weight:700;display:none}.logo-marquee__name{max-width:72px;color:var(--color-muted);text-align:center;text-wrap:balance;font-size:10px;font-weight:600;line-height:1.2;display:none}.logo-marquee__item.is-fallback .logo-marquee__icon{display:none}.logo-marquee__item.is-fallback .logo-marquee__fallback{display:block}@keyframes portrait-drift{0%{transform:translate(-4px,2px)scale(1.07)}50%{transform:translate(6px,-6px)scale(1.092)}to{transform:translate(1px,-4px)scale(1.082)}}.media-marquee__shell{content-visibility:auto;contain-intrinsic-size:760px;gap:18px;padding:20px;display:grid}.media-marquee__rows{gap:18px;display:grid}.media-marquee__row{gap:12px;display:grid}.media-marquee__row .marquee__track{animation-duration:64s}.event-card{aspect-ratio:4/3;border:1px solid var(--color-chip-border);background:var(--color-chip-bg);width:min(252px,70vw);box-shadow:var(--shadow-article-card);contain:layout paint;border-radius:24px;flex:none;margin:0;position:relative;overflow:hidden}.event-card--poster{aspect-ratio:1;width:min(228px,58vw)}.event-card:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#00000029 100%);height:34%;position:absolute;inset:auto 0 0}:root[data-theme=light] .event-card:after{background:linear-gradient(#0000 0%,#00000014 100%)}.event-card__image{object-fit:cover;width:100%;height:100%;display:block}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translateX(calc(-1 * var(--marquee-shift,0px)))}}.detail-card,.timeline-card,.use-case-card{align-content:start;gap:10px;display:grid}.panel--interactive{transition:transform .18s,border-color .18s,background-color .18s}.panel--interactive:hover,.panel--interactive:focus-visible{border-color:var(--color-accent);transform:translateY(-2px)}.inline-link{width:fit-content;color:var(--color-text);font-size:14px;font-weight:600;display:inline-flex}.inline-link--spaced{margin-top:auto}.tag-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.tag-row--dense{margin-top:18px}.tag{border:1px solid var(--color-chip-border);background:var(--color-chip-bg);color:var(--color-chip-text);border-radius:999px;padding:8px 12px;font-size:13px}.timeline-card__meta{color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:14px;font-size:.8rem;display:flex}.bullet-list{color:var(--color-muted);gap:10px;margin:14px 0 0;padding-left:18px;font-size:15px;line-height:1.72;display:grid}.detail-breadcrumbs{flex-wrap:wrap;gap:10px 16px;margin-top:18px;display:flex}.detail-article{gap:18px;display:grid}.detail-article__section{gap:14px;padding:24px;display:grid}.detail-article__title{letter-spacing:-.03em;text-wrap:balance;font-size:26px;font-weight:700;line-height:1.08}.detail-article__copy,.detail-article__caption{color:var(--color-muted);font-size:15px;line-height:1.72}.detail-article__code{gap:10px;display:grid}.detail-article__code-label{color:var(--color-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.detail-article__pre{border-radius:calc(var(--radius-lg) - 4px);border:1px solid var(--color-chip-border);background:#0000003d;margin:0;padding:18px;overflow:auto}.detail-article__code-text{font-family:SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;line-height:1.65}.detail-article__figure{gap:10px;display:grid}.detail-article__image-wrap{border-radius:calc(var(--radius-lg) - 4px);border:1px solid var(--color-chip-border);background:var(--color-chip-bg);padding:12px}.detail-article__image{border-radius:calc(var(--radius-lg) - 10px);width:100%;display:block}.timeline-card__location{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem}.floating-tooltip{z-index:50;border:1px solid var(--color-chip-border);background:var(--color-surface);color:var(--color-text);white-space:nowrap;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(10px);border-radius:999px;padding:7px 11px;font-size:11px;line-height:1;transition:opacity .18s,transform .18s;position:fixed;top:0;left:0;transform:translate(-50%,calc(6px - 100%))}.floating-tooltip.is-visible{opacity:1;transform:translate(-50%,-100%)}@media (width<=760px){.portrait-card,.page-lead,.detail-card,.timeline-card,.use-case-card{padding:22px}.skip-link{top:10px}.brand{flex-wrap:wrap;align-items:flex-start;gap:4px 8px}.brand__role{font-size:.95rem}.site-footer__link{justify-content:space-between;width:100%;padding:8px 0}.site-footer__link:after{display:none}.page-title{font-size:34px}.page-intro,.card-copy,.bullet-list{font-size:15px;line-height:1.68}.section-head{gap:6px;margin-bottom:18px}.media-marquee__shell,.logo-marquee__shell{padding:16px}.logo-marquee__item{border-radius:22px;width:auto;min-width:88px;height:auto;min-height:84px}.logo-marquee__icon{width:32px;height:32px}.logo-marquee__icon--wide{width:44px;height:16px}.logo-marquee__name{display:block}.event-card{border-radius:20px;width:min(196px,64vw)}.event-card--poster{width:min(170px,54vw)}.button-row{gap:10px}.detail-breadcrumbs{margin-top:16px}.detail-article__section{padding:22px}.detail-article__title{font-size:22px}.timeline-card__meta{gap:6px 16px}}.home-main{padding-bottom:48px}.home-hero-v3{gap:22px;padding:46px 0 8px;display:grid}.home-hero-v3__grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,420px);grid-template-areas:"copy portrait""copy support-kicker""copy support";align-items:start;gap:14px 28px;display:grid}.home-hero-v3__copy{grid-area:copy;align-content:center;padding:16px 0 0;display:grid}.home-hero-v3__title{letter-spacing:-.075em;text-wrap:balance;max-width:10ch;margin-top:18px;font-size:clamp(54px,7.8vw,104px);font-weight:800;line-height:.88;overflow:visible}.home-hero-v3__intro{max-width:40ch;color:var(--color-muted);margin-top:22px;font-size:clamp(18px,2vw,21px);line-height:1.66}.home-hero-v3__actions{margin-top:28px}.hand-underline{white-space:nowrap;padding-bottom:.08em;display:inline-block;position:relative}.hand-underline:after{content:"";background:var(--color-text);transform-origin:0;border-radius:2px;width:108%;height:4px;animation:.7s cubic-bezier(.22,.61,.36,1) .8s forwards underline-draw;position:absolute;bottom:0;left:-4%;transform:rotate(-1.5deg)scaleX(0)}@keyframes underline-draw{to{transform:rotate(-1.5deg)scaleX(1)}}.home-hero-v3__portrait{grid-area:portrait;padding:18px}.home-hero-v3__portrait .portrait-frame{aspect-ratio:.82}.home-hero-v3__support{grid-area:support;align-content:start;gap:18px;height:100%;padding:22px;display:grid}.home-hero-v3__support-kicker{grid-area:support-kicker;padding-left:4px}.home-hero-v3__support-list{gap:16px;display:grid}.home-hero-v3__support-item{border-top:1px solid var(--color-border);gap:6px;padding-top:16px;display:grid}.home-hero-v3__support-item:first-child{border-top:0;padding-top:0}.home-hero-v3__support-label{color:var(--color-text);letter-spacing:.1em;text-transform:uppercase;font-size:.84rem;font-weight:700}.home-hero-v3__support-copy{color:var(--color-muted);font-size:.92rem;line-height:1.6}.home-stage{--stage-progress:0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:30px;padding:54px 0 0;display:grid}.home-stage__lead{align-content:start;gap:18px;display:grid;position:sticky;top:98px}.home-stage__title{max-width:9ch}.home-stage__intro{max-width:34ch}.home-stage__stack{gap:18px;padding-left:28px;display:grid;position:relative}.home-stage__stack:before{content:"";background:linear-gradient(180deg, var(--color-signal) 0%, var(--color-signal) calc(var(--stage-progress) * 100%), var(--color-border) calc(var(--stage-progress) * 100%), var(--color-border) 100%);width:1px;position:absolute;top:12px;bottom:12px;left:8px}.story-card-v2{padding:26px 28px;transition:transform .26s cubic-bezier(.16,1,.3,1),border-color .26s,box-shadow .26s,background-color .26s;position:relative}.story-card-v2:before{content:"";background:var(--color-border-strong);width:10px;height:10px;box-shadow:0 0 0 6px var(--color-signal-soft);border-radius:50%;position:absolute;top:34px;left:-26px}.story-card-v2.is-active{border-color:var(--color-signal);box-shadow:var(--shadow-panel);transform:translate(-10px)}.story-card-v2.is-active:before{background:var(--color-signal-strong);box-shadow:0 0 0 8px var(--color-signal-soft)}.story-card-v2__index{color:var(--color-border-strong);letter-spacing:-.04em;text-transform:none;font-size:clamp(36px,5vw,52px);font-weight:800;line-height:1;transition:color .26s}.story-card-v2.is-active .story-card-v2__index{color:var(--color-signal)}.story-card-v2__title{letter-spacing:-.05em;margin-top:14px;font-size:clamp(28px,3.2vw,36px);line-height:.96}.story-card-v2__copy{color:var(--color-muted);margin-top:16px;font-size:.98rem;line-height:1.66}.story-card-v2--process .story-card-v2__title{max-width:12ch}.home-insights__grid{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.home-tech-credentials__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.home-tech-credentials__marquee,.home-tech-credentials__certs{height:100%}.home-tech-credentials__label{margin-bottom:2px}.home-tech-credentials__certs .proof-cert-grid{margin-top:14px}.github-heatmap{--github-cell-size:7px;--github-cell-gap:2px;border-top:1px solid var(--color-border);gap:14px;margin-top:20px;padding-top:18px;display:grid}.github-heatmap__head,.github-heatmap__footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.github-heatmap__profile,.github-heatmap__link{color:var(--color-muted);font-size:.78rem;text-decoration:none;transition:color .18s}.github-heatmap__profile:hover,.github-heatmap__profile:focus-visible,.github-heatmap__link:hover,.github-heatmap__link:focus-visible{color:var(--color-text)}.github-heatmap__summary{color:var(--color-text);font-size:.94rem;line-height:1.5}.github-heatmap__detail{min-height:1.5em;color:var(--color-muted);font-size:.78rem;line-height:1.55}.github-heatmap__calendar{-webkit-overflow-scrolling:touch;gap:8px;min-width:0;padding-bottom:2px;display:grid;overflow-x:auto}.github-heatmap__months{grid-template-columns:repeat(53, var(--github-cell-size));gap:var(--github-cell-gap);width:max-content;margin-left:28px;display:grid}.github-heatmap__month{color:var(--color-muted);font-size:.68rem;line-height:1}.github-heatmap__matrix{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px;width:max-content;display:grid}.github-heatmap__days{grid-template-rows:repeat(7, var(--github-cell-size));gap:var(--github-cell-gap);display:grid}.github-heatmap__day-label{color:var(--color-muted);font-size:.68rem;line-height:1}.github-heatmap__day-label:first-child{grid-row:2}.github-heatmap__day-label:nth-child(2){grid-row:4}.github-heatmap__day-label:nth-child(3){grid-row:6}.github-heatmap__grid{grid-template-columns:repeat(53, var(--github-cell-size));grid-template-rows:repeat(7, var(--github-cell-size));gap:var(--github-cell-gap);min-width:0;display:grid}.github-heatmap__cell,.github-heatmap__legend-cell{width:var(--github-cell-size);height:var(--github-cell-size);background:#151b23;border:0;border-radius:3px;padding:0}.github-heatmap__cell{cursor:pointer;transition:transform .16s,box-shadow .16s,filter .16s}.github-heatmap__cell:hover,.github-heatmap__cell:focus-visible,.github-heatmap__cell[data-active=true]{filter:brightness(1.08);z-index:1;transform:scale(1.18);box-shadow:0 0 0 1px #ffffff1f}.github-heatmap__cell[data-level="0"],.github-heatmap__legend-cell[data-level="0"]{background:#161b22}.github-heatmap__cell[data-level="1"],.github-heatmap__legend-cell[data-level="1"]{background:#0e4429}.github-heatmap__cell[data-level="2"],.github-heatmap__legend-cell[data-level="2"]{background:#006d32}.github-heatmap__cell[data-level="3"],.github-heatmap__legend-cell[data-level="3"]{background:#26a641}.github-heatmap__cell[data-level="4"],.github-heatmap__legend-cell[data-level="4"]{background:#39d353}.github-heatmap__legend{align-items:center;gap:6px;display:inline-flex}.github-heatmap__legend-label{color:var(--color-muted);font-size:.74rem}.insights-panel{align-content:start;gap:0;padding:28px;display:grid}.insight-list{gap:14px;margin-top:30px;display:grid}.insight-link{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-chip-bg);padding:18px 20px;transition:transform .22s,border-color .22s,background-color .22s;display:block}.insight-link:hover,.insight-link:focus-visible{border-color:var(--color-signal);background:var(--color-button-secondary-bg);transform:translateY(-2px)}.insight-link__meta{color:var(--color-muted);letter-spacing:.16em;text-transform:uppercase;font-size:.74rem}.insight-link__title{margin-top:10px;font-size:1.18rem;line-height:1.2}.insight-link__summary{color:var(--color-muted);margin-top:8px;font-size:.94rem;line-height:1.62}.proof-cert-grid{gap:10px;margin-top:20px;display:grid}.proof-cert{border:1px solid var(--color-border);background:var(--color-chip-bg);color:inherit;border-radius:12px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:transform .22s,border-color .22s,background-color .22s;display:grid;position:relative}.proof-cert:hover,.proof-cert:focus-visible{border-color:var(--color-border-strong);background:var(--color-button-secondary-bg);transform:translateY(-2px)}.proof-cert__icon{object-fit:contain;width:44px;height:44px}.proof-cert__copy{gap:2px;display:grid}.proof-cert__issuer{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.proof-cert__title{margin-top:0;font-size:.88rem;font-weight:500;line-height:1.36}.proof-cert__note{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:none;padding:0;font-size:.7rem;display:inline}.home-band__panel{border-color:var(--color-border)}@media (width<=1080px){.home-hero-v3__grid,.home-stage,.home-insights__grid,.home-tech-credentials__grid{grid-template-columns:1fr}.home-hero-v3__grid{grid-template-areas:none}.home-hero-v3__copy,.home-hero-v3__portrait,.home-hero-v3__support-kicker,.home-hero-v3__support{grid-area:auto}.home-stage__lead{position:static}}@media (width<=760px){.home-hero-v3{padding-top:30px}.home-hero-v3__title{font-size:clamp(48px,16vw,84px)}.home-hero-v3__grid{grid-template-columns:1fr}.github-heatmap__head,.github-heatmap__footer{flex-direction:column;align-items:flex-start}.home-hero-v3__portrait{padding:14px}.home-stage{gap:22px;padding-top:42px}.home-stage__stack{padding-left:22px}.story-card-v2,.insights-panel{padding:22px}.story-card-v2__title{font-size:24px}.proof-cert{gap:12px;padding:14px 16px}.proof-cert__icon{width:40px;height:40px}}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.work-card{align-content:start;gap:14px;padding:26px;display:grid}.work-card__title{letter-spacing:-.03em;font-size:clamp(20px,2.4vw,24px);font-weight:700;line-height:1.1}.work-card__summary{color:var(--color-muted);font-size:.92rem;line-height:1.62}.work-card__subs{gap:8px;margin:6px 0 0;padding:0;list-style:none;display:grid}.work-card__sub{color:var(--color-muted);padding-left:22px;font-size:.84rem;line-height:1.5;position:relative}.work-card__sub:before{content:"";background:var(--color-text);clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);width:10px;height:10px;position:absolute;top:calc(.75em - 5px);left:0}.exp-timeline{gap:18px;display:grid}.exp-entry{align-content:start;gap:10px;padding:26px;display:grid}.exp-entry__meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.exp-entry__role{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);font-size:.78rem;font-weight:600}.exp-entry__period{color:var(--color-muted);letter-spacing:.06em;font-size:.78rem}.exp-entry__company{letter-spacing:-.04em;font-size:clamp(22px,2.8vw,30px);font-weight:700;line-height:1}.exp-entry__location{color:var(--color-muted);font-size:.84rem}.exp-entry__desc{color:var(--color-muted);font-size:.92rem;line-height:1.62}.exp-entry__tags{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.exp-entry__tag{border:1px solid var(--color-chip-border);background:var(--color-chip-bg);color:var(--color-chip-text);border-radius:999px;padding:5px 12px;font-size:.76rem;font-weight:500}.insights-panel .page-title{margin-top:10px}.insights-panel .page-intro{max-width:none;margin-top:10px}.insights-panel--certs{align-content:start;align-self:start;padding:24px}:root[data-theme=light]{--color-signal:#131313b8;--color-signal-soft:#13131314;--color-signal-strong:#131313eb}@media (width<=1080px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.work-grid{grid-template-columns:1fr}.work-card,.exp-entry{padding:22px}.exp-entry__company{font-size:22px}}
