:root{--white:#fff;--brand-navy:#101729;--brand-red:#ff3154;--brand-blue:#1476da;--brand-blue-hover:#1265bd;--ink:#171717;--ink-secondary:#555;--ink-muted:var(--ink-secondary);--border-neutral:#ddd;--surface-muted:#f5f5f5;--surface-soft:#fafbfc;--focus-ring:#ef9c23}body{font-size:16px;font-weight:400;line-height:normal}h1,h2,h3,h4,h5,h6{font-size:revert;font-weight:revert;line-height:normal;margin:revert}dl,ol,p,ul{margin-top:revert;margin-bottom:revert}ol,ul{padding-left:revert}a:hover{color:inherit}img,svg{vertical-align:baseline}small{font-size:smaller}.shell.placeholder{display:block;vertical-align:baseline;cursor:auto;background:transparent;opacity:1}.homepage{background:var(--home-bg);color:var(--home-ink);font-family:Arial,Helvetica,sans-serif}.home-container{width:88%;max-width:1280px;margin-inline:auto}.homepage h2{font-size:clamp(22px,2.35vw,34px);line-height:1.03;letter-spacing:-.035em;margin:0}.homepage em{font-style:normal;color:var(--home-accent)}.homepage em span{color:var(--home-ink)}.home-header{position:absolute;inset:0 0 auto;z-index:10;gap:22px;width:89%;max-width:1294px;margin:auto;height:96px;color:white;font-size:13px}.rv-brand{white-space:nowrap}.rv-brand>.rv-logo-image{display:block;flex:0 1 124px;width:124px;max-width:32vw;height:auto}.desktop-nav{display:flex;gap:30px}.talk-button{border:1px solid #ffffff80;border-radius:28px;padding:13px 20px;white-space:nowrap;font-weight:700;margin-left:16px}.mood-selector{position:relative}.mood-options{position:absolute;top:calc(100% + 10px);right:0;padding:8px;border-radius:16px;background:rgba(16,34,64,.93);border:1px solid #ffffff55}.mood-options button{display:flex;justify-content:space-between;width:100%;padding:12px;color:var(--white);background:none;border:0;border-radius:8px;text-align:left;cursor:pointer}.mood-options button:hover,.mood-options button[aria-pressed=true]{background:#ffffff26}.mobile-nav{display:none}.hero-section{background:linear-gradient(110deg,var(--hero-start),var(--hero-end));color:white;position:relative;padding:150px 0 72px;overflow:hidden}.hero-grid{display:grid}.hero-grid h1{font-size:clamp(62px,6.5vw,94px);line-height:.95;letter-spacing:-.06em;margin:0}.hero-grid h1 em{font-size:1.22em;font-style:normal;color:var(--brand-red)}.hero-grid h1 em span{color:white}.hero-avatar{justify-self:center}.animated-roles{display:flex;flex-direction:column;align-items:flex-start;margin:0;color:var(--white)}.animated-role{display:block;width:100%;animation:role-fade-slide .32s ease both}@keyframes role-fade-slide{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.hero-wave{width:100%;position:absolute;bottom:-1px;left:0;fill:var(--home-bg);pointer-events:none}.featured-content{padding-block:28px 44px}.featured-toolbar{align-items:center;gap:20px}.category-tabs{overflow:auto;white-space:nowrap}.category-tabs button{font-size:11px;text-transform:uppercase;border:0;border-bottom:3px solid transparent;padding:10px 0 6px;background:none;color:var(--home-muted)}.category-tabs button.selected{border-color:var(--home-accent);color:var(--home-ink);font-weight:700}.category-tabs button:disabled{opacity:.85;cursor:not-allowed}.carousel-arrows{gap:8px}.carousel-arrows button{width:40px;height:40px;border-radius:50%;background:var(--home-bg);color:var(--home-muted);border:2px solid var(--home-line);font-size:28px;line-height:1;cursor:pointer}.featured-project{display:grid;touch-action:pan-y}.featured-art img{display:block;width:100%;height:auto}.featured-copy .section-label{margin-bottom:14px}.featured-copy h3{margin:20px 0 7px}.featured-copy p:not(.section-label){color:var(--home-muted);font-size:15px;line-height:1.5;margin:0;min-height:65px}.section-label{font-size:11px;font-weight:700;margin:0 0 36px;color:var(--home-ink)}.section-label.red{color:var(--home-accent)}.homepage .btn-dark{--bs-btn-padding-x:20px;--bs-btn-padding-y:15px;--bs-btn-font-size:11px;--bs-btn-line-height:normal;--bs-btn-color:var(--button-ink);--bs-btn-bg:var(--button-bg);--bs-btn-focus-box-shadow:none}.project-count{font-size:10px;color:var(--home-muted);white-space:nowrap}.carousel-progress{gap:6px;flex:1 1}.carousel-progress button{border:0;background:var(--home-line);height:6px;border-radius:5px;flex:1 1;min-width:8px;position:relative;cursor:pointer;padding:0}.carousel-progress button:after{content:"";position:absolute;inset:-10px 0}.carousel-progress button[aria-pressed=true]{background:var(--home-accent)}.home-divided{border-top:1px solid var(--home-line);padding-block:42px}.home-copy{color:var(--home-muted);font-size:14px;line-height:1.5;margin:20px 0 0}.tools-section{display:grid;grid-template-columns:190px 1fr;grid-gap:28px;gap:28px;padding-bottom:40px}.tools-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));align-self:center;grid-gap:12px;gap:12px}.tools-grid li{text-align:center;min-width:0;font-size:10px;color:var(--home-muted)}.app-icon{margin:0 auto 12px;border:1px solid var(--home-line)}.app-icon>span{font-size:30px;color:#111}.lab-section{display:grid;grid-template-columns:1fr 2fr;grid-gap:42px;gap:42px}.lab-section .section-label{margin-bottom:24px}.outline-link{display:inline-block;border:1px solid var(--home-line);padding:9px 20px;border-radius:25px;font-size:10px;font-weight:700;margin-top:24px}.lab-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.lab-card{border:1px solid var(--home-line);padding:12px;border-radius:16px}.lab-card-art{height:112px;display:grid;place-items:center;border-radius:12px;color:#337fe7;font-size:60px}.pink{background:#f3d2fa}.blue{background:#dcebff}.lavender{background:#dce2ff}.lab-card h3{font-size:15px;margin:8px 0}.lab-card p{font-size:10px;line-height:1.5;color:var(--home-muted);margin:0}.coming-soon{display:block;font-size:9px;color:var(--home-muted);margin-top:12px}.about-section{display:grid;grid-template-columns:1.6fr 1fr .7fr;grid-gap:45px;gap:45px;align-items:start;padding-bottom:0;margin-bottom:72px;position:relative;min-height:300px}.about-section .section-label{margin-bottom:22px}.about-section h2 strong{color:#167ef0;font-weight:inherit}.about-skills{margin:22px 0 0;font-size:14px;line-height:2}.about-avatar{height:auto;align-self:end;margin-bottom:-25px}.home-footer{background:var(--brand-navy);color:var(--white);padding:60px 0}.footer-bottom{font-size:10px;letter-spacing:.07em;color:#c1c9d8;margin-top:30px}.home-footer,.homepage section[id]{scroll-margin-top:24px}.home-footer a:focus-visible,.home-header :focus-visible,.homepage a:focus-visible,.homepage button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:5px}.home-header a:hover,.outline-link:hover{opacity:.75}@media(min-width:1250px){.hero-section{padding-top:165px;padding-bottom:80px}.featured-content{padding-block:35px 50px}.home-divided{padding-top:50px;padding-bottom:50px}.about-section{padding-bottom:0;min-height:340px}.lab-card-art{height:145px}}@media(max-width:1000px){.home-header{gap:14px}.desktop-nav{gap:20px}.talk-button{margin-left:0}.rv-brand{gap:16px}.hero-section{padding-top:125px}.tools-section{grid-template-columns:165px 1fr;gap:24px}.tools-grid{gap:8px}.carousel-progress{min-width:90px}.lab-section{gap:28px}.about-section{gap:25px}.footer-top .rv-brand{margin-right:20px}}@media(max-width:780px){.home-header{height:85px}.desktop-nav,.talk-button{display:none}.mood-selector{margin-left:auto}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;padding:12px 0}.mobile-nav nav{position:absolute;right:0;top:75px;background:#14253f;border:1px solid #ffffff55;border-radius:12px;padding:12px;min-width:150px;color:white}.mobile-nav nav a{padding:12px}.hero-grid h1{font-size:70px}.animated-roles{grid-column:1/-1;width:100%;margin-top:15px}.hero-section{padding-bottom:65px}.featured-copy p:not(.section-label){font-size:13px}.category-tabs button{font-size:10px}.tools-section{grid-template-columns:1fr}.tools-section>div{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 30px;gap:10px 30px}.tools-section .section-label{grid-column:1/-1;margin-bottom:12px}.tools-section .home-copy{margin:0}.tools-grid{gap:10px}.lab-section{grid-template-columns:1fr}.lab-section>div:first-child{max-width:420px}.about-section{grid-template-columns:1.4fr 1fr;gap:30px;padding-bottom:25px}.about-avatar{grid-column:2;grid-row:1/3;align-self:end}.about-skills{grid-column:1;margin:0}.home-footer{padding:40px 0}}@media(max-width:540px){.home-container{width:88%}.home-header{width:88%;gap:14px}.rv-brand>.rv-logo-image{flex-basis:100px;width:100px}.mobile-nav summary{font-size:12px}.hero-section{padding-top:115px}.hero-grid h1{font-size:clamp(48px,12vw,64px)}.animated-roles{margin-top:20px}.hero-section{padding-bottom:38px}.featured-content{padding-top:18px;padding-bottom:32px}.featured-toolbar{align-items:start;gap:12px}.category-tabs{overflow:visible}.category-tabs button{font-size:9px}.carousel-arrows{gap:5px}.carousel-arrows button{width:32px;height:32px}.featured-copy p:not(.section-label){font-size:14px;min-height:0}.featured-copy h3{margin-top:14px}.homepage .btn-dark{--bs-btn-padding-x:16px;--bs-btn-padding-y:14px;--bs-btn-font-size:10px}.carousel-progress{min-width:70px}.section-label{margin-bottom:22px}.home-divided{padding-block:30px}.tools-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 10px}.tools-grid li{font-size:9px}.tools-section>div{display:block}.tools-section .home-copy{margin-top:16px;max-width:260px}.tools-section .section-label{margin-bottom:22px}.lab-cards{gap:9px}.lab-card{padding:8px;border-radius:12px}.lab-card-art{height:80px;font-size:44px;border-radius:8px}.lab-card h3{font-size:12px;line-height:1.25;min-height:30px}.lab-card p{font-size:9px}.coming-soon{font-size:8px}.about-section{grid-template-columns:1fr 110px;gap:18px;margin-bottom:45px;padding-bottom:20px}.about-section>div{grid-column:1/-1}.about-section h2{font-size:24px}.about-skills{font-size:12px;line-height:2.2;align-self:center}.about-avatar{grid-row:2;margin-bottom:-35px}.footer-bottom{font-size:8px;line-height:1.8;flex-direction:column}.home-footer .rv-brand{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.animated-role{animation:none}}@media(min-width:781px) and (max-width:1249px){.hero-section{padding-top:120px;padding-bottom:55px}.hero-grid h1{font-size:6.5vw}.animated-roles{margin-top:20px}}.footer-socials{gap:14px}.footer-socials a,.footer-socials span{display:block;width:20px;height:20px;opacity:.8}.footer-socials span{opacity:.45}.footer-socials svg{width:100%;height:100%;fill:currentColor}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--white);color:#111;padding:12px 20px;border:2px solid #167ef0}.skip-link:focus{top:12px}.hero-wave{height:96px}.featured-project{gap:26px;padding-top:32px}.featured-art{display:block;min-width:0}.featured-art img{aspect-ratio:auto;max-height:520px;object-fit:contain}.featured-copy h3{font-size:clamp(20px,2vw,28px);line-height:1.15;letter-spacing:-.025em;margin:20px 0 12px}.app-icon{width:min(56px,100%);max-width:56px;height:auto;aspect-ratio:1;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:12px;background:var(--white);box-shadow:0 2px 5px rgb(15 23 42/5%);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.app-icon img{display:block;width:72%;height:72%;object-fit:contain}.app-icon:hover{transform:translateY(-3px);box-shadow:0 5px 10px rgb(15 23 42/10%)}.about-avatar{justify-self:center}.category-tabs{min-width:0;flex:1 1}@media(min-width:1250px){.hero-wave{height:116px}}@media(min-width:781px) and (max-width:1249px){.hero-wave{height:88px}}@media(max-width:780px){.hero-wave{height:60px}}@media(max-width:540px){.hero-wave{height:36px}.featured-art img{aspect-ratio:auto;max-height:340px}.featured-copy h3{font-size:24px}.category-tabs{overflow-x:auto}}@media(prefers-reduced-motion:reduce){.app-icon:hover{transform:none}}.carousel-arrows button:disabled{opacity:.45;cursor:default}@media(prefers-reduced-motion:reduce){.app-icon{transition:none}.app-icon:hover{transform:none}}.tools-dock{overflow:visible;isolation:isolate}.tools-dock>li{position:relative;overflow:visible}.tools-dock .app-icon{transform-origin:center bottom;transition:box-shadow .2s ease}.tools-dock .app-icon:hover{transform:none}.tools-dock .app-icon img[src$="typescript.svg"]{border-radius:22%}@media(hover:hover) and (pointer:fine) and (min-width:541px){.tools-dock .app-icon:hover{box-shadow:0 5px 10px rgb(15 23 42/10%)}}@media(hover:none),(max-width:540px),(pointer:coarse){.tools-dock .app-icon:hover{box-shadow:0 2px 5px rgb(15 23 42/5%)}}@media(prefers-reduced-motion:reduce){.tools-dock .app-icon{transform:none!important;transition:none}}.category-tabs{overflow:visible;gap:26px}.category-tabs button{flex-shrink:0;cursor:default}.category-tabs button.selected{border-bottom-width:2px;border-bottom-color:var(--brand-red)}.category-tabs button[aria-disabled=true]{color:#b0b4bc;font-weight:600;opacity:1;cursor:default}:root[data-mood=Dark] .category-tabs button[aria-disabled=true]{color:#9399a4}.category-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;z-index:20;transform:translate(-50%,4px);padding:7px 10px;border-radius:7px;background:#202633;color:var(--white);font-size:11px;font-weight:400;line-height:1.35;white-space:nowrap;box-shadow:0 4px 12px rgb(15 23 42/18%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .17s ease,transform .17s ease,visibility 0s linear .17s}.category-tooltip[data-visible=true]{opacity:1;visibility:visible;transform:translate(-50%);transition-delay:0s}@media(max-width:780px){.category-tabs{gap:18px}}@media(max-width:540px){.category-tabs{gap:5px;justify-content:space-between}.category-tabs button{font-size:8px}.category-tabs>span:last-child .category-tooltip{left:auto;right:0;transform:translateY(4px)}.category-tabs>span:last-child .category-tooltip[data-visible=true]{transform:translateY(0)}}@media(max-width:360px){.featured-toolbar{flex-wrap:wrap}.category-tabs{flex:1 0 100%}}@media(prefers-reduced-motion:reduce){.category-tooltip{transition:none}}.carousel-arrows button{display:grid;place-items:center;padding:0;flex-shrink:0}.carousel-arrows button svg{display:block;width:18px;height:18px;fill:currentColor}@media(max-width:540px){.carousel-arrows button svg{width:15px;height:15px}}.featured-project{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center}.featured-copy{min-width:0}.featured-copy-header{gap:12px;margin-bottom:26px}.featured-copy-header .section-label{margin:0;white-space:nowrap;font-size:10px}.featured-controls{min-width:0}.featured-controls .carousel-progress{flex:0 1 90px;min-width:50px;width:90px;gap:5px}.featured-controls .carousel-arrows{flex-shrink:0}.featured-copy h2{font-size:clamp(30px,3.8vw,54px)}.featured-controls .carousel-arrows button{transition:background-color .18s ease,color .18s ease}@media(hover:hover) and (pointer:fine){.carousel-arrows button:not(:disabled):hover{background:#f1f5f9;color:#475569;border:1px solid #dfe5ef;transform:none;box-shadow:none}}.carousel-arrows button:not(:disabled):active{transform:translateY(0);box-shadow:none}@media(min-width:541px) and (max-width:920px){.featured-copy-header{flex-wrap:wrap;gap:12px}.featured-controls{width:100%;justify-content:space-between}.featured-controls .carousel-progress{flex:1 1;max-width:120px}.featured-copy-header .section-label{font-size:10px}}@media(max-width:540px){.featured-project{grid-template-columns:1fr}.featured-copy-header{gap:8px;margin-bottom:22px}.featured-controls .carousel-progress{min-width:48px;width:60px}.featured-copy-header .section-label{font-size:9px}.featured-copy h2{font-size:36px}}@media(prefers-reduced-motion:reduce){.carousel-arrows button,.carousel-arrows button svg{transition:none}.carousel-arrows button:not(:disabled):active,.carousel-arrows button:not(:disabled):hover,.carousel-arrows button:not(:disabled):hover svg{transform:none}}.featured-copy .company-tags{margin:28px 0 34px}.company-tags .badge{--bs-badge-padding-x:12px;--bs-badge-padding-y:7px;--bs-badge-font-size:12px;--bs-badge-color:#111827;--bs-border-color:#dfe5ef;line-height:1.25;white-space:normal}.featured-controls .carousel-arrows{gap:12px}.featured-controls .carousel-arrows button{width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:1px solid #dfe5ef;border-radius:50%;background:var(--white);color:#64748b}.featured-controls .carousel-arrows button svg{width:16px;height:16px}.featured-controls{gap:12px}@media(max-width:540px){.featured-copy .company-tags{margin:22px 0 26px}.featured-controls,.featured-controls .carousel-arrows{gap:8px}}@media(max-width:360px){.featured-copy-header{flex-wrap:wrap}.featured-controls{width:100%;justify-content:space-between}.featured-controls .carousel-progress{flex:1 1;max-width:100px}}.all-work-link{font-size:11px;font-weight:600;color:#64748b;white-space:nowrap;text-underline-offset:4px;transition:color .18s ease}.all-work-link:hover{color:#111827;text-decoration:underline}.all-work-link:focus-visible,.featured-controls .carousel-arrows button:focus-visible{outline:2px solid #2563eb;outline-offset:4px}@media(prefers-reduced-motion:reduce){.all-work-link{transition:none}}.about-actions{margin-top:24px}.about-actions .btn-dark{--bs-btn-hover-color:var(--bs-btn-color);--bs-btn-hover-bg:var(--bs-btn-bg);--bs-btn-active-color:var(--bs-btn-color);--bs-btn-active-bg:var(--bs-btn-hover-bg)}.about-actions .btn-dark:hover{--bs-btn-hover-bg:#25334b;--bs-btn-hover-color:var(--white);--bs-btn-active-color:var(--white)}.about-skills{display:grid;grid-gap:18px;gap:18px}.about-skills li{min-width:0}.specialty-heading{gap:18px;min-width:0}.about-skills i{display:inline-block;flex:0 0 18px;width:18px;height:18px;color:var(--brand-blue)}.about-skills h3{font-size:16px;font-weight:500;line-height:1.4;color:#111827;margin:0}.specialty-description{margin:2px 0 0 36px;font-size:13px;font-weight:400;line-height:1.5;color:#64748b}.about-avatar{width:100%;max-width:237px;object-fit:contain}@media(max-width:780px){.about-avatar{max-width:200px}}@media(max-width:540px){.about-avatar{width:138px;max-width:100%}}.about-skills li{cursor:default}.about-skills i{transition:transform .19s ease}.about-skills h3{transition:color .19s ease}@media(hover:hover) and (pointer:fine){.about-skills li:hover i{transform:translateY(-2px)}.about-skills li:hover h3{color:var(--brand-blue)}}@media(prefers-reduced-motion:reduce){.about-skills h3,.about-skills i{transition:none}.about-skills li:hover i{transform:none}}.hero-grid{grid-template-columns:1.08fr .95fr 1fr;align-items:center;gap:clamp(18px,2.8vw,44px);min-height:320px}.hero-intro{min-width:0}.hero-intro h1{margin:0;color:var(--hero-ink);font-size:clamp(50px,5.8vw,88px);font-weight:900;-webkit-text-stroke:.35px currentColor;line-height:.92;letter-spacing:-.055em}.hero-intro h1>span{display:block;white-space:nowrap}.hero-intro h1 em{color:#ff4f6d;font-style:normal}.hero-divider{display:block;width:44px;height:3px;margin:22px 0 17px;background:#ff4f6d}.hero-support{display:flex;flex-direction:column;gap:6px;margin:0;color:var(--hero-ink);font-size:11px;font-weight:600;line-height:1.45;letter-spacing:.09em}.hero-avatar-stage{position:relative;justify-self:center;width:min(100%,310px);aspect-ratio:1}.hero-avatar{position:absolute;inset:0;isolation:isolate;width:100%;max-width:none;aspect-ratio:1;display:grid;place-items:center}.hero-avatar:before{content:"";position:absolute;z-index:0;width:88%;aspect-ratio:1;border-radius:50%;background:#ff5c5c}.hero-avatar img{position:relative;z-index:2;display:block;width:100%;height:auto;border-radius:0}.hero-avatar:after{content:"";position:absolute;z-index:1;left:22%;bottom:-24px;width:56%;height:16px;border-radius:50%;background:rgb(0 24 74/44%);filter:blur(9px)}.animated-roles{min-width:0;min-height:134px;justify-content:center;transform:translate(80px,-36px)}.roles-label{font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1.4;color:var(--hero-ink)}.roles-subtitle{margin-top:4px;font-size:14px;font-weight:300;font-style:italic;line-height:1.4;color:var(--hero-muted)}.animated-role{min-height:2.3em;margin-top:8px;font-size:clamp(23px,2.3vw,34px);font-weight:700;line-height:1.15;letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance;overflow-wrap:normal;word-break:normal}@media(min-width:781px) and (max-width:1050px){.hero-grid{grid-template-columns:1.05fr .9fr 1.05fr;gap:20px;min-height:280px}.hero-intro h1{font-size:clamp(48px,5vw,64px)}.hero-avatar-stage{width:min(100%,235px)}.hero-support{font-size:9px}.animated-roles{min-height:124px;transform:translate(60px,-28px)}.animated-role{font-size:clamp(20px,2.5vw,26px)}}@media(max-width:780px){.hero-section{padding-top:112px;padding-bottom:55px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:20px;min-height:0}.hero-intro{width:min(100%,520px);margin-inline:auto}.hero-intro h1{font-size:clamp(48px,10.5vw,70px)}.hero-divider{margin:18px 0 14px}.hero-support{font-size:10px}.hero-avatar-stage{width:min(72vw,270px);margin:0 auto 8px}.animated-roles{width:min(100%,520px);min-height:124px;margin:0 auto;transform:none}.animated-role{font-size:clamp(22px,5vw,30px)}}@media(max-width:540px){.hero-section{padding-top:104px;padding-bottom:42px}.hero-grid{gap:16px}.hero-intro h1{font-size:clamp(44px,12.5vw,64px)}.hero-support{font-size:9px;letter-spacing:.075em}.hero-avatar-stage{width:min(76vw,245px)}.animated-roles{min-height:116px}.roles-label{font-size:10px}.roles-subtitle{font-size:12px}.animated-role{font-size:clamp(21px,6vw,27px)}}.mood-options{max-height:min(72vh,620px);overflow-y:auto}.mood-section-label{display:block;padding:8px 12px 5px;color:#ffffffa6;font-size:9px;font-weight:700;letter-spacing:.12em}.mood-avatar-heading{margin-top:8px;border-top:1px solid #ffffff30;padding-top:14px}.mood-avatar-options{display:grid;grid-gap:2px;gap:2px}.mood-options .mood-avatar-option{align-items:center}.mood-options .mood-avatar-option[aria-pressed=true]{color:var(--white);background:#ffffff26}.mood-options .mood-avatar-option:focus-visible{outline:2px solid var(--white);outline-offset:-2px}.hero-avatar{z-index:2}.hero-avatar-3d-anchor{bottom:-24px;z-index:1;width:min(55vw,424px);aspect-ratio:424/381;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility 0s linear .25s;pointer-events:none}.hero-avatar-3d-anchor,.hero-avatar-3d-anchor img{position:absolute;left:50%;transform:translateX(-50%)}.hero-avatar-3d-anchor img{top:-26.5%;display:block;width:242%;max-width:none;height:auto}html[data-avatar-style="3d"] .hero-section{isolation:isolate}html[data-avatar-style="3d"] .hero-grid{position:relative;z-index:3}html[data-avatar-style="3d"] .hero-avatar{opacity:0;visibility:hidden;transition:opacity .25s ease,visibility 0s linear .25s}html[data-avatar-style="3d"] .hero-avatar:after,html[data-avatar-style="3d"] .hero-avatar:before{content:none}html[data-avatar-style="3d"] .hero-avatar-3d-anchor{opacity:1;visibility:visible;transition-delay:0s}html[data-avatar-style="3d"] .hero-wave{z-index:2}@media(min-width:1051px){.hero-avatar-3d-anchor{width:clamp(424px,34vw,500px)}}@media(min-width:781px) and (max-width:1050px){.hero-avatar-3d-anchor{width:min(clamp(374px,46vw,446px),424px)}}@media(max-width:780px){.hero-avatar-3d-anchor{width:min(117vw,424px);max-width:calc(100vw - 8px)}html[data-avatar-style="3d"] .hero-section{padding-bottom:calc(55px + min(72vw,270px))}html[data-avatar-style="2d"] .avatar-interaction-hint{top:calc(100% + 30px)}html[data-avatar-style="2d"] .animated-roles{margin-top:30px}}@media(max-width:540px){html[data-avatar-style="3d"] .hero-section{padding-bottom:calc(42px + min(72vw,270px))}}@media(prefers-reduced-motion:reduce){.hero-avatar,.hero-avatar-3d-anchor{transition:none}}.hero-avatar{transform:translate(var(--avatar-drag-x,0),var(--avatar-drag-y,0));transition:opacity .25s ease,visibility 0s linear,transform .18s ease-out;touch-action:pan-y;-moz-user-select:none;user-select:none;-webkit-user-select:none;cursor:-webkit-grab;cursor:grab}.hero-avatar.is-dragging{transition:none!important}.hero-avatar.is-dragging,.hero-avatar.is-pointer-active{cursor:-webkit-grabbing;cursor:grabbing}.hero-avatar:focus-visible{outline:3px solid var(--focus-ring);outline-offset:6px}.hero-avatar img{-webkit-user-drag:none}.hero-avatar-svg{position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%,-50%);pointer-events:none}.hero-avatar-svg,.hero-avatar-svg svg{display:block;width:100%;height:auto}.avatar-interaction-hint{position:absolute;top:calc(100% + 30px);left:50%;z-index:3;width:max-content;transform:translateX(-50%);color:var(--hero-muted);font-size:10.5px;font-weight:600;letter-spacing:.1em;line-height:1.4;text-align:center;pointer-events:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.avatar-style-link{pointer-events:auto;border:0;padding:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;vertical-align:baseline;-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:3px;cursor:pointer}.avatar-style-link:hover{-webkit-text-decoration-style:solid;text-decoration-style:solid}html[data-avatar-style="3d"] .avatar-interaction-hint{left:calc(50% + 100px);padding:4px 8px;border-radius:4px;background:var(--home-bg);color:var(--home-ink)}@media(prefers-reduced-motion:reduce){.hero-avatar{transition:none}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{height:86px;max-width:1472px;padding:0 44px;margin:auto;border-bottom:1px solid #ececec}.site-header nav{gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.site-header nav a:hover{color:var(--ink-muted)}.shell{max-width:1472px;margin:auto;padding:48px 44px 90px}.eyebrow{letter-spacing:.16em;font-size:11px;font-weight:700;color:#858585;margin:0 0 20px}.shell h1{font-size:clamp(36px,4.2vw,64px);letter-spacing:-.052em;line-height:1.08;margin:0}.muted{color:#999}.lede{color:var(--ink-muted);font-size:17px}.listing{min-height:75vh}.project-card-image{background:#f2f2f2;aspect-ratio:4/3;overflow:hidden;display:flex;align-items:center}.project-card-image img{width:100%;height:100%;object-fit:cover;object-position:top}.project-card-info{gap:18px;padding:18px 0}.project-card-info small{color:#888;font-size:11px}.project-card-info h2{font-size:19px;letter-spacing:-.03em;margin:8px 0 0}.detail{padding-top:23px}.product-layout{display:grid;align-items:start}.gallery-main{position:relative;overflow:hidden}.gallery-main>img{width:100%;max-height:660px;object-fit:contain;display:block}.gallery-controls{position:absolute;left:16px;right:16px;bottom:15px;pointer-events:none}.gallery-controls button{pointer-events:auto;width:36px;height:36px;border-radius:50%;border:1px solid var(--border-neutral);background:white;cursor:pointer}.gallery-controls span{background:var(--white);padding:9px 14px;border-radius:30px;font-size:11px}.gallery-thumbs{overflow-x:auto;padding-bottom:8px}.thumb{background:white;border:1px solid transparent;cursor:pointer;text-align:left;padding:4px;flex:0 0 30%;min-width:110px}.thumb.active{border-color:#111}.thumb img{width:100%;height:88px;object-fit:cover;object-position:top;background:#f7f7f7}.thumb small{display:block;font-size:10px;color:var(--ink-secondary);padding:7px 3px}.details{padding-top:14px}.details h1{font-size:clamp(35px,3.5vw,54px)}.summary{font-size:14px;color:var(--ink-muted);line-height:1.65;margin:0 0 28px}.placeholder{min-height:70vh}.placeholder p:last-child,.site-footer{color:var(--ink-muted)}.site-footer{max-width:1472px;border-top:1px solid #eee;padding:32px 44px;margin:auto;font-size:12px}@media(max-width:850px){.site-header{padding:0 20px;height:78px}.site-header nav{gap:16px;font-size:11px}.shell{padding:26px 20px 70px}.details{padding-top:0}.site-footer{padding:26px 20px}}@media(max-width:480px){.site-header nav{gap:10px}.gallery-thumbs .thumb{flex-basis:42%}}.work-page{background:var(--surface-muted);min-height:75vh}.work-listing{padding-top:70px;padding-bottom:100px}.work-intro{border-left:3px solid var(--ink);padding-left:24px}.work-intro .eyebrow{color:var(--ink);margin-bottom:16px}.work-intro .lede{color:#606060;line-height:1.6;margin-bottom:0}.work-intro .muted{color:var(--ink)}.work-grid{--bs-gutter-x:32px;--bs-gutter-y:32px;gap:0;margin-top:calc(46px - var(--bs-gutter-y))}.work-grid .work-card{width:100%}.work-card{border:1px solid #dedede;border-radius:18px;padding:16px;background:var(--white);box-shadow:0 2px 5px rgba(0,0,0,.025);transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.work-card .project-card-image{position:relative;border-radius:10px;background:transparent;aspect-ratio:4/3;padding:0;overflow:hidden}.work-card .project-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.work-card .project-card-info{padding:22px 8px 8px;flex:1 1;gap:12px}.work-card-copy{min-width:0;flex:1 1}.work-card .project-card-info h2{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin:0}.work-card .project-card-info p{font-size:12px;line-height:1.7;color:#686868;margin:12px 0 0;overflow-wrap:break-word}.work-card-arrow{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--surface-muted);color:var(--ink);transition:background .2s ease,color .2s ease}.work-card:focus-visible{outline:3px solid var(--ink);outline-offset:5px;box-shadow:0 10px 25px rgba(0,0,0,.1)}@media(hover:hover){.work-card:hover{transform:translateY(-4px);border-color:#bdbdbd;box-shadow:0 12px 26px rgba(0,0,0,.09)}.work-card:hover .work-card-arrow{background:var(--ink);color:var(--white)}}@media(max-width:600px){.work-listing{padding-top:38px;padding-bottom:60px}.work-grid{--bs-gutter-x:24px;--bs-gutter-y:24px;margin-top:calc(32px - var(--bs-gutter-y))}.work-intro{padding-left:18px}.work-card{padding:12px}.work-card .project-card-info{padding:18px 8px 8px}}@media(prefers-reduced-motion:reduce){.work-card,.work-card-arrow{transition:none}.work-card:hover{transform:none}}.tool-list{gap:10px 16px}.tool-item{font-size:13px;line-height:1.7;min-width:0}.tool-item span{overflow-wrap:anywhere}.tool-icon{width:16px;height:16px;flex:0 0 16px;color:currentColor}.gallery-main{aspect-ratio:1;min-height:0;width:100%;border-radius:16px;background:#f0f1f3}.gallery-expand{position:absolute;inset:0;width:100%;height:100%;border:0;padding:24px 24px 64px;background:transparent;cursor:zoom-in}.gallery-expand img{width:100%;height:100%;object-fit:contain;display:block}.gallery-expand-hint{position:absolute;right:18px;top:18px;border-radius:20px;background:rgba(255,255,255,.9);padding:8px 12px;color:var(--ink-secondary);font-size:11px}.gallery-expand:focus-visible{outline:3px solid var(--ink);outline-offset:-5px;border-radius:16px}.gallery-thumbs{display:grid;grid-template-columns:repeat(auto-fill,104px);grid-gap:16px;gap:16px;overflow:visible;padding:0;margin-top:18px;align-items:start}.gallery-thumbs .thumb{width:104px;min-width:0;padding:0;border:0;flex:none;background:transparent}.gallery-thumbs .thumb-image{display:block;width:100%;aspect-ratio:1;padding:10px;border-radius:12px;background:#f0f1f3;border:2px solid transparent;overflow:hidden}.gallery-thumbs .thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent}.gallery-thumbs .thumb.active{border:0}.gallery-thumbs .thumb.active .thumb-image{border-color:var(--ink)}.gallery-thumbs .thumb small{line-height:1.4;height:40px;padding:8px 0 0;overflow:hidden}.gallery-thumbs .thumb:focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:12px}.gallery-lightbox{padding:48px 24px 18px;border:0;border-radius:16px;background:#f0f1f3;color:var(--ink);max-width:94vw;max-height:94dvh;overflow:auto}.gallery-lightbox::-webkit-backdrop{background:rgba(0,0,0,.78)}.gallery-lightbox::backdrop{background:rgba(0,0,0,.78)}.gallery-lightbox>img{display:block;width:auto;height:auto;max-width:min(1200px,86vw);max-height:75dvh;object-fit:contain;margin:auto}.gallery-lightbox p{text-align:center;font-size:12px;margin:14px 0 0}.lightbox-close{position:absolute;top:10px;right:12px;width:32px;height:32px;border:1px solid var(--border-neutral);border-radius:50%;background:var(--white);cursor:pointer}.gallery-main,.gallery-thumbs{max-width:560px;margin-inline:auto}.product-layout{grid-template-columns:minmax(0,560px) minmax(310px,440px);gap:clamp(32px,4vw,64px);justify-content:center}@media(max-width:850px){.product-layout{grid-template-columns:minmax(0,1fr)}}.details{min-width:0}.project-header{margin-bottom:24px}.project-company{gap:4px 10px;font-size:12px;line-height:1.6;color:var(--ink-muted);margin:12px 0 0}.project-company span{font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--ink-muted)}.detail-section,.details>.problems-solved{padding:24px 0;border-bottom:1px solid #eaeaea}.detail-section h2,.problems-solved h2{font-size:10px;letter-spacing:.14em;color:var(--ink-muted);font-weight:600;text-transform:uppercase;margin:0 0 12px}.detail-section p{font-size:13px;line-height:1.7;color:var(--ink-secondary);margin:0;overflow-wrap:break-word}.project-summary+.detail-section{margin-top:24px;border-top:1px solid #eaeaea}.detail-tools{border-bottom:0}.problems-solved ul{margin:0;padding-left:18px;color:var(--ink-muted);font-size:13px;line-height:1.7}.problems-solved li+li{margin-top:8px}.tool-item{max-width:100%}.project-detail-page{min-height:calc(100svh - 86px)}.project-detail-page>.detail{width:100%;flex:1 1}@media(max-width:850px){.project-detail-page{min-height:calc(100svh - 78px)}}.project-detail-page>.work-bottom{position:-webkit-sticky;position:sticky;bottom:0;flex-shrink:0;z-index:30;background:rgba(255,255,255,.96);border-top:1px solid #e2e2e2;padding:0 max(20px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0) max(20px,env(safe-area-inset-left,0px));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.work-bottom-inner{max-width:1064px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-gap:24px;gap:24px}.work-bottom-link{gap:16px;min-width:0;height:84px;padding:12px 16px;border-radius:8px}.work-bottom-link.next{text-align:right}.work-bottom-link:hover{background:var(--surface-muted)}.work-bottom-link:focus-visible{outline:2px solid var(--ink);outline-offset:-5px;background:var(--surface-muted)}.work-bottom-arrow{width:16px;height:16px;flex-shrink:0}.work-bottom-copy{min-width:0;gap:5px}.work-bottom-direction{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.work-bottom-title{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:480px){.work-bottom-inner{gap:8px}.work-bottom-link{gap:10px;padding-inline:6px}.work-bottom-title{font-size:11px}}@media(max-width:360px){.work-bottom-title{display:none}}.work-bottom-link.all-work{gap:10px}.work-bottom-link.all-work .work-bottom-direction{color:var(--ink);white-space:nowrap}@media(max-width:480px){.work-bottom-link.all-work{gap:6px;padding-inline:8px}}.project-summary>.summary:not(:last-child){margin-bottom:16px}.project-summary>.summary:last-child{margin-bottom:0}.gallery-sections>section{margin-top:28px}.gallery-sections h2{font-size:14px;font-weight:600;margin:0 0 14px}.gallery-sections .gallery-thumbs{margin-top:0}.gallery-sections .thumb small{height:auto;min-height:40px}.storefront-links{list-style:none;padding:0;margin:18px 0 0;gap:12px 20px;font-size:12px}.storefront-links a{text-decoration:underline;text-underline-offset:3px}@property --hero-start{syntax:"<color>";inherits:true;initial-value:#1265bd}@property --hero-end{syntax:"<color>";inherits:true;initial-value:#065cc8}:root{--page-ink:#101626;--page-muted:#5e6c84;--page-line:#e2e9f4;--home-bg:var(--white);--home-ink:var(--page-ink);--home-muted:var(--page-muted);--home-line:var(--page-line);--home-accent:var(--brand-red);--accent-text:#c51c3a;--about-accent:#126bc8;--hero-start:var(--brand-blue-hover);--hero-end:#065cc8;--hero-ink:var(--white);--hero-muted:#e1edff;--hero-accent:var(--brand-red);--footer-bg:var(--brand-navy);--footer-ink:var(--white);--footer-muted:#c1c9d8;--footer-accent:#ff7289;--card-bg:var(--white);--button-bg:var(--brand-navy);--button-ink:var(--white);--tile-border:#E2E8F0;--lab-pink:#f3d2fa;--lab-blue:#dcebff;--lab-lavender:#dce2ff;--lab-symbol:#2163b7;--glass-bg:rgb(16 34 64/90%);--glass-ink:var(--white);--glass-line:rgb(255 255 255/30%);--glass-hover:rgb(255 255 255/14%);--pill-bg:rgb(255 255 255/15%);--pill-line:rgb(255 255 255/50%)}:root[data-mood=Light]{--home-bg:var(--white);--home-ink:#161a23;--home-muted:#596171;--home-line:#e1e5eb;--hero-start:var(--white);--hero-end:#edf0f4;--hero-ink:#161a23;--hero-muted:#525e70;--hero-accent:#c51c3a;--home-accent:#c51c3a;--about-accent:#44546c;--card-bg:var(--surface-soft);--footer-bg:#edf0f4;--footer-ink:#161a23;--footer-muted:#525e70;--footer-accent:#b81e3c;--lab-pink:#f1edf4;--lab-blue:#e9eef5;--lab-lavender:#eceef4;--lab-symbol:#526176;--glass-bg:rgb(255 255 255/92%);--glass-ink:#161a23;--glass-line:rgb(105 120 145/28%);--glass-hover:rgb(15 23 42/7%);--pill-bg:rgb(255 255 255/55%);--pill-line:rgb(85 105 135/40%)}:root[data-mood=Dark]{--home-bg:#0d1016;--home-ink:#f0f3fa;--home-muted:#b1bdcf;--home-line:#364052;--hero-start:#1b2230;--hero-end:#0b0e14;--hero-ink:#f0f3fa;--hero-muted:#b8c5d9;--hero-accent:#ff7289;--home-accent:#ff7289;--accent-text:#ff8ca0;--about-accent:#7cbcff;--card-bg:#171d27;--button-bg:#e9eef8;--button-ink:var(--brand-navy);--tile-border:#cbd5e1;--footer-bg:#080b10;--footer-ink:#f0f3fa;--footer-muted:#b1bdcf;--footer-accent:#ff8ca0;--lab-pink:#39243c;--lab-blue:#20334b;--lab-lavender:#2e2d48;--lab-symbol:#a9cfff;--glass-bg:rgb(23 29 39/94%);--glass-ink:#f0f3fa;--glass-line:rgb(185 200 223/28%);--glass-hover:rgb(255 255 255/10%)}:root[data-mood=ROYGBIV]{--home-bg:hsl(var(--mood-hue) 25% 98%);--home-ink:hsl(var(--mood-hue) 35% 12%);--home-muted:hsl(var(--mood-hue) 20% 34%);--home-line:hsl(var(--mood-hue) 25% 83%);--card-bg:hsl(var(--mood-hue) 25% 96%);--hero-start:var(--rainbow-start,hsl(var(--mood-hue,210) 65% 70%));--hero-end:var(--rainbow-end,hsl(var(--mood-hue,210) 60% 80%));--hero-ink:#080809;--hero-muted:#080809;--hero-accent:#17101F;--home-accent:hsl(calc(var(--mood-hue) + 160) 65% 27%);--accent-text:var(--home-accent);--about-accent:var(--home-accent);--footer-bg:hsl(var(--mood-hue) 30% 10%);--footer-ink:var(--white);--footer-muted:#d4deeb;--footer-accent:hsl(calc(var(--mood-hue) + 160) 85% 88%);--button-bg:hsl(var(--mood-hue) 45% 18%);--button-ink:var(--white);--lab-pink:hsl(calc(var(--mood-hue) + 160) 45% 90%);--lab-blue:hsl(var(--mood-hue) 45% 90%);--lab-lavender:hsl(calc(var(--mood-hue) + 35) 45% 90%);--lab-symbol:hsl(var(--mood-hue) 55% 28%);--glass-bg:hsl(var(--mood-hue) 30% 12%/94%)}body:has(.homepage){background:var(--home-bg);color-scheme:light}html[data-mood=Dark] body:has(.homepage){color-scheme:dark}.hero-section,.home-header{color:var(--hero-ink)}.hero-grid h1 em{color:var(--hero-accent)}.hero-grid h1 em span{color:var(--hero-ink)}.animated-roles{color:var(--hero-muted)}.animated-roles li.active{color:var(--hero-ink)}.animated-roles:after{background:var(--hero-ink)}.section-label.red{color:var(--accent-text)}.about-section h2 strong{color:var(--about-accent)}.lab-card{background:var(--card-bg)}.lab-card-art{color:var(--lab-symbol)}.pink{background:var(--lab-pink)}.blue{background:var(--lab-blue)}.lavender{background:var(--lab-lavender)}.app-icon{border-color:var(--tile-border)}.home-footer{background:var(--footer-bg);color:var(--footer-ink)}.footer-bottom{color:var(--footer-muted)}.footer-branding{max-width:100%;min-width:0;text-align:right;letter-spacing:normal}.footer-branding p{margin:0;overflow-wrap:normal;word-break:normal;text-wrap:pretty}.footer-branding .footer-branding-headline{color:var(--footer-ink);font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.02em}.footer-branding .footer-branding-detail{margin-top:8px;color:var(--footer-muted);font-size:12px;line-height:1.7}.footer-branding-heart{color:var(--brand-red);display:inline-block;margin-inline:3px}@media(max-width:540px){.footer-branding{text-align:left;width:100%}}.home-header .talk-button{border-color:var(--pill-line)}.mobile-nav nav{background:var(--glass-bg);color:var(--glass-ink);border-color:var(--glass-line)}.mood-trigger{display:flex;align-items:center;gap:10px;padding:13px 20px;border:1px solid var(--pill-line);border-radius:28px;background:var(--pill-bg);color:inherit;font-size:12px;white-space:nowrap;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.mood-chevron{display:inline-block;width:6px;height:6px;flex:0 0 6px;border-right:1px solid;border-bottom:1px solid;transform:translateY(-2px) rotate(45deg);transition:transform .18s ease}.mood-selector[data-open=true] .mood-chevron{transform:translateY(1px) rotate(225deg)}.mood-options{width:210px;max-width:calc(100vw - 32px);background:var(--glass-bg);color:var(--glass-ink);border:1px solid var(--glass-line);box-shadow:0 12px 32px rgb(0 0 0/18%);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px) scale(.98);transform-origin:top right;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}.mood-selector[data-open=true] .mood-options{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}.mood-options button{color:var(--glass-ink);min-height:44px}.mood-options button:hover,.mood-options button[aria-pressed=true]{background:var(--glass-hover)}.mood-option-name{display:flex;align-items:center;gap:12px}.mood-option-name>span{width:22px;text-align:center;font-size:18px}@media(max-width:540px){.mood-trigger{padding:10px 12px;font-size:10px;gap:5px}}.btn-dark,.carousel-arrows button,.company-tags span,.hero-section,.home-footer,.home-header,.homepage,.lab-card,.lab-card-art,.mood-trigger,.outline-link{transition:background-color .24s ease,color .24s ease,border-color .24s ease}.hero-section{transition:--hero-start .28s ease,--hero-end .28s ease,color .24s ease}.hero-wave{transition:fill .24s ease}.footer-bottom,.homepage em,.homepage h2,.homepage h3,.homepage p{transition:color .24s ease}@media(prefers-reduced-motion:reduce){.home-footer,.home-footer *,.home-header,.home-header *,.homepage,.homepage *{transition:none!important;animation:none!important}.mood-options{transform:none}}.mood-options button:focus-visible,.mood-trigger:focus-visible{outline:2px solid currentColor;outline-offset:3px}.mood-trigger-icon{display:block;width:18px;height:18px;flex-shrink:0;object-fit:contain}.mood-option-icon{display:block;width:22px;height:22px;object-fit:contain}.mood-pill{display:flex;align-items:center;gap:10px;padding:13px 20px;border:1px solid var(--pill-line);border-radius:28px;background:var(--pill-bg);color:inherit;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:12px;transition:background-color .24s ease,color .24s ease,border-color .24s ease}.mood-pill .mood-trigger{padding:0;border:0;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:inherit}.mood-icon-button{display:grid;place-items:center;flex-shrink:0;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.mood-icon-button:focus-visible{outline:2px solid currentColor;outline-offset:4px}.mood-icon-button[aria-disabled=true]{cursor:progress}.mood-pill[data-shuffling=true] .mood-trigger-icon{animation:mood-spin 1.8s cubic-bezier(.16,1,.3,1),mood-spectrum 1.8s linear}@keyframes mood-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes mood-spectrum{0%{filter:hue-rotate(0deg) drop-shadow(0 0 2px rgb(240 70 70/35%))}16.67%{filter:hue-rotate(60deg) drop-shadow(0 0 2px rgb(244 145 50/35%))}33.33%{filter:hue-rotate(120deg) drop-shadow(0 0 2px rgb(235 202 70/35%))}50%{filter:hue-rotate(180deg) drop-shadow(0 0 2px rgb(70 180 110/35%))}66.67%{filter:hue-rotate(240deg) drop-shadow(0 0 2px rgb(75 140 225/35%))}83.33%{filter:hue-rotate(300deg) drop-shadow(0 0 2px rgb(100 95 190/35%))}to{filter:hue-rotate(1turn) drop-shadow(0 0 2px rgb(175 105 205/35%))}}@media(max-width:540px){.mood-pill{padding:10px 12px;font-size:10px;gap:5px}}@media(prefers-reduced-motion:reduce){.mood-pill{transition:none}.mood-pill[data-shuffling=true] .mood-trigger-icon{animation:none;transform:none;filter:none}}:root[data-rainbow-preview]{--hero-start:var(--shuffle-hero-start)!important;--hero-end:var(--shuffle-hero-end)!important;--hero-ink:#080809!important;--hero-muted:#080809!important;--hero-accent:#17101F!important}html[data-rainbow-preview] .hero-section{transition:--hero-start 90ms linear,--hero-end 90ms linear}html[data-rainbow-preview] .hero-section,html[data-rainbow-preview] .hero-section *,html[data-rainbow-preview] .home-header{transition-property:--hero-start,--hero-end,transform,filter}html[data-rainbow-preview] .mood-pill,html[data-rainbow-preview] .mood-trigger{transition-property:background-color,border-color}:root[data-rainbow-preview=red],:root[data-rainbow=red]:not([data-rainbow-preview]){--rainbow-build:#001117}:root[data-rainbow-preview=orange],:root[data-rainbow=orange]:not([data-rainbow-preview]){--rainbow-build:#080D24}:root[data-rainbow-preview=yellow],:root[data-rainbow=yellow]:not([data-rainbow-preview]){--rainbow-build:#1D0324}:root[data-rainbow-preview=green],:root[data-rainbow=green]:not([data-rainbow-preview]){--rainbow-build:#1F0419}:root[data-rainbow-preview=blue],:root[data-rainbow=blue]:not([data-rainbow-preview]){--rainbow-build:#1B0A00}:root[data-rainbow-preview=indigo],:root[data-rainbow=indigo]:not([data-rainbow-preview]){--rainbow-build:#200411}:root[data-rainbow-preview=violet],:root[data-rainbow=violet]:not([data-rainbow-preview]){--rainbow-build:#031209}html[data-mood=ROYGBIV] .hero-intro h1 em{color:var(--rainbow-build,#0E0F16);transition:color .3s ease}.about-page{background:var(--white);color:var(--brand-navy)}.about-container{max-width:1280px;padding-inline:clamp(20px,4vw,44px)}.about-intro{position:relative;isolation:isolate;overflow:hidden;min-height:420px;padding-block:16px 16px;background:var(--white)}.about-hero-copy{position:relative;z-index:2}.about-intro .about-introduction{max-width:min(36vw,430px)}.about-hero-curve{position:absolute;left:0;bottom:-1px;width:100%;height:120px;z-index:1;fill:#f4f7fb;pointer-events:none}.about-hero-curve-edge{fill:none;stroke:var(--white);stroke-width:5;vector-effect:non-scaling-stroke}.about-intro+.about-road{border-top:0}.about-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1.6;color:var(--brand-blue-hover)}.about-hero-title{font-size:clamp(38px,4.2vw,56px);font-weight:900;-webkit-text-stroke:.25px currentColor;line-height:.98;letter-spacing:-.055em}.about-hero-title>span{color:var(--brand-blue)}@media(min-width:992px){.about-intro{padding-block:20px 100px}.about-hero-copy{max-width:480px}.about-intro .about-hero-title{font-size:clamp(36px,3.2vw,44px);line-height:1.02}.about-intro .about-introduction{max-width:440px;font-size:15px;line-height:1.55}}.about-introduction{max-width:690px;font-size:16px;line-height:1.8;color:#536176}.about-introduction p+p{margin-top:18px}.about-portrait-panel{position:absolute;bottom:-24px;right:-10px;width:min(62vw,880px);z-index:0}.about-portrait{display:block;width:100%;height:auto;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,11% 100%,11% 88%,0 88%);clip-path:polygon(0 0,100% 0,100% 100%,11% 100%,11% 88%,0 88%)}.about-section-title{font-size:clamp(28px,3vw,40px);font-weight:700;letter-spacing:-.035em;line-height:1.15}.about-copy{font-size:14px;line-height:1.75;color:#536176}.about-road{padding-block:8px 64px;background:#f4f7fb;border-block:1px solid #e5ebf3}.about-personal,.about-toolbox{padding-block:64px 0}.about-interest-card,.about-tool-group{border:1px solid #e1e7ef;border-radius:24px;background:var(--white)}.about-interest-image{transition:transform .2s ease}.about-interest-card h3,.about-tool-group h3{line-height:1.35;font-weight:600;letter-spacing:-.02em}.about-tool-group{background:#fbfcfe}.about-toolbox .badge{--bs-badge-font-size:12px;line-height:1.5;white-space:normal}.about-closing{padding-block:64px}.about-cta{border-radius:28px;background:var(--brand-navy);color:var(--white)}.about-cta .about-kicker{color:#a9ccff}.about-page :is(a,button):focus-visible{outline:3px solid var(--brand-blue);outline-offset:5px}.about-cta a:focus-visible{outline-color:var(--focus-ring)}.about-text-link{font-size:13px;font-weight:600;color:var(--brand-blue-hover);text-underline-offset:4px}.about-text-link:hover{color:#0c4a8e;text-decoration:underline}.career-desktop,.career-timeline,.career-track-scroll{width:100%;min-width:0;max-width:100%}.career-track-scroll{overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:16px}.career-help{max-width:760px}.career-track{--career-inset:60px;position:relative;box-sizing:border-box;width:100%;min-width:1080px;height:118px;padding:12px var(--career-inset)}.career-track:before{content:"";position:absolute;left:var(--career-inset);right:var(--career-inset);top:52px;height:1px;background:#d6dee8}.career-marker{position:absolute;top:12px;left:calc(var(--career-inset) + (100% - 2 * var(--career-inset)) * var(--career-position) / 100);transform:translateX(-50%);width:96px;min-width:0;border:0;padding:8px 4px;background:none;color:#526780;text-align:center;cursor:pointer;transition:color .2s ease}.career-marker:first-child{--career-position:0}.career-marker:nth-child(2){--career-position:12}.career-marker:nth-child(3){--career-position:24;width:58px}.career-marker:nth-child(4){--career-position:30.5;width:66px;padding-inline:2px}.career-marker:nth-child(5){--career-position:40}.career-marker:nth-child(6){--career-position:56}.career-marker:nth-child(7){--career-position:70}.career-marker:nth-child(8){--career-position:88}.career-marker:nth-child(9){--career-position:100}.career-year{display:block;min-height:18px;margin-bottom:8px;font-size:11px;line-height:18px;font-weight:600;color:#526780;white-space:nowrap}.career-dot{position:relative;display:block;width:12px;height:12px;margin:0 auto 16px;border:0;border-radius:50%;background:#95a5b9;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.career-label{display:block;width:100%;font-size:11px;line-height:1.25;font-weight:500;white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.career-marker[data-active=true]{color:var(--brand-blue);z-index:1}.career-marker[data-active=true] .career-label{font-weight:600}.career-marker[data-active=true] .career-dot{transform:scale(1.5);background:var(--brand-blue)}.career-marker[data-neighbor=true] .career-dot{transform:scale(1.1);background:#789bc6}.career-marker[aria-pressed=true] .career-dot{transform:scale(1.2);background:var(--brand-blue);box-shadow:0 0 0 3px #1476da18}.career-marker[aria-pressed=true][data-active=true] .career-dot{transform:scale(1.5)}.career-panel{animation:career-panel-in .18s ease both}@keyframes career-panel-in{0%{opacity:.7}to{opacity:1}}.career-card{border:1px solid #e1e7ee;border-radius:14px;background:var(--white);box-shadow:0 3px 16px #12345a05}.career-card h3{font-weight:650;letter-spacing:-.025em}.career-role{display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:600;line-height:1.5;color:#33465f}.career-role>span{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#687990}.career-logo{display:block;max-width:min(160px,100%);max-height:64px;width:auto;height:auto;object-fit:contain}.career-image{background:#edf3fa}.career-image img{display:block;width:100%;max-width:330px;height:auto;aspect-ratio:4/3;object-fit:contain}.career-mobile{border-left:2px solid #d2deec;margin-left:7px;padding-left:22px}.career-mobile>li{position:relative;padding-bottom:10px}.career-mobile>li:before{content:"";position:absolute;left:-29px;top:21px;width:10px;height:10px;border:0;border-radius:50%;background:#8da6c5;transition:transform .24s ease,background-color .24s ease}.career-mobile>li[data-active=true]:before{transform:scale(1.25);background:var(--brand-blue)}.career-mobile-trigger{border:0;border-bottom:1px solid #dce5f0;background:none;padding:15px 0;gap:16px;font-size:16px;font-weight:650;line-height:1.5;color:#263f5d;cursor:pointer;transition:color .24s ease,background-color .24s ease}.career-mobile-trigger[aria-expanded=true]{border-bottom-color:transparent;color:var(--brand-blue-hover)}.career-mobile-trigger:focus-visible{color:var(--brand-blue-hover)}.career-expand{font-size:22px;font-weight:400;flex-shrink:0}@media(hover:hover){.about-interest-card:hover .about-interest-image{transform:scale(1.025)}}@media(max-width:991px){.about-intro{min-height:0;padding-block:32px 56px}.about-intro .about-introduction{max-width:none}.about-portrait-panel{position:relative;bottom:auto;right:auto;width:100%;max-width:600px;margin:24px auto 0}.about-hero-curve{height:64px}.career-card{height:auto}.career-image img{max-width:280px}.about-personal,.about-toolbox{padding-top:48px}}@media(max-width:540px){.about-hero-title{font-size:clamp(34px,8.5vw,40px)}.about-introduction{font-size:15px}.about-road{padding-block:8px 40px}.about-portrait-panel{max-width:100%}.about-section-title{font-size:28px}.about-closing{padding-block:48px}}@media(prefers-reduced-motion:reduce){.about-page *{animation:none!important;transition:none!important}.about-interest-card:hover .about-interest-image,.career-marker[aria-pressed=true] .career-dot,.career-marker[aria-pressed=true][data-active=true] .career-dot,.career-marker[data-active=true] .career-dot,.career-marker[data-neighbor=true] .career-dot,.career-mobile>li[data-active=true]:before{transform:none}}.lab-prototype-link{display:block;height:100%;border-radius:8px;color:inherit}.lab-prototype-link:hover{color:inherit}.lab-prototype-link:hover .coming-soon{text-decoration:underline;text-underline-offset:3px}.lab-prototype-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:5px}.lab-prototype-art{background:var(--brand-navy);overflow:hidden}.lab-card-art img{display:block;width:100%;height:100%;object-fit:contain}.lab-card .lab-card-category{margin:0 0 8px;font-size:10px;color:var(--home-muted)}@media(max-width:540px){.lab-cards{grid-template-columns:minmax(0,1fr)}}.contact-page{--home-ink:var(--page-ink);--home-muted:var(--page-muted);--home-line:var(--page-line);padding:clamp(36px,5vw,64px) clamp(20px,4vw,44px);background:var(--white);color:var(--home-ink)}.contact-content{max-width:1100px;min-width:0}.contact-kicker{font-size:11px;font-weight:700;letter-spacing:.1em;line-height:1.6;color:var(--brand-blue-hover)}.contact-title{font-size:clamp(36px,4.2vw,56px);font-weight:750;line-height:1.08;letter-spacing:-.05em}.contact-intro{color:var(--home-muted);font-size:16px;line-height:1.7}.contact-page a:focus-visible{outline:3px solid var(--brand-blue);outline-offset:4px}.contact-form-card{background:#f7f8fa;border:1px solid var(--home-line);border-radius:24px}.contact-section-title{font-size:clamp(22px,2.4vw,28px);font-weight:650;line-height:1.2;letter-spacing:-.025em}.contact-icon{width:18px;height:18px;color:#64758d}.contact-details{font-size:15px;line-height:1.5}.contact-details a:hover{color:var(--brand-blue-hover)}.contact-form-card .form-label{font-size:13px}.contact-form-card .form-control{border-color:#d8e0eb;border-radius:8px;padding:10px 12px;font-size:15px;line-height:1.5}.contact-form-card textarea{resize:vertical}.contact-confirmation{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px 0}.contact-confirmation>*{margin:0}.contact-success-icon{width:72px;height:72px;color:#16734b;flex-shrink:0}.contact-confirmation .contact-section-title:focus{outline:3px solid var(--brand-blue);outline-offset:6px;border-radius:4px}@media(max-width:991px){.contact-confirmation{min-height:0;padding:24px 0}}:root[data-mood=Light] .home-footer .rv-logo-image,:root[data-mood=Light] .home-header .rv-logo-image,:root[data-mood=ROYGBIV] .home-header .rv-logo-image,:root[data-rainbow-preview] .home-header .rv-logo-image{filter:brightness(0)}.changelog-page{background:var(--white);color:var(--brand-navy);min-height:60vh;padding:clamp(48px,7vw,96px) 20px 100px}.changelog-container{width:100%;max-width:820px;margin-inline:auto}.changelog-eyebrow,.changelog-version{font-size:12px;font-weight:700;letter-spacing:.1em;line-height:1.5;color:var(--brand-blue-hover)}.changelog-page h1{font-size:clamp(38px,6vw,64px);font-weight:800;letter-spacing:-.05em;line-height:1.05;margin:12px 0 18px}.changelog-page h1 span{color:var(--brand-red)}.changelog-intro{font-size:clamp(16px,2vw,19px);line-height:1.65;color:#536176;max-width:670px}.changelog-entries{margin-top:48px;border-top:1px solid #e1e7ef}.changelog-entry{padding:30px 0;border-bottom:1px solid #e1e7ef}.changelog-entry-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px}.changelog-entry h2{font-size:clamp(22px,3vw,30px);font-weight:700;letter-spacing:-.025em;margin:6px 0 0}.changelog-status{font-size:12px;font-weight:600;padding:6px 10px;border-radius:999px;border:1px solid #d8e0eb;color:#33465f}.changelog-entry ul{margin:18px 0 0;padding-left:22px;color:#44536a;line-height:1.75}.changelog-entry li+li{margin-top:5px}.home-footer .footer-version{color:inherit;text-underline-offset:4px;font-size:12px}.home-footer .footer-version:hover{text-decoration:underline}.site-footer .footer-version{color:inherit;text-underline-offset:4px}.site-footer .footer-version:hover{text-decoration:underline}@media(max-width:540px){.changelog-page{padding:40px 20px 72px}.changelog-entries{margin-top:30px}}.changelog-checklist .changelog-completed{list-style:none;margin-left:-22px;display:flex;gap:8px;color:#718096}.changelog-checklist .changelog-completed>span:last-child{text-decoration:line-through;-webkit-text-decoration-color:#9ba8b8;text-decoration-color:#9ba8b8;text-decoration-thickness:1px}.changelog-check{font-weight:700;color:#218052;flex:none;text-decoration:none}