html{scroll-behavior:smooth;scroll-snap-type:y proximity;scroll-padding-top:4.75rem;scroll-padding-bottom:max(5.5rem, calc(env(safe-area-inset-bottom,0px) + 4rem));scrollbar-gutter:stable}body{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html,body{scroll-behavior:auto}html{scroll-snap-type:none}}.portfolio-snap-section{scroll-snap-align:start;scroll-snap-stop:normal;box-sizing:border-box;min-height:100dvh}.portfolio-section-anchor{scroll-margin-top:4.5rem}.portfolio-section-ambient{background-color:var(--color-bg);position:relative;overflow:hidden}.portfolio-section-ambient:before{content:"";pointer-events:none;z-index:0;opacity:.85;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 16% 84%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 16% 84%,#0000 100%);-webkit-mask-size:100% 100%;mask-size:100% 100%}.portfolio-section-ambient>*{z-index:1;position:relative}.portfolio-section-ambient[data-ambient="0"]:before{background:radial-gradient(ellipse 80% 55% at 88% 42%, color-mix(in oklch, var(--color-primary) 22%, transparent) 0%, transparent 55%), radial-gradient(ellipse 55% 45% at 12% 78%, color-mix(in oklch, var(--color-primary) 10%, transparent) 0%, transparent 50%)}.portfolio-section-ambient[data-ambient="1"]:before{background:radial-gradient(ellipse 70% 50% at 12% 38%, color-mix(in oklch, var(--color-primary) 20%, transparent) 0%, transparent 52%), radial-gradient(ellipse 60% 48% at 90% 72%, color-mix(in oklch, var(--color-secondary) 16%, transparent) 0%, transparent 50%)}.portfolio-section-ambient[data-ambient="2"]:before{background:radial-gradient(ellipse 95% 65% at 50% 45%, color-mix(in oklch, var(--color-primary) 14%, transparent) 0%, transparent 58%), radial-gradient(ellipse 42% 42% at 8% 15%, color-mix(in oklch, var(--color-info) 14%, transparent) 0%, transparent 48%)}.portfolio-section-ambient[data-ambient="3"]:before{background:radial-gradient(ellipse 58% 85% at 6% 50%, color-mix(in oklch, var(--color-primary) 15%, transparent) 0%, transparent 55%), radial-gradient(ellipse 50% 55% at 94% 22%, color-mix(in oklch, var(--color-tertiary) 14%, transparent) 0%, transparent 52%)}.portfolio-section-ambient[data-ambient="4"]:before{background:radial-gradient(ellipse 55% 50% at 72% 18%, color-mix(in oklch, var(--color-secondary) 13%, transparent) 0%, transparent 50%), radial-gradient(ellipse 68% 58% at 28% 88%, color-mix(in oklch, var(--color-primary) 18%, transparent) 0%, transparent 54%)}.portfolio-section-ambient[data-ambient="5"]:before{background:radial-gradient(ellipse 48% 48% at 50% 12%, color-mix(in oklch, var(--color-tertiary) 12%, transparent) 0%, transparent 46%), radial-gradient(ellipse 75% 55% at 62% 92%, color-mix(in oklch, var(--color-info) 12%, transparent) 0%, transparent 52%), radial-gradient(ellipse 35% 40% at 18% 55%, color-mix(in oklch, var(--color-primary) 10%, transparent) 0%, transparent 45%)}.about-hero-section{box-sizing:border-box;flex-direction:column;justify-content:center;width:100%;max-width:100%;margin:0 auto;padding:clamp(3.5rem,11vh,7.5rem) clamp(1.25rem,4vw,3.5rem) clamp(4rem,12vh,8.5rem);display:flex}.about-hero-inner{box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;width:100%;max-width:min(112rem,100%);margin:0 auto;display:flex}.about-hero-text{text-align:left;box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:flex-start;max-width:min(100%,38rem);padding:clamp(1rem,3vh,2.5rem) 0 clamp(2rem,5vh,4rem);display:flex}.about-hero-title{letter-spacing:-.055em;color:var(--color-on-surface);margin:0;font-size:clamp(3.75rem,14vw,9.5rem);font-weight:800;line-height:.88}.about-hero-lead{color:var(--color-primary);letter-spacing:-.03em;margin:clamp(1.75rem,4.5vw,3.5rem) 0 0;font-size:clamp(1.35rem,3.2vw,2.35rem);font-weight:700;line-height:1.15}.about-hero-body{max-width:38ch;color:var(--color-on-surface-alt);margin:clamp(1.75rem,3.5vw,3rem) 0 0;font-size:clamp(1.08rem,1.85vw,1.45rem);font-weight:400;line-height:2}.tech-marquee-section,.portfolio-showcase-section{box-sizing:border-box;width:100%;max-width:100%;margin:0 auto;padding:clamp(2.5rem,8vh,5rem) clamp(1.25rem,4vw,3.5rem) clamp(2rem,6vh,4rem)}.tech-marquee-section.portfolio-snap-section,.portfolio-showcase-section.portfolio-snap-section{flex-direction:column;justify-content:center;display:flex}.tech-marquee-shell,.portfolio-showcase-shell{z-index:1;box-sizing:border-box;flex:1;align-items:stretch;gap:clamp(2rem,5vw,3.5rem);width:100%;max-width:min(112rem,100%);min-height:min(72vh,36rem);margin:0 auto;display:grid;position:relative}@media (min-width:960px){.tech-marquee-shell,.portfolio-showcase-shell{grid-template-columns:minmax(0,1.45fr) minmax(0,.88fr);gap:clamp(2rem,4vw,4rem);min-height:min(62vh,32rem)}.tech-marquee-shell{align-items:center}.tech-marquee-shell--flip{grid-template-columns:minmax(0,.88fr) minmax(0,1.45fr);align-items:center}.tech-marquee-shell--flip .tech-marquee-copy{align-items:flex-end}.tech-marquee-shell--flip .tech-marquee-header{text-align:right}.tech-marquee-shell--flip .tech-marquee-tags{justify-content:flex-end}.tech-marquee-visual--bleed-start{margin-left:calc(50% - 50vw);margin-right:0;padding-left:clamp(1.25rem,4vw,3.5rem);padding-right:0}.portfolio-showcase-shell{align-items:start}}.tech-marquee-copy,.portfolio-showcase-copy{flex-direction:column;gap:clamp(1.35rem,3vh,2rem);min-width:0;display:flex}.tech-marquee-copy{justify-content:center}.portfolio-showcase-copy{justify-content:flex-start;padding-top:clamp(.15rem,1vh,.5rem)}.tech-marquee-header,.portfolio-showcase-header{text-align:left;max-width:min(100%,42rem)}.tech-marquee-eyebrow,.portfolio-showcase-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--color-primary);margin:0 0 .5rem;font-size:.75rem;font-weight:700}.tech-marquee-title,.portfolio-showcase-title{letter-spacing:-.05em;color:#0000;background:linear-gradient(118deg, var(--color-on-surface) 0%, var(--color-on-surface) 38%, color-mix(in oklch, var(--color-primary) 88%, var(--color-on-surface)) 72%, var(--color-primary) 100%);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.75rem,7vw,4.75rem);font-weight:800;line-height:.98}.tech-marquee-subtitle,.portfolio-showcase-subtitle{color:var(--color-on-surface-alt);margin:clamp(1rem,2.2vw,1.35rem) 0 0;font-size:clamp(1.05rem,1.75vw,1.28rem);font-weight:400;line-height:1.6}.tech-marquee-tags,.portfolio-showcase-tags{flex-wrap:wrap;gap:.5rem .65rem;max-width:min(100%,40rem);margin:0;padding:0;list-style:none;display:flex}.tech-marquee-tag,.portfolio-showcase-tag{letter-spacing:.02em;color:var(--color-on-surface);background:color-mix(in oklch, var(--color-on-surface) 8%, transparent);border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 20%, transparent);border-radius:999px;padding:.4rem .85rem;font-size:.8125rem;font-weight:600;display:inline-block;box-shadow:0 1px #ffffff0f;box-shadow:0 1px lab(100% 0 0/.06)}.portfolio-contact-shell{z-index:1;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(1.75rem,4vh,2.75rem);width:100%;max-width:min(36rem,100%);min-height:0;margin:0 auto;display:flex;position:relative}.portfolio-contact-header{text-align:center;flex-direction:column;align-items:center;gap:clamp(1rem,2.5vh,1.5rem);width:100%;display:flex}.portfolio-contact-header .tech-marquee-header{text-align:center;max-width:100%;margin-inline:auto}.portfolio-contact-tags{justify-content:center;max-width:100%;margin-inline:auto}.portfolio-contact-social{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(.75rem,2vw,1.25rem);display:flex}.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button{letter-spacing:.02em;height:auto;min-height:0;color:var(--color-on-surface);background-color:color-mix(in oklch, var(--color-on-surface) 8%, transparent);border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 20%, transparent);transition:background-color var(--standard-time) var(--standard-ease), border-color var(--standard-time) var(--standard-ease), box-shadow var(--standard-time) var(--standard-ease), transform var(--standard-time) var(--standard-ease);border-radius:999px;flex-shrink:0;padding:.4rem .9rem;font-size:.8125rem;font-weight:600;line-height:1.35;box-shadow:0 1px #ffffff0f;box-shadow:0 1px lab(100% 0 0/.06)}.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button:hover{color:var(--color-on-surface);background-color:color-mix(in oklch, var(--color-on-surface) 14%, transparent);border-color:color-mix(in oklch, var(--color-on-surface-alt) 30%, transparent);box-shadow:0 1px #ffffff14;box-shadow:0 1px lab(100% 0 0/.08)}.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button:hover:before,.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button:active:before{content:none}.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button:active{transform:translateY(1px)}@media (prefers-reduced-motion:reduce){.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button{transition:none}.portfolio-contact-header .portfolio-contact-social button.portfolio-contact-resume-button:active{transform:none}}.portfolio-contact-form-wrap{width:100%;min-width:0}.portfolio-contact-stage.tech-marquee-stage{flex:0 auto;width:100%;min-height:0}.portfolio-contact-stage .tech-marquee-stage-kicker{text-align:center}.portfolio-contact-form{z-index:1;flex-direction:column;gap:1.5rem;width:100%;display:flex;position:relative}.portfolio-contact-form .portfolio-contact-submit{align-self:center;margin-top:.25rem}.portfolio-contact-textarea{width:100%;min-height:9rem;padding:var(--space-4);font-size:var(--font-size-md);font-family:var(--font-sans);line-height:var(--line-height-body);color:var(--color-on-surface);background-color:var(--color-container-high);border:1px solid var(--color-outline);border-radius:var(--radius-md);resize:vertical;box-sizing:border-box}.portfolio-contact-textarea:focus{outline:2px solid var(--color-focus-ring);outline-offset:2px}.portfolio-contact-textarea-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2);color:var(--color-on-surface);text-align:left;display:block}.tech-marquee-visual,.portfolio-showcase-visual{align-items:stretch;min-width:0;min-height:clamp(14rem,32vh,22rem);display:flex}@media (min-width:960px){.tech-marquee-visual,.portfolio-showcase-visual{min-height:clamp(16rem,38vh,26rem)}.tech-marquee-visual:not(.tech-marquee-visual--bleed-start),.portfolio-showcase-visual{margin-right:calc(50% - 50vw);padding-right:clamp(1.25rem,4vw,3.5rem)}}.tech-marquee-stage,.portfolio-showcase-stage{border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 22%, transparent);background:linear-gradient(165deg, color-mix(in oklch, var(--color-on-surface) 9%, transparent) 0%, color-mix(in oklch, var(--color-on-surface) 4%, transparent) 100%);box-shadow:0 0 0 1px color-mix(in oklch, var(--color-primary) 14%, transparent), inset 0 1px 0 #ffffff12, 0 24px 48px -32px #0000008c;border-radius:1.25rem;flex-direction:column;flex:1;justify-content:center;gap:clamp(.75rem,2vh,1.25rem);padding:clamp(1.35rem,3.5vh,2.25rem) clamp(1rem,3vw,2rem);display:flex;position:relative;overflow:hidden}@supports (color:lab(0% 0 0)){.tech-marquee-stage,.portfolio-showcase-stage{box-shadow:0 0 0 1px color-mix(in oklch, var(--color-primary) 14%, transparent), inset 0 1px 0 lab(100% 0 0/.07), 0 24px 48px -32px lab(0% 0 0/.55)}}.tech-marquee-stage:before,.portfolio-showcase-stage:before{content:"";opacity:.35;background-image:radial-gradient(color-mix(in oklch, var(--color-on-surface-alt) 45%, transparent) 1px, transparent 1px);pointer-events:none;background-size:20px 20px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 85%);mask-image:linear-gradient(#000 0%,#0000 85%)}.portfolio-showcase-card-grid{z-index:1;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(1rem,2.5vw,1.75rem);width:100%;min-width:0;display:grid;position:relative}.tech-marquee-crawler-card{box-sizing:border-box;flex-shrink:0;width:clamp(260px,72vw,360px);max-width:100%}.tech-marquee-crawler-card>*{width:100%}.tech-marquee-single-slot{z-index:1;justify-content:center;width:100%;min-width:0;display:flex;position:relative}.tech-marquee-single-slot-inner{width:100%;max-width:min(100%,380px)}.portfolio-showcase-empty{z-index:1;text-align:center;color:color-mix(in oklch, var(--color-on-surface-alt) 92%, transparent);border:1px dashed color-mix(in oklch, var(--color-on-surface-alt) 28%, transparent);background:color-mix(in oklch, var(--color-on-surface) 4%, transparent);border-radius:.75rem;margin:0;padding:clamp(2rem,5vh,3rem) clamp(1rem,3vw,1.5rem);font-size:clamp(1rem,1.5vw,1.1rem);line-height:1.55;position:relative}.tech-marquee-stage-kicker{text-align:right}.tech-marquee-stage-kicker,.portfolio-showcase-stage-kicker{z-index:1;letter-spacing:.2em;text-transform:uppercase;color:color-mix(in oklch, var(--color-on-surface-alt) 92%, transparent);margin:0;font-size:.6875rem;font-weight:700;position:relative}.tech-marquee-track{z-index:1;flex-direction:column;flex:auto;min-width:0;min-height:0;margin:0 calc(-1*clamp(.5rem,2vw,1rem));display:flex;position:relative}.tech-marquee-item{flex-shrink:0;justify-content:center;align-items:stretch;padding:.25rem .15rem;display:flex}.tech-marquee-item-inner{flex-direction:column;align-items:center;gap:.45rem;min-width:4.5rem;display:flex}.tech-marquee-item img{object-fit:contain;width:clamp(52px,9vw,80px);height:clamp(52px,9vw,80px);filter:drop-shadow(0 2px 6px color-mix(in oklch, var(--color-on-surface) 22%, transparent));display:block}.tech-marquee-name{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in oklch, var(--color-on-surface-alt) 88%, transparent);text-align:center;max-width:6.5rem;font-size:clamp(.65rem,1.35vw,.75rem);font-weight:600;line-height:1.2}@media (max-width:959px){.tech-marquee-shell,.portfolio-showcase-shell{min-height:0}.tech-marquee-header,.portfolio-showcase-header,.tech-marquee-subtitle,.portfolio-showcase-subtitle,.tech-marquee-tags,.portfolio-showcase-tags{max-width:none}.tech-marquee-visual,.portfolio-showcase-visual{min-height:0}.tech-marquee-shell--flip .tech-marquee-copy{order:-1;align-items:flex-start}.tech-marquee-shell--flip .tech-marquee-header{text-align:left}.tech-marquee-shell--flip .tech-marquee-tags{justify-content:flex-start}.tech-marquee-visual--bleed-start{margin-left:0;padding-left:0}}@media (max-width:768px){.about-hero-section{padding:clamp(2.5rem,8vh,4rem) clamp(1rem,4vw,1.5rem) clamp(3rem,10vh,5rem)}.about-hero-text{max-width:none;padding-left:0;padding-right:0}.about-hero-body{max-width:none}}.lab-page{box-sizing:border-box;width:100%;max-width:min(1120px,100%);margin:0 auto;padding:clamp(2rem,6vh,3.5rem) clamp(1.25rem,4vw,2.5rem) clamp(3rem,9vh,5rem)}.lab-page-back{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary);letter-spacing:.02em;transition:color var(--standard-time) var(--standard-ease), opacity var(--standard-time) var(--standard-ease);align-items:center;gap:.35rem;margin-bottom:clamp(1.25rem,2.5vh,2rem);text-decoration:none;display:inline-flex}.lab-page-back:hover{color:color-mix(in oklch, var(--color-primary) 82%, var(--color-on-surface))}.lab-page-back:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.lab-page-header{max-width:min(40rem,100%);margin-bottom:clamp(1.75rem,4vh,2.5rem)}.lab-page-title{letter-spacing:-.04em;background:linear-gradient(118deg, var(--color-on-surface) 0%, var(--color-on-surface) 38%, color-mix(in oklch, var(--color-primary) 88%, var(--color-on-surface)) 72%, var(--color-primary) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.25rem,6vw,4rem);font-weight:800;line-height:1}.lab-page-lead{margin-top:clamp(.75rem,1.5vw,1.1rem)}.lab-page-body{flex-direction:column;gap:clamp(1.5rem,3vh,2.25rem);display:flex}.lab-split{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start;gap:clamp(1.25rem,3vw,2rem);display:grid}@media (max-width:960px){.lab-split{grid-template-columns:1fr}}.lab-preset-row{flex-wrap:wrap;gap:.5rem .75rem;display:flex}.lab-code-block{padding:var(--space-4) var(--space-5);font-size:var(--font-size-sm);color:var(--color-on-surface-alt);white-space:pre;border-radius:0 0 var(--radius-md) var(--radius-md);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;line-height:1.55;overflow-x:auto}.lab-code-shell{border-radius:var(--radius-lg);border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 20%, transparent);background:color-mix(in oklch, var(--color-surface-alt) 50%, transparent);overflow:hidden}.lab-code-shell h2,.lab-code-shell h3{padding:var(--space-3) var(--space-4);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--color-on-surface-alt);border-bottom:1px solid color-mix(in oklch, var(--color-on-surface-alt) 14%, transparent);margin:0}.lab-palette-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:clamp(1rem,2vw,1.5rem);width:100%;display:grid}.lab-control-row{gap:var(--space-4);flex-wrap:wrap;align-items:flex-end;display:flex}.lab-color-swatch{border:2px solid color-mix(in oklch, var(--color-on-surface-alt) 22%, transparent);border-radius:var(--radius-lg);cursor:pointer;width:3.75rem;height:3.75rem;box-shadow:var(--elevation-1);background-color:#0000;flex-shrink:0;padding:0}.lab-color-swatch:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}.lab-loading{padding:var(--space-8);text-align:center;font-size:var(--font-size-md);color:var(--color-on-surface-alt)}.lab-error-banner{padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background-color:color-mix(in oklch, var(--color-error) 16%, var(--color-surface));color:var(--color-on-surface);border:1px solid color-mix(in oklch, var(--color-error) 32%, transparent)}.lab-refract-preview-outer{border-radius:var(--radius-lg);border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 18%, transparent);background-image:url(/assets/f8.png);background-position:50%;background-size:cover;min-height:22rem;overflow:hidden}.lab-refract-preview-inner{min-height:22rem;padding:var(--space-6);justify-content:center;align-items:center;display:flex}.lab-ttt-wrap{align-items:center;gap:var(--space-5);text-align:center;flex-direction:column;max-width:28rem;margin:0 auto;display:flex}.lab-ttt-status{font-size:var(--font-size-md);color:var(--color-on-surface-alt);line-height:1.5}.lab-ttt-status strong{color:var(--color-on-surface);font-weight:var(--font-weight-semibold)}.lab-ttt-meta{font-size:var(--font-size-sm);color:color-mix(in oklch, var(--color-on-surface-alt) 88%, transparent)}.lab-ttt-grid{gap:var(--space-3);aspect-ratio:1;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:100%;max-width:20rem;display:grid}.lab-ttt-cell{border-radius:var(--radius-lg);border:1px solid color-mix(in oklch, var(--color-on-surface-alt) 22%, transparent);background:color-mix(in oklch, var(--color-container-high) 75%, transparent);font-size:clamp(2.5rem,11vw,3.25rem);font-weight:var(--font-weight-bold);color:var(--color-on-surface);cursor:pointer;transition:background-color var(--standard-time) var(--standard-ease), border-color var(--standard-time) var(--standard-ease), transform var(--standard-time) var(--standard-ease);-webkit-user-select:none;user-select:none;min-width:0;min-height:0;line-height:1;font-family:var(--font-sans);justify-content:center;align-items:center;display:flex}.lab-ttt-cell:hover:not(:disabled){border-color:color-mix(in oklch, var(--color-primary) 45%, transparent);background:color-mix(in oklch, var(--color-primary) 10%, var(--color-container-high))}.lab-ttt-cell:active:not(:disabled){transform:scale(.97)}.lab-ttt-cell:disabled{cursor:default;opacity:.92}.lab-workflow-canvas-wrap{width:100%;min-height:min(560px,70vh)}
.navigation-module__IeFw5q__navigation{flex:1;min-width:0;display:flex}.navigation-module__IeFw5q__navList{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.navigation-module__IeFw5q__navItem{margin:0;padding:0}.navigation-module__IeFw5q__navLink{padding:var(--space-1) var(--space-3);color:var(--color-on-surface);cursor:pointer;font-size:var(--font-size-md);white-space:nowrap;border-radius:var(--radius-md);transition:color var(--standard-time) var(--standard-ease);background:0 0;border:none;font-weight:500;text-decoration:none;position:relative}.navigation-module__IeFw5q__navLink:after{content:"";bottom:0;left:var(--space-3);right:var(--space-3);background-color:var(--color-primary);transform-origin:50%;height:2px;transition:transform var(--standard-time) var(--standard-ease);position:absolute;transform:scaleX(0)}.navigation-module__IeFw5q__navLink:hover{color:var(--color-on-surface)}.navigation-module__IeFw5q__navLink:hover:after{transform:scaleX(1)}.navigation-module__IeFw5q__navLink:active{opacity:.8}.navigation-module__IeFw5q__navLink:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}
.header-module__mwQBDG__header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);width:100%;z-index:var(--z-header);box-shadow:var(--elevation-1);flex-shrink:0;position:sticky;top:0}.header-module__mwQBDG__container{padding:var(--space-2) var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-3);box-sizing:border-box;max-width:100%;min-height:48px;display:flex}.header-module__mwQBDG__title{font-size:var(--font-size-lg);color:var(--color-on-surface);letter-spacing:-.02em;cursor:pointer;border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);margin:0;margin:calc(var(--space-1) * -1) calc(var(--space-2) * -1);transition:color var(--standard-time) var(--standard-ease), transform var(--standard-time) var(--standard-ease);flex-shrink:0;font-weight:700;line-height:1.2;text-decoration:none;display:inline-block}.header-module__mwQBDG__title:hover{color:var(--color-primary);transform:translateY(-1px)}.header-module__mwQBDG__title:active{transform:translateY(0)}.header-module__mwQBDG__title:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.header-module__mwQBDG__mobileMenuButton{cursor:pointer;color:var(--color-on-surface);padding:var(--space-1);font-size:var(--font-size-lg);border-radius:var(--radius-md);transition:background-color var(--standard-time) var(--standard-ease), color var(--standard-time) var(--standard-ease), transform var(--standard-time) var(--standard-ease);background:0 0;border:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;line-height:1;display:none}.header-module__mwQBDG__mobileMenuButton:hover{background-color:var(--color-surface-hover);transform:scale(1.05)}.header-module__mwQBDG__mobileMenuButton:active{background-color:var(--color-surface-pressed);transform:scale(.95)}.header-module__mwQBDG__mobileMenuButton:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.header-module__mwQBDG__desktopNav{display:flex}.header-module__mwQBDG__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.header-module__mwQBDG__mobileMenu{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);width:100%;box-shadow:var(--shadow-lg);z-index:var(--z-header-menu);animation:header-module__mwQBDG__slideDown var(--motion-enter-duration) var(--standard-ease);border-radius:0 0 var(--radius-lg) var(--radius-lg);-webkit-backdrop-filter:blur(10px);display:none;position:absolute;top:100%;left:0;overflow:hidden}.header-module__mwQBDG__backdrop{z-index:var(--z-header-backdrop);animation:header-module__mwQBDG__fadeIn var(--standard-time) var(--standard-ease);background-color:#0000004d;display:none;position:fixed;inset:0}.header-module__mwQBDG__mobileNav{width:100%}.header-module__mwQBDG__mobileNavList{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.header-module__mwQBDG__mobileNavItem{border-bottom:1px solid var(--color-border);margin:0;padding:0}.header-module__mwQBDG__mobileNavItem:last-child{border-bottom:none}.header-module__mwQBDG__mobileNavLink{width:100%;padding:var(--space-3) var(--space-4);color:var(--color-on-surface);cursor:pointer;font-size:var(--font-size-md);text-align:left;transition:background-color var(--standard-time) var(--standard-ease), color var(--standard-time) var(--standard-ease), padding-left var(--standard-time) var(--standard-ease);background:0 0;border:none;font-weight:500;text-decoration:none;display:block;position:relative}.header-module__mwQBDG__mobileNavLink:before{content:"";background-color:var(--color-primary);width:3px;transition:transform var(--standard-time) var(--standard-ease);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.header-module__mwQBDG__mobileNavLink:hover{background-color:var(--color-surface-hover);padding-left:var(--space-5)}.header-module__mwQBDG__mobileNavLink:hover:before{transform:scaleY(1)}.header-module__mwQBDG__mobileNavLink:active{background-color:var(--color-surface-pressed)}.header-module__mwQBDG__mobileNavLink:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}.header-module__mwQBDG__mobileActions{border-top:1px solid var(--color-border);flex-direction:column;width:100%;display:flex}.header-module__mwQBDG__mobileActionItem{border-bottom:1px solid var(--color-border);align-items:center;width:100%;display:flex}.header-module__mwQBDG__mobileActionItem:last-child{border-bottom:none}.header-module__mwQBDG__mobileActionItem>*{width:100%;padding:var(--space-3) var(--space-4);text-align:left;justify-content:flex-start}@keyframes header-module__mwQBDG__slideDown{0%{opacity:0;transform:translateY(-10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes header-module__mwQBDG__fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.header-module__mwQBDG__mobileMenu,.header-module__mwQBDG__backdrop{animation:none}.header-module__mwQBDG__title:hover,.header-module__mwQBDG__mobileMenuButton:hover,.header-module__mwQBDG__mobileMenuButton:active{transform:none}}@media (max-width:768px){.header-module__mwQBDG__container{padding:var(--space-2) var(--space-2);gap:var(--space-2)}.header-module__mwQBDG__title{display:none}.header-module__mwQBDG__mobileMenuButton{display:flex}.header-module__mwQBDG__desktopNav{display:none}.header-module__mwQBDG__mobileMenu,.header-module__mwQBDG__backdrop{display:block}.header-module__mwQBDG__actions{display:none}}
.floating-action-link-module__6iv2xa__root{z-index:105;bottom:max(clamp(1rem, 4vw, 1.75rem), env(safe-area-inset-bottom,0px));right:max(clamp(1rem, 4vw, 1.75rem), env(safe-area-inset-right,0px));justify-content:center;align-items:center;gap:var(--space-2);min-height:3.25rem;padding:0 var(--space-5);border-radius:var(--radius-pill);background-color:var(--color-primary);color:var(--color-on-primary);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);box-shadow:var(--elevation-2);border:1px solid color-mix(in oklch, var(--color-on-primary) 18%, transparent);cursor:pointer;box-sizing:border-box;transition:background-color var(--standard-time) var(--standard-ease), color var(--standard-time) var(--standard-ease), box-shadow var(--standard-time) var(--standard-ease), transform var(--standard-time) var(--standard-ease);line-height:1.2;text-decoration:none;display:inline-flex;position:fixed}@media (prefers-reduced-motion:reduce){.floating-action-link-module__6iv2xa__root{transition:none}}.floating-action-link-module__6iv2xa__root:hover{filter:brightness(1.06);box-shadow:var(--elevation-3)}.floating-action-link-module__6iv2xa__root:active{transform:scale(.98)}.floating-action-link-module__6iv2xa__root:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.floating-action-link-module__6iv2xa__icon{flex-shrink:0;font-size:1.125rem}.floating-action-link-module__6iv2xa__label{white-space:nowrap}.floating-action-link-module__6iv2xa__iconOnly{border-radius:50%;width:3.5rem;height:3.5rem;min-height:0;padding:0}.floating-action-link-module__6iv2xa__iconOnly .floating-action-link-module__6iv2xa__icon{margin:0;font-size:1.25rem}
