@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:var(--font-family-sans);--font-mono:var(--font-geist-mono);--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-family-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.list-item{display:list-item}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--background:#050505;--foreground:#f4f4f4;--muted:#c4c4c4;--line:#343434;--line-hover:var(--foreground)}@supports (color:color-mix(in lab, red, red)){:root{--line-hover:color-mix(in srgb, var(--foreground) 35%, transparent)}}:root{--content-max:68rem;--surface:#0a0a0a;--focus-ring:#8ab4ff;--rule:var(--foreground)}@supports (color:color-mix(in lab, red, red)){:root{--rule:color-mix(in srgb, var(--foreground) 22%, transparent)}}:root{--track-display:-.026em;--track-title:-.02em;--track-body:.008em;--track-caps:.11em;--lead-display:.9;--lead-hero-name:1;--track-hero-name:-.02em;--lead-title:1;--lead-nav:1.12;--lead-body:1.58;--lead-copy:1.55;--lead-long:1.72}:root[data-theme=light]{--background:#fafafa;--foreground:#111;--muted:#555;--line:#d4d4d4;--surface:#f0f0f0;--focus-ring:#2563eb}:root[data-theme=light] .project-highlight,:root[data-theme=light] :where(.project-work-jump-card){background:var(--surface);border-color:var(--line)}:root[data-theme=light] .project-highlight blockquote{color:#222}:root[data-theme=light] .project-content,:root[data-theme=light] .project-section-body{color:#333}:root[data-theme=light] .play-embed-wrap,:root[data-theme=light] .skip-link{background:var(--surface);border-color:var(--line)}:root[data-theme=light] .not-found-link:hover,:root[data-theme=light] .resume-cta:hover{background:var(--surface);border-color:#999}:root[data-theme=light] .resume-detail{border-color:var(--line)}body{background:var(--background);color:var(--foreground);font-family:var(--font-family-sans), system-ui, sans-serif;line-height:var(--lead-body);letter-spacing:var(--track-body)}body:after{content:"";z-index:9999;pointer-events:none;opacity:.028;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}body[data-lightbox-open=true]:after{display:none}:root[data-theme=light] body:after{opacity:.04;mix-blend-mode:multiply}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@keyframes fadeUp{0%{opacity:1;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes nvFadeIn{0%{opacity:0}to{opacity:1}}@keyframes sectionScrollIn{0%{opacity:1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes digitFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}a{color:inherit}.skip-link{z-index:1000;border:1px solid var(--line);background:var(--surface);color:var(--foreground);border-radius:.45rem;padding:.55rem .75rem;text-decoration:none;position:absolute;top:-3rem;left:.75rem}.skip-link:focus-visible{top:.75rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (pointer:fine) and (prefers-reduced-motion:no-preference){html.dot-cursor-ready,html.dot-cursor-ready a,html.dot-cursor-ready button,html.dot-cursor-ready [role=button],html.dot-cursor-ready label,html.dot-cursor-ready input,html.dot-cursor-ready textarea,html.dot-cursor-ready select,html.dot-cursor-ready summary,html.dot-cursor-ready .work-card,html.dot-cursor-ready .lightbox-trigger,html.dot-cursor-ready .expandable-image,html.dot-cursor-ready .project-toc-link{cursor:none}}.dot-cursor{z-index:99999;pointer-events:none;opacity:0;will-change:transform;width:8px;height:8px;transition:opacity .2s;position:fixed;top:0;left:0;transform:translate(-40px,-40px)}.dot-cursor:before{content:"";background:var(--foreground);mix-blend-mode:difference;border-radius:50%;width:100%;height:100%;transition:transform .18s cubic-bezier(.22,1,.36,1),opacity .2s;display:block;transform:translate(-50%,-50%)scale(1)}.dot-cursor--visible{opacity:1}.dot-cursor--hover:before{transform:translate(-50%,-50%)scale(2.6)}.dot-cursor--input:before{background:var(--focus-ring);mix-blend-mode:normal;opacity:.55;transform:translate(-50%,-50%)scale(2.2)}@media (pointer:coarse),(hover:none){.dot-cursor{display:none}}@media (prefers-reduced-motion:reduce){.dot-cursor{display:none}}.page-shell{width:min(var(--content-max), 100%);margin:0 auto;padding:1.2rem 1.4rem 4.5rem}html.project-enter-lock,html.project-enter-lock body{overflow:hidden}html.project-enter-settling .project-page{opacity:0}.project-enter-overlay{z-index:10001;background:var(--background);pointer-events:none;position:fixed;inset:0}.project-enter-frame{transform-origin:50%;border:1px solid var(--line);background:var(--surface);will-change:transform, border-radius;position:fixed;overflow:hidden}.project-enter-image{object-fit:cover;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.project-enter-overlay{display:none}}.not-found{align-items:end;min-height:calc(60svh - 8rem);margin-top:3rem;animation:.52s ease-out both fadeUp;display:grid;position:relative}.not-found-content{z-index:1;flex-direction:column;align-items:flex-start;display:flex;position:relative}.not-found-label{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--muted);margin-bottom:.75rem;font-size:.78rem}.not-found-code{letter-spacing:var(--track-display);color:var(--line);cursor:default;gap:.02em;margin-top:3rem;font-size:clamp(5rem,14vw,10rem);font-weight:400;line-height:1;display:flex}.not-found-digit{transition:color .5s;display:inline-block}.not-found-code:hover .not-found-digit{color:var(--foreground)}.not-found-code:hover .not-found-digit:nth-child(2){color:var(--muted)}.not-found-title{font-size:clamp(1.8rem,4vw,3rem);line-height:var(--lead-title);letter-spacing:var(--track-title);text-wrap:balance;margin-top:0}.not-found-body{color:var(--muted);max-width:34ch;line-height:var(--lead-copy);text-wrap:pretty;margin-top:.65rem}.not-found-link{border:1px solid var(--line);border-radius:.45rem;align-items:center;gap:.4rem;margin-top:1.8rem;padding:.85rem 1.15rem;font-size:.92rem;text-decoration:none;transition:border-color .2s,background .2s,gap .28s;display:inline-flex}.not-found-link:after{content:"←";opacity:0;font-size:.88em;transition:opacity .22s,transform .28s cubic-bezier(.25,.46,.45,.94);display:inline-block;transform:translate(4px)}.not-found-link:hover{border-color:var(--line-hover);background:var(--surface);gap:.55rem}.not-found-link:hover:after{opacity:1;transform:translate(0)}.not-found-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@media (min-width:768px){.not-found{grid-template-columns:1fr auto;align-items:end;gap:3rem;min-height:calc(55svh - 6rem);margin-top:4rem}.not-found-code{opacity:.18;align-self:end;margin-top:0;font-size:clamp(8rem,16vw,14rem);transition:opacity .6s}.not-found-code:hover{opacity:1}}@media (prefers-reduced-motion:no-preference){.not-found-digit{animation:4.5s ease-in-out infinite digitFloat}.not-found-digit:first-child{animation-delay:0s}.not-found-digit:nth-child(2){animation-delay:-1.5s}.not-found-digit:nth-child(3){animation-delay:-3s}.not-found-link:active{transform:scale(.97)}}.site-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2.8rem;animation:.42s ease-out both fadeUp;display:flex}.site-header-left{flex-direction:row;align-items:center;gap:.85rem;display:flex}.site-header-right{flex-direction:column;align-items:flex-end;gap:.85rem;display:flex}.site-kicker{color:var(--muted);letter-spacing:.02em;font-size:.8rem}.theme-toggle{border:1px solid var(--line);width:1.75rem;height:1.75rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:.35rem;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,transform .12s;display:inline-flex;position:relative}.theme-toggle:before{content:"";position:absolute;inset:-.75rem}.theme-toggle:hover{color:var(--foreground);border-color:var(--line-hover)}.theme-toggle:active{transform:scale(.92)}.theme-toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.theme-toggle-icon{display:block}.site-nav-list{text-align:right;font-size:clamp(1.02rem,1.9vw,1.4rem);line-height:var(--lead-nav);gap:.18rem;margin:0;padding:0;font-weight:500;list-style:none;display:grid}@media (min-width:900px){.home-page .site-header,.project-page .site-header{align-items:center;margin-bottom:2.2rem}.home-page .site-header-right,.home-page .site-nav-list,.project-page .site-header-right,.project-page .site-nav-list{flex-direction:row}.home-page .site-nav-list,.project-page .site-nav-list{gap:1.3rem;font-size:.94rem;display:flex}.project-page .site-header{margin-bottom:0}}.site-nav-list a{opacity:.62;padding:.72rem 0;text-decoration:none;transition:opacity .18s,transform .22s;display:inline-block}.site-nav-list-item--active a,.site-nav-list a[aria-current=page]{opacity:1}@media (prefers-reduced-motion:no-preference){.site-nav-list a:hover,.site-nav-list a:focus-visible{opacity:.72}.site-nav-list a:active{opacity:.52}}@media (prefers-reduced-motion:reduce){.site-nav-list a:hover,.site-nav-list a:focus-visible{opacity:.68}}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:.2rem}.hero{margin-bottom:3.3rem}.project-page .site-header{border-bottom:1px solid var(--line);margin-bottom:0;padding-bottom:1.15rem}.project-page .project-topbar{margin-top:1rem;margin-bottom:.15rem}.project-page .project-hero{text-align:left;flex-direction:column;align-items:flex-start;margin-top:1rem;padding-top:1.35rem;display:flex}@media (min-width:640px){.project-page .project-hero{padding-top:1.65rem}}.project-page .project-hero-title{font-size:clamp(2.35rem,6.8vw,4.85rem);font-weight:400;line-height:var(--lead-title);letter-spacing:var(--track-display);color:var(--foreground);text-align:left;overflow-wrap:break-word;text-wrap:balance;align-self:stretch;margin:0}.project-page .project-hero-lede{max-width:50ch;font-size:clamp(1.02rem,2.1vw,1.22rem);line-height:var(--lead-body);color:var(--muted);text-align:left;text-wrap:pretty;align-self:stretch;margin:1rem 0 0}.hero-name{font-size:clamp(2.85rem,8.1vw,6.7rem);line-height:var(--lead-hero-name);letter-spacing:var(--track-hero-name);white-space:nowrap}.hero-role{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--muted);margin:0 0 .75rem;font-size:.78rem;font-weight:600}.hero-statement-decoder{text-wrap:pretty;max-width:38ch;margin-top:1.2rem;font-size:clamp(1.18rem,2.5vw,1.55rem);font-weight:500;line-height:1.38;display:grid}.hero-statement-decoder-sizer{visibility:hidden;grid-area:1/1}.hero-statement-decoder-visible{grid-area:1/1;min-width:0}.hero-proof{max-width:56ch;color:var(--muted);font-size:1rem;line-height:var(--lead-body);text-wrap:pretty;margin-top:1rem}.hero-credentials{max-width:56ch;color:var(--muted);letter-spacing:.03em;opacity:.8;margin-top:.85rem;font-size:.82rem}.hero-statement-decoder-cursor{color:var(--muted);margin-left:1px;animation:.76s step-end infinite hero-cursor-blink}@keyframes hero-cursor-blink{50%{opacity:0}}.hero-actions{margin-top:1.15rem}.work,.about{max-width:60rem}.about{animation:.52s ease-out .16s both fadeUp}.work h2,.about h2{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--muted);margin-bottom:.75rem;font-size:.78rem}.work h2{color:var(--foreground);opacity:.55;font-weight:600}.work-list{border-top:1px solid var(--line)}.work-gallery{position:relative}.work-gallery-head{font-family:var(--font-geist-mono,monospace);letter-spacing:.08em;color:var(--muted);justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .9rem;font-size:.72rem;display:flex}.work-gallery-head span:first-child{text-transform:uppercase;letter-spacing:.16em}.work-gallery-rule{background:var(--line);transform-origin:0;height:1px}.work-gallery-feature{padding:2rem 0 2.4rem}.work-gallery-grid{grid-template-columns:1fr 1fr;gap:clamp(1.6rem,4vw,2.75rem);padding:2rem 0 1.6rem;display:grid}.work-gallery-closing-wrap{grid-column:1/-1;width:min(72%,42rem);margin-left:auto}@media (max-width:760px){.work-gallery-grid{grid-template-columns:1fr;gap:2.2rem}.work-gallery-closing-wrap{grid-column:auto;width:100%}}.work-gallery-index{font-family:var(--font-geist-mono,monospace);letter-spacing:.08em;color:var(--muted);margin:0 0 .75rem;font-size:.72rem;display:block}.work-card{color:inherit;cursor:pointer;display:block}.work-card:focus-visible{outline:2px solid var(--foreground);outline-offset:6px;border-radius:.75rem}.work-media{position:relative}.work-thumb-echo{border:1px solid var(--line);border-radius:.75rem;position:absolute;inset:.9rem -.7rem -.9rem .7rem}@supports (color:color-mix(in lab, red, red)){.work-thumb-echo{border:1px solid color-mix(in srgb, var(--line) 70%, transparent)}}.work-thumb-echo{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.work-thumb-echo{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.work-thumb-echo{pointer-events:none;transform:rotate(-.6deg)}.work-thumb{background:var(--surface);aspect-ratio:3/2;border:1px solid var(--line);border-radius:.75rem;transition:transform .42s cubic-bezier(.22,1,.36,1),box-shadow .42s;position:relative;overflow:hidden;box-shadow:0 1.2rem 2.4rem -1.4rem #000000b8}.work-thumb>img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);display:block}.work-card:hover .work-thumb,.work-card:focus-visible .work-thumb{transform:translateY(-4px);box-shadow:0 1.9rem 3rem -1.5rem #000000c7}.work-card:hover .work-thumb>img,.work-card:focus-visible .work-thumb>img{transform:scale(1.03)}.work-thumb--tiktok-logo{background:#08080d}.work-thumb--tiktok-logo .tt-cover-cluster{transform-origin:50%;transform:translate(-16%,15%)scale(1.2)}.work-thumb--tiktok-logo .work-tab{z-index:1}.work-tab{font-family:var(--font-geist-mono,monospace);letter-spacing:.05em;color:var(--foreground);background:var(--background);padding:.3rem .6rem;font-size:.66rem;position:absolute;top:.9rem;left:.9rem}@supports (color:color-mix(in lab, red, red)){.work-tab{background:color-mix(in srgb, var(--background) 92%, transparent)}}.work-tab{border:1px solid var(--line);transform-origin:0 0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:.25rem;transition:transform .32s cubic-bezier(.22,1,.36,1);transform:rotate(-1.7deg);box-shadow:0 2px 8px -4px #0009}.work-gallery-grid>.work-gallery-cell:nth-child(2) .work-tab{transform:rotate(1.4deg)}.work-card:hover .work-tab,.work-card:focus-visible .work-tab{transform:rotate(0)}.work-cap{margin-top:1.1rem}.work-title{letter-spacing:var(--track-title);color:var(--foreground);overflow-wrap:break-word;text-wrap:balance;margin:0;font-weight:600;line-height:1.06}.work-gallery-feature .work-title{font-size:clamp(1.9rem,3.6vw,2.6rem)}.work-gallery-grid .work-title{font-size:clamp(1.35rem,2.4vw,1.6rem)}.work-out{color:var(--muted);max-width:58ch;margin:.65rem 0 0;font-size:.97rem;line-height:1.5}.work-gallery-grid .work-out{font-size:.92rem}.work-out strong{color:var(--foreground);font-weight:600}.work-gallery-foot{font-family:var(--font-geist-mono,monospace);letter-spacing:.06em;color:var(--muted);justify-content:space-between;padding:1.2rem 0 0;font-size:.66rem;display:flex}.work-gallery.wg-animate .wg-anim{animation:wgFade .6s cubic-bezier(.16, 1, .3, 1) var(--d,0s) both}.work-gallery.wg-animate .wg-anim.wg-tick{animation-name:wgTick}.work-gallery.wg-animate .wg-anim.wg-rise{animation-name:wgRise}.work-gallery.wg-animate .work-gallery-rule.wg-anim{animation-name:wgRule}.work-gallery.wg-animate .work-thumb.wg-anim{animation-name:wgWipe;animation-duration:.7s}@keyframes wgFade{0%{opacity:0}to{opacity:1}}@keyframes wgTick{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes wgRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes wgRule{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes wgWipe{0%{opacity:0;clip-path:inset(0 0 100%)}to{opacity:1;clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){.work-gallery.wg-animate .wg-anim{animation:none}.work-thumb,.work-thumb>img,.work-tab{transition:none}.work-card:hover .work-thumb>img{transform:none}}.work-item{border-top:1px solid var(--line);padding:1.8rem 0 2rem}.work-item a{transition:transform .14s;display:block}@media (prefers-reduced-motion:no-preference){.work:not(.work-drafts)>h2{animation:.48s ease-out .1s both fadeUp}.work-drafts>h2{animation:.48s ease-out 60ms both fadeUp}.work:not(.work-drafts)>.work-list>.work-item{animation:.56s ease-out both fadeUp}.work:not(.work-drafts)>.work-list>.work-item:first-child{animation-delay:.14s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(2){animation-delay:.2s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(3){animation-delay:.26s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(4){animation-delay:.32s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(5){animation-delay:.38s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(6){animation-delay:.44s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(7){animation-delay:.5s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(8){animation-delay:.56s}.work:not(.work-drafts)>.work-list>.work-item:nth-child(n+9){animation-delay:.62s}.work-drafts>.work-list>.work-item{animation:.56s ease-out both fadeUp}.work-drafts>.work-list>.work-item:first-child{animation-delay:.12s}.work-drafts>.work-list>.work-item:nth-child(2){animation-delay:.18s}.work-drafts>.work-list>.work-item:nth-child(3){animation-delay:.24s}.work-drafts>.work-list>.work-item:nth-child(n+4){animation-delay:.3s}.work-card:active,.work-item a:active{transform:scale(.992)}}.work-card:active,.work-item a:active{opacity:.88}.work-item:first-child{border-top:none}.work-item h3{font-size:clamp(1.85rem,3.8vw,2.85rem);line-height:var(--lead-title);letter-spacing:var(--track-title);overflow-wrap:break-word;text-wrap:balance}.work-item p{color:var(--muted);font-size:1.01rem;line-height:var(--lead-copy);text-wrap:pretty;margin-top:.45rem}.play-hero{margin-bottom:2rem}.play-lede{max-width:42ch}.play-section{max-width:60rem;animation:.48s ease-out 60ms both fadeUp}.play-section-label{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--muted);margin-bottom:.75rem;font-size:.78rem}.play-entries{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.play-entry{border-bottom:1px solid var(--line);gap:0;padding:2.2rem 0 2.8rem;display:grid}.play-entry-header{align-items:baseline;gap:1rem;margin-bottom:.65rem;display:flex}.play-entry-index{letter-spacing:var(--track-caps);color:var(--muted);flex-shrink:0;font-size:.78rem;position:relative;top:-.08em}.play-entry-title{font-size:clamp(1.65rem,3.8vw,2.8rem);line-height:var(--lead-title);letter-spacing:var(--track-title);overflow-wrap:break-word;text-wrap:balance}.play-entry-hook{color:var(--foreground);font-size:1.06rem;line-height:var(--lead-body);text-wrap:pretty;max-width:52ch;margin:0 0 .85rem}.play-entry-body{gap:1.1rem;display:grid}.play-entry-exploration{color:var(--muted);line-height:var(--lead-copy);text-wrap:pretty;max-width:56ch}.play-embed-wrap{border:1px solid var(--line);background:var(--surface);border-radius:.65rem;margin-top:.45rem;overflow:hidden}.play-embed-fallback{margin:.55rem 0 0;font-size:.85rem}.play-embed-fallback a{color:var(--muted);border-bottom:1px solid #0000;text-decoration:none;transition:color .18s,border-color .18s}.play-embed-fallback a:hover,.play-embed-fallback a:focus-visible{color:var(--foreground);border-color:var(--line)}.play-embed{border:0;width:100%;min-height:690px;display:block}@media (max-width:768px){.play-embed{min-height:min(480px,70svh)}}.play-entry-footer{flex-wrap:wrap;align-items:baseline;gap:.75rem 1.5rem;margin-top:1.2rem;display:flex}.play-entry-meta{letter-spacing:.02em;color:var(--muted);font-size:.84rem}.play-entry-tags{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.play-entry-tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.22rem .5rem;font-size:.78rem;transition:border-color .2s}.play-entry-tag:hover{border-color:var(--line-hover)}@media (prefers-reduced-motion:no-preference){.play-entry{animation:.56s ease-out both fadeUp}.play-entry:first-child{animation-delay:.12s}.play-entry:nth-child(2){animation-delay:.2s}.play-entry:nth-child(3){animation-delay:.28s}.play-entry:nth-child(n+4){animation-delay:.36s}}.resume-layout{gap:3.5rem;margin-top:2.5rem;display:grid}@media (min-width:768px){.resume-layout{grid-template-columns:3fr 1fr;gap:4rem;margin-top:3.5rem}}.resume-primary{flex-direction:column;align-items:flex-start;display:flex}.resume-label{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--muted);margin-bottom:.75rem;font-size:.78rem}.resume-heading{font-size:clamp(2.2rem,5.5vw,4rem);font-weight:400;line-height:var(--lead-title);letter-spacing:var(--track-display);color:var(--foreground);text-wrap:balance;margin:0}.resume-summary-heading{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--muted);margin:1.35rem 0 0;font-size:.78rem;font-weight:600}.resume-body{color:var(--muted);max-width:42ch;line-height:var(--lead-copy);text-wrap:pretty;margin-top:.45rem}.resume-cta{border:1px solid var(--line);border-radius:.45rem;align-items:center;gap:.4rem;margin-top:2rem;padding:.85rem 1.15rem;font-size:.92rem;text-decoration:none;transition:border-color .2s,background .2s;display:inline-flex}.resume-cta:hover{border-color:var(--line-hover);background:var(--surface)}.resume-actions{flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;margin-top:2rem;display:flex}.resume-actions .resume-cta{margin-top:0}.resume-cta:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@media (prefers-reduced-motion:no-preference){.resume-cta:active{transform:scale(.97)}}.resume-aside{padding-top:.5rem}@media (min-width:768px){.resume-aside{border-left:1px solid var(--line);padding-top:2rem;padding-left:2rem}}.resume-details{gap:0;display:grid}.resume-detail{border-bottom:1px solid var(--line);padding:.85rem 0}.resume-detail:first-child{padding-top:0}.resume-detail:last-child{border-bottom:none}.resume-detail dt{color:var(--muted);margin-bottom:.15rem;font-size:.82rem;font-weight:500}.resume-detail dd{font-size:.95rem;line-height:var(--lead-copy);margin:0}.resume-detail dd a{text-decoration:none;transition:opacity .18s}.resume-detail dd a:hover{opacity:.72}.resume-contact{font-style:normal}.resume-note{align-items:center;min-height:44px;display:inline-flex}.resume-section-heading{letter-spacing:-.01em;color:var(--foreground);margin:0 0 1.6rem;font-size:clamp(1.6rem,2.4vw,2rem);font-weight:500}.resume-experience{border-top:1px solid var(--rule);margin-top:4rem;padding-top:2.4rem}.resume-role-list{gap:2rem;margin:0;padding:0;list-style:none;display:grid}.resume-role{border-bottom:1px solid var(--rule);gap:.55rem;padding-bottom:2rem;display:grid}.resume-role:last-child{border-bottom:0;padding-bottom:0}.resume-role-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.2rem;display:flex}.resume-role-title{color:var(--foreground);letter-spacing:-.005em;margin:0;font-size:1.02rem;font-weight:600}.resume-role-org{color:var(--muted);margin:.1rem 0 0;font-size:.95rem}.resume-role-dates{font-family:var(--font-geist-mono,monospace);color:var(--muted);white-space:nowrap;margin:0;font-size:.82rem}.resume-role-summary{font-size:.95rem;line-height:var(--lead-copy);color:var(--foreground);max-width:60ch;margin:.35rem 0 0}.resume-role-bullets{font-size:.95rem;line-height:var(--lead-copy);color:var(--foreground);gap:.45rem;max-width:60ch;margin:.35rem 0 0;padding-left:1.15rem;display:grid}.resume-skills{border-top:1px solid var(--rule);margin-top:3.2rem;padding-top:2.4rem}.resume-skill-list{gap:1.2rem;margin:0;display:grid}.resume-skill-group{grid-template-columns:minmax(6rem,8rem) 1fr;align-items:baseline;gap:1.2rem;display:grid}.resume-skill-group dt{color:var(--foreground);margin:0;font-size:.95rem;font-weight:600}.resume-skill-group dd{font-size:.95rem;line-height:var(--lead-copy);color:var(--foreground);margin:0}@media (max-width:640px){.resume-experience,.resume-skills{margin-top:2.8rem;padding-top:2rem}.resume-role-head{flex-direction:column;gap:.25rem}.resume-role-dates{order:-1}.resume-skill-group{grid-template-columns:1fr;gap:.25rem}}@media print{@page{size:A4 portrait;margin:8mm 11mm}:root,:root[data-theme=dark],:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--foreground:#171717;--muted:#4f4f4f;--line:#cfcfcf;--rule:#d8d8d8}html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:8.7pt;color:#171717!important;background:#fff!important}body:after,.site-header,.project-topbar,.resume-label,.resume-actions,.resume-note,.mobile-nav,.skip-link,.dot-cursor{display:none!important}.page-shell.project-page{width:auto;max-width:none;margin:0;padding:0}.resume-layout,.resume-primary,.resume-aside,.resume-details{display:block}.resume-layout,.resume-heading,.resume-summary-heading,.resume-body,.resume-detail,.resume-role{opacity:1!important;animation:none!important;transform:none!important}.resume-layout{margin:0}.resume-heading{letter-spacing:-.035em;font-size:25pt;line-height:1}.resume-summary-heading{letter-spacing:.09em;text-transform:none;margin-top:4.5mm;font-size:7.6pt;line-height:1.1}.resume-body{color:#282828;max-width:none;margin-top:1.2mm;font-size:9pt;line-height:1.28}.resume-aside{border:0;border-top:.5pt solid #bdbdbd;margin-top:3mm;padding:2.3mm 0 0}.resume-details{flex-wrap:wrap;gap:1.4mm 5mm;display:flex}.resume-detail{border:0;gap:1.5mm;padding:0;display:flex}.resume-detail:first-child{display:none}.resume-detail dt,.resume-detail dd{margin:0;font-size:8.5pt;line-height:1.25}.resume-detail dt{color:#4f4f4f;font-weight:600}.resume-detail dd a{color:#171717;text-decoration:none}.resume-experience,.resume-skills{border-top:.5pt solid #bdbdbd;margin-top:4mm;padding-top:2.3mm}.resume-section-heading{letter-spacing:-.01em;margin:0 0 2mm;font-size:10.5pt;line-height:1.1}.resume-role-list{display:block}.resume-role{break-inside:avoid;page-break-inside:avoid;border-bottom:.35pt solid #e0e0e0;margin:0 0 2.1mm;padding:0 0 2.1mm;display:block}.resume-role:last-child{margin-bottom:0;padding-bottom:0}.resume-role-head{flex-wrap:nowrap;justify-content:space-between;align-items:baseline;gap:4mm;display:flex}.resume-role-title{font-size:8.8pt;line-height:1.15}.resume-role-title a{color:inherit;text-underline-offset:1.2pt;text-decoration:underline;text-decoration-thickness:.5pt}.resume-role-org{margin-top:.4mm;font-size:8.5pt;line-height:1.15}.resume-role-dates{flex:none;font-size:8.5pt;line-height:1.15}.resume-role-summary{max-width:none;margin-top:1.1mm;font-size:8.5pt;line-height:1.26}.resume-role-bullets{gap:.8mm;max-width:none;margin:1.1mm 0 0;padding-left:3.5mm;font-size:8.5pt;line-height:1.26;display:grid}.resume-skill-list{gap:1mm}.resume-skill-group{grid-template-columns:24mm 1fr;gap:2mm}.resume-skill-group dt,.resume-skill-group dd{font-size:8.5pt;line-height:1.22}.resume-role,.resume-experience,.resume-skills,.resume-skill-group{break-inside:avoid;page-break-inside:avoid}p,li{orphans:2;widows:2}}.work-item-image{border:1px solid var(--line);border-radius:.65rem;width:100%;height:auto;margin-top:1rem;transition:transform .32s,border-color .24s}.work-item a:hover .work-item-image{border-color:var(--line-hover);transform:scale(1.012)}.work-item a:focus-visible .work-item-image{border-color:var(--focus-ring)}.about{margin-top:3.5rem}.work-drafts{margin-top:2.5rem}.draft-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.8rem;font-size:.76rem;display:inline-block}.about p{max-width:60ch;color:var(--muted);line-height:var(--lead-body);text-wrap:pretty}.footer{border-top:1px solid var(--line);flex-direction:column;gap:1.1rem;margin-top:5.5rem;padding-top:1.6rem;animation:.52s ease-out .22s both fadeUp;display:flex}@media (min-width:640px){.footer{flex-direction:row;justify-content:space-between;align-items:baseline}}.footer-nav{color:var(--foreground);flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.94rem;display:flex}.footer-nav a{color:inherit;padding:.65rem 0;text-decoration:none;position:relative}.footer-nav a:after{content:"";transform-origin:0;background:currentColor;width:100%;height:1px;transition:transform .32s cubic-bezier(.16,1,.3,1);position:absolute;bottom:.2rem;left:0;transform:scaleX(0)}.footer-nav a:hover:after,.footer-nav a:focus-visible:after{transform:scaleX(1)}.footer-meta{color:var(--muted);letter-spacing:.04em;font-variant-numeric:tabular-nums;margin:0;font-size:.76rem}.about-actions{color:var(--foreground);flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:1.3rem;display:flex}.about-action{color:inherit;align-items:center;gap:.15rem;padding:.4rem 0;font-size:.98rem;text-decoration:none;transition:opacity .2s;display:inline-flex;position:relative}.about-action:after{content:"";transform-origin:0;background:currentColor;width:100%;height:1px;transition:transform .32s cubic-bezier(.16,1,.3,1);position:absolute;bottom:.18rem;left:0;transform:scaleX(0)}.about-action:hover:after,.about-action:focus-visible:after{transform:scaleX(1)}.project-topbar{color:var(--muted);margin:0 0 1.9rem;font-size:.95rem;animation:.42s ease-out both fadeUp}.project-topbar a{align-items:center;min-height:44px;margin:-.7rem 0;padding:.7rem 0;transition:opacity .16s,transform .2s;display:inline-flex}@media (prefers-reduced-motion:no-preference){.project-topbar a:hover,.project-topbar a:focus-visible{opacity:.75;transform:translate(-2px)}.project-topbar a:active{transform:translate(-1px)scale(.98)}}.project-cover{margin:0 0 2rem;animation:.48s ease-out 40ms both fadeUp}.project-section+.project-cover{margin-top:3.3rem}.project-hero-lede em,.project-section-body em{padding-inline-end:.08em}.project-hero-lede code,.project-section-body code,.fg-safety-visual-caption code{padding-inline:.15em}.project-cover-image{border:1px solid var(--line);border-radius:.65rem;width:100%;height:auto;transition:border-color .24s}.project-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:.95rem 1.5rem;margin:0 0 2.5rem;padding:1.05rem 0;display:grid}@media (min-width:640px){.project-meta{grid-template-columns:repeat(3,minmax(0,1fr));align-items:baseline}}.project-meta-field{flex-direction:column;gap:.28rem;min-width:0;display:flex}.project-meta-field dt{color:var(--muted);margin-bottom:.15rem;font-size:.82rem;font-weight:500}.project-meta-field dd{color:var(--foreground);overflow-wrap:break-word;margin:0;font-size:.96rem;line-height:1.35}.project-meta-field--tags dd{color:var(--muted)}.project-highlight{gap:1.8rem;max-width:36rem;margin:.5rem 0 3.2rem;display:grid}.project-highlight-quote{border-left:1px solid var(--foreground);margin:0;padding-left:1.15rem}.project-highlight-quote blockquote{letter-spacing:-.012em;color:var(--foreground);text-wrap:balance;margin:0;font-size:clamp(1.35rem,2.8vw,1.85rem);font-weight:400;line-height:1.32}.project-highlight-metric{flex-direction:column;gap:.35rem;margin:0;padding-left:1.15rem;display:flex}.project-highlight-metric-value{letter-spacing:var(--track-display);color:var(--foreground);font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,4.5vw,3.1rem);font-weight:500;line-height:1}.project-highlight-metric-label{color:var(--muted);text-wrap:pretty;max-width:32ch;font-size:.82rem;line-height:1.45}:root[data-theme=light] .project-highlight,:root[data-theme=light] .project-highlight-quote,:root[data-theme=light] .project-highlight-metric{border-color:var(--foreground);background:0 0}.project-content{max-width:65ch;color:var(--foreground);margin-top:2rem;line-height:1.7}.project-content p{text-wrap:pretty}.project-sections{gap:4.5rem;display:grid}.project-chapter{--chapter-motif-accent:var(--toc-accent,var(--foreground));margin-top:clamp(4.5rem,9vw,7rem);position:relative}.project-chapter[data-chapter-index="1"]{margin-top:2.5rem}.project-chapter-meta{max-width:65ch;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin:0 0 .7rem;font-size:.92rem;line-height:1.4;display:flex}.project-chapter-stage{color:var(--foreground);font-weight:500}.project-chapter-count{font-variant-numeric:tabular-nums}.project-chapter-title,.project-evidence-heading{text-wrap:balance;position:relative}.project-chapter-title{max-width:22ch;letter-spacing:var(--track-display);margin:0;padding-top:.85rem;font-size:clamp(1.9rem,3.8vw,3.2rem);font-weight:500;line-height:1.08}.project-chapter-title:before{content:"";background:var(--rule);width:2.5rem;height:1px;position:absolute;inset:0 auto auto 0}.project-evidence-heading{letter-spacing:var(--track-title);margin:0 0 1rem;padding-top:.75rem;font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:500;line-height:1.18}.project-evidence-heading:before{content:"";background:var(--rule);width:1.75rem;height:1px;position:absolute;inset:0 auto auto 0}.project-chapter>.project-section,.project-chapter>.project-section+.project-section{margin-top:2.4rem}.project-chapter-motif{width:min(12rem,44vw);height:1.2rem;margin-top:1.2rem;display:block;position:relative}.project-chapter-motif-line{background:var(--line);height:1px;position:absolute;top:50%;left:.35rem;right:.35rem}.project-chapter-motif-line:after{content:"";background:var(--chapter-motif-accent);transform-origin:0;position:absolute;inset:0}.project-chapter-motif-point{border:1px solid var(--chapter-motif-accent);background:var(--background);border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:50%;transform:translateY(-50%)}.project-chapter-motif-point--start{left:0}.project-chapter-motif-point--end{right:0}@media (prefers-reduced-motion:no-preference){.project-sections>.project-section{animation:.58s ease-out both fadeUp}.project-sections>.project-section:first-child{animation-delay:40ms}.project-sections>.project-section:nth-child(2){animation-delay:95ms}.project-sections>.project-section:nth-child(3){animation-delay:.15s}.project-sections>.project-section:nth-child(4){animation-delay:.205s}.project-sections>.project-section:nth-child(5){animation-delay:.26s}.project-sections>.project-section:nth-child(6){animation-delay:.315s}.project-sections>.project-section:nth-child(7){animation-delay:.37s}.project-sections>.project-section:nth-child(8){animation-delay:.425s}.project-sections>.project-section:nth-child(n+9){animation-delay:.48s}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.project-sections>.project-section{opacity:1;animation-name:sectionScrollIn;animation-duration:auto;animation-timing-function:linear;animation-delay:0s;animation-fill-mode:both;animation-timeline:view();animation-range:entry 6% entry 38%}}}.project-section{max-width:65ch;position:relative}.project-section h2{letter-spacing:var(--track-display);text-wrap:balance;margin:0 0 1rem;padding-top:.85rem;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:500;line-height:1.16;position:relative}.project-section h2:before{content:"";background:var(--rule);width:2.5rem;height:1px;position:absolute;top:0;left:0}.project-section-body{color:var(--foreground);line-height:var(--lead-long);max-width:64ch}.project-section-body p+p{margin-top:.9rem}.project-section-body p+h3,.project-section-body ul+h3,.project-section-body ol+h3{margin-top:2.2rem}.project-section-body h3+p{margin-top:.4rem}.project-section-body ul,.project-section-body ol{margin:.8rem 0 .8rem 1.25rem;list-style:outside}.project-section-body ol{list-style:decimal}.project-section-body li+li{margin-top:.35rem}.color-palette{grid-template-columns:repeat(6,1fr);gap:1.5rem 1rem;margin-top:3.6rem;margin-bottom:3.2rem;display:grid}.color-swatch{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:.5rem;padding:0;display:flex}.color-swatch-circle{background:var(--swatch-color);border-radius:50%;width:3.2rem;height:3.2rem;transition:transform .26s,box-shadow .26s;box-shadow:0 0 #0000}.color-swatch:hover .color-swatch-circle{box-shadow:0 0 0 2.5px var(--background), 0 0 0 4px var(--swatch-color);transform:scale(1.14)}.color-swatch--copied .color-swatch-circle{box-shadow:0 0 0 2.5px var(--background), 0 0 0 4px var(--swatch-color), 0 0 12px var(--swatch-color);transform:scale(1.1)}.color-swatch--copied .color-swatch-label{color:var(--foreground)}@media (prefers-reduced-motion:reduce){.color-swatch--copied .color-swatch-circle{transform:none}}.color-swatch-label{font-size:.8rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.01em;text-align:center;min-width:5ch;transition:color .2s}.color-swatch:hover .color-swatch-label{color:var(--foreground)}@media (max-width:768px){.color-palette{grid-template-columns:repeat(4,1fr);gap:1.4rem .7rem}.color-swatch-circle{width:2.75rem;height:2.75rem}.color-swatch-label{font-size:.72rem}}@media (max-width:420px){.color-palette{grid-template-columns:repeat(3,1fr)}}.project-section-images{justify-items:center;gap:1.2rem;margin-top:1.1rem;display:grid}.project-section-image{border:1px solid var(--line);border-radius:.7rem;transition:transform .32s,border-color .24s;display:block}.project-section-image:hover{border-color:var(--line-hover);transform:scale(1.008)}.project-section-image--landscape{width:100%;height:auto}.project-section-image--portrait{border-radius:.6rem;width:auto;max-width:100%;height:auto;max-height:720px}.project-section-image-frame--tall{justify-items:center;gap:.45rem;width:100%;max-width:460px;margin:0;display:grid}.project-section-image-scroll{border:1px solid var(--line);background:var(--surface);scroll-behavior:smooth;border-radius:.85rem;width:100%;max-height:620px;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 0 calc(100% - 36px),#0000008c 100%);mask-image:linear-gradient(#000 0 calc(100% - 36px),#0000008c 100%)}.project-section-image-scroll:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.project-section-image-scroll .expandable-trigger{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.project-section-image--tall{border:none;border-radius:0;width:100%;height:auto;display:block}.project-section-image--tall:hover{border-color:#0000;transform:none}.project-section-image-hint{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.04em;color:var(--muted);text-align:center;margin:0;font-size:.7rem}@media (prefers-reduced-motion:reduce){.project-section-image-scroll{scroll-behavior:auto}}.project-toc-sentinel{pointer-events:none;height:0}.project-toc{--toc-fill:var(--toc-accent,var(--foreground));--toc-progress:0;z-index:40;background:var(--background);border-bottom:1px solid #0000;margin-bottom:2rem;padding:.7rem 0;transition:border-color .28s,background-color .28s;position:sticky;top:0}.project-toc--sticky{border-bottom-color:var(--line)}.project-toc-track{align-items:center;gap:1.25rem;display:flex}.project-toc-list{scrollbar-width:none;-ms-overflow-style:none;flex:auto;gap:.15rem;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.project-toc-list::-webkit-scrollbar{display:none}@media (min-width:769px) and (max-width:1279px){.project-toc-list:not(:focus-within){-webkit-mask-image:linear-gradient(90deg,#0000,#000 22px calc(100% - 30px),#0000);mask-image:linear-gradient(90deg,#0000,#000 22px calc(100% - 30px),#0000)}}.project-toc-item{flex:none}.project-toc-help{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;color:var(--muted);margin:0;font-size:.72rem;position:absolute;overflow:hidden}.project-toc:focus-within .project-toc-help{clip:auto;white-space:normal;width:auto;height:auto;margin-top:.5rem;position:static;overflow:visible}.project-toc-link{min-height:44px;color:var(--muted);letter-spacing:var(--track-body);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:.3rem;align-items:center;gap:.4rem;padding:.55rem .65rem .6rem;font-family:inherit;font-size:.78rem;font-weight:500;transition:color .2s,background-color .2s;display:flex;position:relative}.project-toc-link:hover{color:var(--foreground);background:var(--surface)}.project-toc-link:active{transform:scale(.98)}.project-toc-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:.3rem}.project-toc-link--active{color:var(--foreground);background:var(--toc-fill)}@supports (color:color-mix(in lab, red, red)){.project-toc-link--active{background:color-mix(in srgb, var(--toc-fill) 10%, transparent)}}.project-toc-dot{background:var(--line);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background-color .24s,transform .24s;display:block}.project-toc-link--active .project-toc-dot{background:var(--toc-fill);transform:scale(1.5)}.project-toc-item--read .project-toc-dot{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.project-toc-item--read .project-toc-dot{background:color-mix(in srgb, var(--foreground) 55%, transparent)}}.project-toc-num{color:var(--muted);font-variant-numeric:tabular-nums;opacity:.6;transition:opacity .2s}.project-toc-link--active .project-toc-num,.project-toc-item--read .project-toc-num{opacity:1}.project-toc-text{text-overflow:ellipsis;min-width:0;display:inline-flex;overflow:hidden}.project-toc-stage{color:var(--foreground);flex:none;font-weight:600}.project-toc-separator{color:var(--muted);flex:none;margin-right:.28em}.project-toc-title{min-width:0;color:inherit;text-overflow:ellipsis;overflow:hidden}.project-toc-rail{background:var(--line);height:2px;position:absolute;bottom:1px;left:.65rem;right:.65rem}@supports (color:color-mix(in lab, red, red)){.project-toc-rail{background:color-mix(in srgb, var(--line) 55%, transparent)}}.project-toc-rail{overflow:hidden}.project-toc-rail:after{content:"";background:var(--toc-fill);transform:scaleX(var(--seg-fill,0));transform-origin:0;transition:transform .12s linear;position:absolute;inset:0}.project-toc-readout{font-family:var(--font-mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;opacity:0;flex:none;font-size:.7rem;transition:opacity .28s}.project-toc--sticky .project-toc-readout{opacity:1}.project-toc-progress{width:100%;height:2px;transform:scaleX(var(--toc-progress,0));transform-origin:0;background:var(--toc-fill);display:none;position:absolute;bottom:-1px;left:0}.project-toc-readout-mobile,.project-toc-toggle{display:none}.project-toc-chevron{transition:transform .22s}.project-toc-chevron--open{transform:rotate(180deg)}@media (max-width:768px){.project-toc{padding:0}.project-toc-toggle{width:100%;min-height:44px;color:var(--foreground);letter-spacing:var(--track-body);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.75rem 0;font-family:inherit;font-size:.82rem;font-weight:500;transition:color .2s;display:flex}.project-toc-toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:.2rem}.project-toc-toggle-label{align-items:center;gap:.35rem;min-width:0;display:flex}.project-toc-toggle-label,.project-toc-toggle-end{flex:0 auto}.project-toc-toggle-label{flex:auto;overflow:hidden}.project-toc-active-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-flex;overflow:hidden}.project-toc-active-title .project-toc-stage,.project-toc-active-title .project-toc-separator{flex:none}.project-toc-active-title .project-toc-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-toc-toggle-end{flex:none}.project-toc-toggle .project-toc-num{opacity:.5}.project-toc-toggle-end{align-items:center;gap:.55rem;display:flex}.project-toc-readout-mobile{font-family:var(--font-mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;font-size:.66rem;display:inline}.project-toc--sticky .project-toc-progress{display:block}.project-toc-readout,.project-toc-rail{display:none}.project-toc-list{flex-direction:column;gap:0;padding-bottom:.5rem;display:none;overflow-x:visible}.project-toc-list--open{max-height:calc(100dvh - 7rem - env(safe-area-inset-bottom));overscroll-behavior:contain;display:flex;overflow-y:auto}.project-toc-link{border-radius:0;min-height:44px;padding:.75rem .2rem;font-size:.82rem}.project-toc-link--active{background:0 0}}.fg-page{--toc-accent:var(--fg-accent)}.tt-page{--toc-accent:var(--tt-cyan)}.uf-page{--toc-accent:var(--uf-accent-warm)}.nv-page{--toc-accent:var(--nv-accent)}@media (prefers-reduced-motion:reduce){.project-toc-rail:after,.project-toc-readout{transition:none}}@media (min-width:1440px){.project-toc{background:0 0;border-bottom:none;width:3.6rem;margin:0;padding:0;position:fixed;top:50%;left:max(1.5rem,50% - 37rem);overflow:visible;transform:translateY(-50%)}.project-toc--sticky{border-bottom:none}.project-toc-track{flex-direction:column;align-items:stretch;gap:.6rem}.project-toc-list{flex-direction:column;gap:0;overflow:visible}.project-toc-item{position:relative}.project-toc-link{border-radius:var(--rounded-sm);gap:.6rem;min-height:44px;padding:0 .5rem 0 .9rem}.project-toc-link--active{background:0 0}.project-toc-rail{width:2px;height:44px;inset:50% auto auto calc(.9rem + 1.5px)}.project-toc-item:last-child .project-toc-rail{display:none}.project-toc-rail:after{transform:scaleY(var(--seg-fill,0));transform-origin:top}.project-toc-link--active .project-toc-num{color:var(--toc-fill);opacity:1}.project-toc-text{text-align:right;border-radius:var(--rounded-sm);background:var(--surface);max-width:min(12rem,50vw - 38rem);color:var(--foreground);border:1px solid var(--line);opacity:0;pointer-events:none;padding:.18rem .5rem;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:auto;right:2.5rem;transform:translateY(-50%)translate(4px)}.project-toc-link--active .project-toc-text,.project-toc-link:hover .project-toc-text,.project-toc-link:focus-visible .project-toc-text{opacity:1;transform:translateY(-50%)translate(0)}.project-toc-readout{display:none}}@media (min-width:1440px) and (prefers-reduced-motion:reduce){.project-toc-text{transition:opacity .2s}}.project-toc-live{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reading-top{z-index:60;border:1px solid var(--line);border-radius:var(--rounded-md);background:var(--surface);width:2.75rem;height:2.75rem;color:var(--foreground);cursor:pointer;opacity:0;pointer-events:none;place-items:center;transition:opacity .24s,transform .24s,border-color .2s;display:grid;position:fixed;bottom:1.5rem;right:1.5rem;transform:translateY(8px)}.reading-top--show{opacity:.9;pointer-events:auto;transform:translateY(0)}.reading-top:hover{opacity:1;border-color:var(--toc-accent,var(--foreground))}.reading-top:focus-visible{opacity:1;outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.reading-top{transition:opacity .24s;transform:none}.reading-top--show{transform:none}}.project-page{--project-heading-offset:3.5rem}.project-page h2[id]{scroll-margin-top:var(--project-heading-offset)}.project-content h2,.project-content h3{text-wrap:balance;margin-top:2rem;margin-bottom:.5rem;line-height:1.2}.project-content p+p{margin-top:.8rem}.project-content ul,.project-content ol{margin:.8rem 0 .8rem 1.25rem;list-style:outside}.project-content ol{list-style:decimal}.project-content li+li{margin-top:.35rem}.project-content a{text-decoration:underline}.project-work-jump{padding-top:clamp(2rem,5vw,3.5rem);padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);margin-top:clamp(4rem,9vw,7rem)}.project-work-jump-card{min-height:44px;color:inherit;gap:1.4rem;text-decoration:none;display:grid}.project-work-jump-text{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.project-work-jump-label{color:var(--muted);font-size:.9rem;line-height:1.4}.project-work-jump-title{max-width:16ch;letter-spacing:var(--track-display);text-wrap:balance;overflow-wrap:anywhere;margin-top:.45rem;font-size:clamp(2rem,5vw,4rem);font-weight:500;line-height:1}.project-work-jump-bridge{max-width:46ch;color:var(--muted);font-size:1rem;line-height:var(--lead-body);text-wrap:pretty;margin-top:.9rem}.project-work-jump-cta,.project-work-jump-view-all{align-items:center;min-height:44px;display:inline-flex}.project-work-jump-cta{margin-top:.9rem;font-weight:500}.project-work-jump-media{aspect-ratio:3/2;border:1px solid var(--line);border-radius:var(--rounded-md);background:var(--surface);min-height:12rem;display:block;position:relative;overflow:hidden}.project-work-jump-media>img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .42s cubic-bezier(.22,1,.36,1)}.project-work-jump-tiktok{background:#08080d;display:block;position:absolute;inset:0}.project-work-jump-card[data-next-project=fresh-greens] .project-work-jump-media{background:#103c2b}.project-work-jump-card[data-next-project=navi] .project-work-jump-media{background:#281208}.project-work-jump-card[data-next-project=understandingfafsa] .project-work-jump-media{background:#4d2b86}.project-work-jump-card[data-next-project=tiktok] .project-work-jump-media{background:#08080d}.project-work-jump-card:hover .project-work-jump-media,.project-work-jump-card:focus-visible .project-work-jump-media{border-color:var(--foreground)}.project-work-jump-card:hover .project-work-jump-media>img,.project-work-jump-card:focus-visible .project-work-jump-media>img{transform:scale(1.015)}.project-work-jump-card:focus-visible,.project-work-jump-view-all:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}.project-work-jump-view-all{color:var(--muted);margin-top:1rem}@media (min-width:760px){.project-work-jump-card{grid-template-columns:minmax(15rem,.8fr) minmax(22rem,1.2fr);align-items:center;gap:clamp(2rem,5vw,5rem)}}.mobile-nav{display:none}@media (max-width:768px){.reading-top{right:.75rem;bottom:calc(3.6rem + env(safe-area-inset-bottom,0px) + .75rem);z-index:110}.mobile-nav{z-index:100;height:3.6rem;padding-bottom:env(safe-area-inset-bottom,0);background:var(--background);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.mobile-nav{background:color-mix(in srgb, var(--background) 96%, transparent)}}.mobile-nav{-webkit-backdrop-filter:blur(16px)saturate(1.6);border-top:1px solid var(--line)}.mobile-nav-item{color:var(--muted);flex-direction:column;align-items:center;gap:.15rem;min-width:3rem;min-height:2.75rem;padding:.4rem .5rem;text-decoration:none;transition:color .16s;display:flex}.mobile-nav-item--active{color:var(--foreground)}.mobile-nav-label{letter-spacing:.02em;font-size:.62rem;font-weight:500}.site-header-right{display:none}.site-header{margin-bottom:1.2rem}.page-shell{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0))}.hero-name{white-space:normal;overflow-wrap:break-word}body{overflow-x:clip}}@media (prefers-reduced-motion:no-preference){.site-nav-list li{overflow:hidden}.site-nav-list a{position:relative}.site-nav-list a:after{content:"";background:var(--foreground);transform-origin:100%;width:100%;height:1px;transition:transform .28s cubic-bezier(.25,.46,.45,.94);position:absolute;bottom:0;left:0;transform:scaleX(0)}.site-nav-list a:hover:after,.site-nav-list a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.work-item a{text-decoration:none;transition:transform .14s}.work-item h3{background-image:linear-gradient(var(--foreground), var(--foreground));background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;transition:background-size .32s cubic-bezier(.25,.46,.45,.94);display:inline}.work-item a:hover h3{background-size:100% 1px}.draft-badge{transition:letter-spacing .28s}.work-item a:hover .draft-badge{letter-spacing:.14em}.project-topbar a{position:relative}.project-topbar a:after{content:"";background:var(--muted);transform-origin:100%;width:100%;height:1px;transition:transform .24s cubic-bezier(.25,.46,.45,.94);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.project-topbar a:hover:after{transform-origin:0;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header,.hero,.about,.footer,.project-topbar,.project-cover,.hero-credentials,.hero-statement-decoder-cursor,.not-found,.resume-layout,.resume-label,.resume-heading,.resume-body,.resume-actions,.resume-detail,.play-section,.play-entry,.play-lede,.play-section-label,.work:not(.work-drafts)>h2,.work-drafts>h2,.work:not(.work-drafts)>.work-list>.work-item,.work-drafts>.work-list>.work-item,.project-sections>.project-section,.project-work-jump-card,.project-work-jump-view-all{opacity:1!important;animation:none!important}.not-found-digit{animation:none!important}.work-item-image,.project-cover-image,.project-section-image,.project-work-jump-media,.project-work-jump-media>img,.site-nav-list a,.work-item a,.project-topbar a,.project-work-jump-card,.project-work-jump-view-all,.not-found-link:after,.resume-cta,.resume-cta span[aria-hidden],.play-entry-tag{transition:none}.project-work-jump-card,.project-work-jump-card:hover,.project-work-jump-card:focus-visible,.project-work-jump-card:hover .project-work-jump-media>img,.project-work-jump-card:focus-visible .project-work-jump-media>img,.theme-toggle:active{transform:none}}.fg-page{--fg-accent:#6aab7e;--fg-accent-soft:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-page{--fg-accent-soft:color-mix(in oklch, var(--fg-accent) 16%, transparent)}}.fg-page{--fg-accent-line:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-page{--fg-accent-line:color-mix(in srgb, var(--fg-accent) 60%, transparent)}}:root[data-theme=light] .fg-page{--fg-accent:#3d6447;--fg-accent-soft:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=light] .fg-page{--fg-accent-soft:color-mix(in oklch, var(--fg-accent) 10%, transparent)}}.fg-eyebrow{color:var(--fg-accent);margin:0 0 .85rem;font-size:.85rem}.fg-page .fg-title{font-size:clamp(2.5rem,7vw,4.6rem)}.fg-page .fg-lede{max-width:38ch;font-size:clamp(1.05rem,2vw,1.28rem)}.fg-meta{margin-top:2.5rem}.fg-section{margin-top:4.5rem}.fg-section--wide{max-width:none}.fg-section--wide .project-section-body{max-width:65ch}.fg-section--wide .fg-token-figure,.fg-section--wide .fg-illustrations,.fg-section--wide .fg-palette,.fg-section--wide .fg-pivot,.fg-section--wide .fg-moderation,.fg-section--wide .fg-pulled-journey{max-width:min(52rem,100%)}.fg-section--wide .fg-safety-visual-caption{max-width:60ch;margin-inline:auto}.fg-evidence-boundaries{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;max-width:min(52rem,100%);margin:2.2rem 0 2.6rem;display:grid;overflow:hidden}.fg-evidence-boundary{padding:1.15rem 1.2rem 1.25rem;position:relative}.fg-evidence-boundary+.fg-evidence-boundary{border-top:1px solid var(--line)}.fg-evidence-boundary:before{content:"";background:var(--fg-accent);width:2.4rem;height:2px;margin-bottom:.85rem;display:block}.fg-evidence-label{letter-spacing:normal;color:var(--fg-accent);margin:0 0 .45rem;font-size:.85rem;font-weight:600}.fg-evidence-boundary p:last-child{color:var(--foreground);text-wrap:pretty;margin:0;font-size:1rem;line-height:1.5}@media (min-width:760px){.fg-evidence-boundaries{grid-template-columns:repeat(3,1fr)}.fg-evidence-boundary+.fg-evidence-boundary{border-top:0;border-left:1px solid var(--line)}}.fg-illustrations{background:var(--surface);border:1px solid var(--line);border-radius:.9rem;margin:2.2rem 0 2.6rem;padding:1.4rem 1.4rem 1.1rem}.fg-illustration-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.fg-illustration-panel{min-width:0}.fg-illustration-panel .expandable-trigger{border-radius:.35rem;height:auto}.fg-illustration-panel img{border-radius:.35rem;width:100%;height:auto;display:block}@media (min-width:900px){.fg-illustration-track{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:620px){.fg-illustrations{padding:1rem 0}.fg-illustration-track{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:84%;grid-auto-flow:column;gap:.9rem;padding:.4rem 1rem .7rem;scroll-padding-inline:1rem;overflow-x:auto}.fg-illustration-panel{scroll-snap-align:start}.fg-illustrations>.fg-safety-visual-caption{margin-inline:1rem}}@media (prefers-reduced-motion:no-preference){.fg-illustrations[data-reveal=pending] .fg-illustration-panel{opacity:.72;transform:translateY(10px)}.fg-illustrations[data-reveal] .fg-illustration-panel{transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--fg-illustration-index) * 90ms)}.fg-illustrations[data-reveal=in] .fg-illustration-panel{opacity:1;transform:none}}.fg-phone{--phone-w:276px;width:var(--phone-w);filter:drop-shadow(0 24px 40px #00000052);margin:0 auto}.fg-phone-bezel{aspect-ratio:9/19.5;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:34px;padding:7px;position:relative;overflow:hidden}:root[data-theme=light] .fg-phone-bezel{background:#161616;border-color:#2a2a2a}.fg-phone-notch{z-index:2;background:#050505;border-radius:12px;width:76px;height:18px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.fg-phone-screen{background:#0e0e10;border-radius:27px;width:100%;height:100%;position:relative;overflow:hidden}.fg-phone--screenshot .fg-phone-bezel{aspect-ratio:auto;height:fit-content}.fg-phone--screenshot .fg-phone-screen{aspect-ratio:1290/2796;height:auto}.fg-phone--screenshot .fg-phone-screen .expandable-trigger,.fg-phone--screenshot .fg-phone-screen .expandable-trigger img,.fg-phone--screenshot .fg-feature-shot{width:100%;height:100%;display:block}.fg-phone--screenshot .fg-phone-screen .expandable-trigger img,.fg-phone--screenshot .fg-feature-shot{object-fit:cover;object-position:center center}.fg-route-screen{color:#f4f4f4;background:#0e0e10;flex-direction:column;width:100%;height:100%;padding:0;font-size:11px;display:flex}.fg-route-status{font-family:var(--font-mono), monospace;letter-spacing:.05em;color:#f4f4f4c7;justify-content:space-between;padding:18px 18px 6px;font-size:9px;display:flex}.fg-route-status-right{letter-spacing:.18em}.fg-route-map{background:#161618;border-radius:12px;flex:auto;margin:6px 10px;position:relative;overflow:hidden}.fg-route-svg{width:100%;height:100%;display:block}.fg-route-briefing{background:#0e0e10;flex-direction:column;gap:8px;padding:12px 14px 16px;display:flex}.fg-route-briefing-label{font-family:var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:#f4f4f48c;margin:0;font-size:8px}.fg-route-chips{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.fg-chip{color:#f4f4f4;border:1px solid #ffffff14;border-radius:100px;padding:4px 8px;font-size:9.5px;line-height:1.1}.fg-chip--ok{background:#4f7a5b2e;border-color:#4f7a5b66}.fg-chip--hazard{background:#f08a4b2e;border-color:#f08a4b66}.fg-chip--info{background:#28487252;border-color:#2848728c}.fg-route-go{color:#f4f4f4;letter-spacing:.06em;cursor:pointer;pointer-events:none;background:#4f7a5b;border:none;border-radius:100px;margin-top:4px;padding:8px;font-size:10px;font-weight:600}.fg-arch{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;margin:2.2rem 0 2.6rem;padding:1.5rem 1.2rem}.fg-arch-scroll{overscroll-behavior-x:contain;overflow-x:auto}.fg-arch-scroll:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@media (max-width:768px){.fg-arch-scroll{-webkit-mask-image:linear-gradient(90deg,#000 90%,#0000 100%);mask-image:linear-gradient(90deg,#000 90%,#0000 100%)}}.fg-arch-caption{color:var(--muted);margin-top:.85rem;font-size:.88rem;line-height:1.4}.fg-arch-scrollhint{font-family:var(--font-mono), ui-monospace, monospace;display:none}@media (max-width:768px){.fg-arch-scrollhint{display:inline}}.fg-arch--process{margin:1.5rem 0 .4rem;padding:1.25rem 1.1rem}.fg-arch-svg{width:100%;min-width:900px;height:auto;color:var(--foreground)}.fg-arch--process .fg-arch-svg{min-width:640px}.fg-features{margin-top:5rem}.fg-features-heading{letter-spacing:var(--track-display);text-wrap:balance;margin:0 0 .55rem;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:500;line-height:1.16}.fg-features-lede{max-width:52ch;color:var(--muted);font-size:1.02rem;line-height:var(--lead-body);margin:0 0 2.6rem}.fg-features-grid{grid-template-columns:1fr;gap:3.5rem 2.5rem;display:grid}@media (min-width:720px){.fg-features-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 3rem}}.fg-feature{grid-template-columns:276px 1fr;align-items:start;gap:1.6rem;display:grid}@media (max-width:720px){.fg-feature{text-align:left;grid-template-columns:1fr;justify-items:center;gap:1.4rem}}@media (min-width:720px) and (max-width:1080px){.fg-feature{grid-template-columns:1fr;justify-items:stretch;gap:1.4rem}}.fg-feature-text{min-width:0}.fg-feature-number{font-family:var(--font-mono), monospace;letter-spacing:.16em;color:var(--fg-accent);margin:0 0 .45rem;font-size:.72rem}.fg-feature-title{letter-spacing:-.01em;text-wrap:balance;margin:0 0 .55rem;font-size:clamp(1.1rem,1.6vw,1.32rem);font-weight:500;line-height:1.25}.fg-feature-copy{color:var(--foreground);text-wrap:pretty;opacity:.94;margin:0 0 .85rem;font-size:.96rem;line-height:1.55}.fg-feature-thesis{border-left:1px solid var(--fg-accent-line);color:var(--muted);text-wrap:pretty;margin:0;padding-left:.85rem;font-size:.88rem;line-height:1.5}.fg-feature-thesis-label{letter-spacing:.02em;color:var(--fg-accent);margin-right:.3rem;font-size:.72rem;font-weight:600}.fg-screen-stub{color:#f4f4f4;background:#0e0e10;flex-direction:column;width:100%;height:100%;padding:0;display:flex;position:relative;overflow:hidden}.fg-screen-band{background:#ffffff0a;border-bottom:1px solid #ffffff0d;height:22px;display:block}.fg-screen-band--header{height:36px}.fg-screen-map{background:#161618;border-radius:10px;height:120px;margin:8px 10px;overflow:hidden}.fg-screen-map--full{flex:auto;height:auto}.fg-screen-map svg{width:100%;height:100%;display:block}.fg-screen-card{background:#161618;border-radius:12px;flex-direction:column;gap:8px;margin:8px 12px 14px;padding:10px;display:flex}.fg-screen-line{background:#ffffff1f;border-radius:100px;height:8px;display:block}.fg-screen-line--80{width:80%}.fg-screen-line--60{width:60%}.fg-screen-line--40{width:40%}.fg-screen-chip-row{gap:4px;display:flex}.fg-screen-chip{background:#ffffff14;border-radius:100px;flex:1;height:14px}.fg-screen-chip--ok{background:#4f7a5b59}.fg-screen-chip--hazard{background:#f08a4b59}.fg-screen-chip--info{background:#2848728c}.fg-screen-cta{background:#4f7a5b;border-radius:100px;height:22px;margin-top:2px;display:block}.fg-screen-search{background:#ffffff0f;border:1px solid #ffffff0a;border-radius:100px;height:28px;margin:10px}.fg-screen-section-label{font-family:var(--font-mono), monospace;letter-spacing:.16em;text-transform:uppercase;color:#f4f4f48c;margin:12px 16px 6px;font-size:8px}.fg-screen-row{margin:6px 10px 14px}.fg-screen-row-label{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:#f4f4f48c;margin:0 0 6px 4px;font-size:8px}.fg-screen-row-scroll{gap:6px;display:flex}.fg-screen-tile{background:#ffffff14;border-radius:8px;flex:0 0 56px;height:72px}.fg-screen-tile:nth-child(2){background:#4f7a5b38}.fg-screen-stub--nav{position:relative}.fg-screen-nav-instr{flex-direction:column;gap:6px;padding:14px 12px 8px;display:flex}.fg-screen-side-column{flex-direction:column;gap:10px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.fg-screen-side-btn{background:#ffffff1a;border:1px solid #ffffff1f;border-radius:14px;width:28px;height:28px;display:block}.fg-screen-side-btn--sos{background:#d24a3b6b;border-color:#d24a3bb3}.fg-screen-stub--still{background:#11201a}.fg-screen-pulled{flex-direction:column;justify-content:center;gap:14px;height:100%;padding:22px 16px;display:flex}.fg-screen-pulled-rec{font-family:var(--font-mono), monospace;letter-spacing:.18em;color:#f4f4f49e;align-self:flex-start;font-size:8px}.fg-screen-pulled-title{color:#e7eee9;margin:0;font-size:22px;font-weight:500;line-height:1.12}.fg-screen-pulled-sub{color:#e7eee9b3;max-width:80%;margin:0;font-size:10px;line-height:1.5}.fg-screen-pulled-actions{gap:8px;margin-top:auto;display:flex}.fg-screen-pulled-btn{background:#4f7a5b6b;border:1px solid #4f7a5b99;border-radius:100px;flex:1;height:28px;display:block}.fg-screen-stub--ios .fg-screen-band--header{height:30px}.fg-screen-ios-group{background:#ffffff0a;border-radius:10px;margin:14px 12px 0;overflow:hidden}.fg-screen-ios-row{border-bottom:1px solid #ffffff0d;height:32px;display:block}.fg-screen-ios-row:last-child{border-bottom:none}.fg-screen-cal-row{align-items:center;gap:8px;padding:6px 16px;display:flex}.fg-screen-cal-dot{background:var(--fg-accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.fg-screen-cal-sheet{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:14px;flex-direction:column;gap:8px;margin:12px 12px 14px;padding:14px;display:flex}.fg-palette{margin:2.2rem 0 0}.fg-palette-baseline{font-size:.98rem;line-height:var(--lead-long,1.6);color:var(--foreground);text-wrap:pretty;max-width:62ch;margin:0 0 1.7rem}.fg-palette-baseline strong{font-weight:600}.fg-palette-lanes{margin:0}.fg-palette-gradient-intro{color:var(--muted);margin:1.4rem 0 0;font-size:.92rem;font-style:italic}.fg-palette-gradient-intro+.fg-palette-lanes .fg-palette-lane:first-child{border-top:0;padding-top:.3rem}.fg-palette-lane{border-top:1px solid var(--line);grid-template-columns:1fr;gap:.55rem 1.6rem;padding:1.15rem 0;display:grid}.fg-palette-lane:first-child{border-top:0;padding-top:0}@media (min-width:640px){.fg-palette-lane{grid-template-columns:168px 1fr;align-items:start}}.fg-palette-head{align-items:flex-start;gap:.6rem;margin:0;display:flex}.fg-palette-swatch{width:28px;height:28px;box-shadow:inset 0 0 0 1px var(--foreground);border-radius:8px;flex:none;margin-top:.05rem}@supports (color:color-mix(in lab, red, red)){.fg-palette-swatch{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--foreground) 18%, transparent)}}.fg-palette-headtext{flex-direction:column;gap:.15rem;display:flex}.fg-palette-name{color:var(--foreground);font-size:.98rem;font-weight:600;line-height:1.1}.fg-palette-role{color:var(--muted);opacity:.75;font-size:.78rem;font-style:italic}.fg-palette-carveouts{min-width:0;margin:0}.fg-palette-carveouts ul{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.fg-palette-tag{color:var(--foreground);font-size:.92rem;font-weight:600}.fg-palette-note{color:var(--muted);text-wrap:pretty;font-size:.92rem;line-height:1.5}.fg-craft-split{gap:2.2rem;margin-top:2.5rem;display:grid}@media (min-width:760px){.fg-craft-split{grid-template-columns:repeat(2,1fr);gap:3rem}}.fg-craft-half h3.fg-h3{letter-spacing:-.005em;margin:0 0 .55rem;font-size:1.06rem;font-weight:500}.fg-craft-half p{color:var(--foreground);opacity:.92;text-wrap:pretty;max-width:42ch;margin:0 0 1rem;font-size:.94rem;line-height:1.62}.fg-scope-grid{border-top:1px solid var(--line);gap:2.2rem;margin-top:2.2rem;padding-top:1.6rem;display:grid}@media (min-width:760px){.fg-scope-grid{grid-template-columns:1fr 1fr;gap:3rem}}.fg-scope-label{color:var(--foreground);margin:0 0 .85rem;font-size:.95rem;font-weight:500}.fg-scope-also-label{color:var(--muted);margin:1.2rem 0 .4rem;font-size:.88rem;font-weight:500}.fg-scope-also-list{color:var(--muted);margin:0;padding:0 0 0 1rem;font-size:.88rem;line-height:1.55;list-style:outside}.fg-scope-also-list li+li{margin-top:.3rem}.fg-scope-closer{margin-top:2.4rem}.fg-scope-list{flex-direction:column;gap:.8rem;margin:0;padding:0;list-style:none;display:flex}.fg-scope-list li{color:var(--foreground);text-wrap:pretty;opacity:.94;padding-left:1.05rem;font-size:.94rem;line-height:1.55;position:relative}.fg-scope-list li:before{content:"";background:var(--muted);width:.45rem;height:1px;position:absolute;top:.6em;left:0}.fg-scope-col:last-child .fg-scope-list li{color:var(--muted)}.fg-safety-visual{max-width:320px;margin:2.2rem auto 2.6rem}.fg-safety-visual-caption{text-align:center;color:var(--muted);text-wrap:pretty;margin:.85rem 0 0;font-size:.88rem;line-height:1.5}.fg-safety-grid{border-top:1px solid var(--line);gap:1.8rem;margin-top:2.4rem;padding-top:1.6rem;display:grid}@media (min-width:760px){.fg-safety-grid{grid-template-columns:1fr 1fr;gap:2.4rem 3rem}}.fg-safety-card{flex-direction:column;gap:.55rem;display:flex}.fg-safety-route{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:lowercase;color:var(--muted);margin:0;font-size:.72rem}.fg-safety-card .fg-h3{letter-spacing:-.005em;color:var(--foreground);margin:0;font-size:1.08rem;line-height:1.3}.fg-safety-card p{color:var(--muted);text-wrap:pretty;margin:0;font-size:.94rem;line-height:1.6}@media (prefers-reduced-motion:reduce){.fg-page .fg-title,.fg-page .fg-eyebrow,.fg-page .fg-lede,.fg-page .fg-meta,.fg-page .fg-section,.fg-page .fg-phone,.fg-page .fg-arch,.fg-page .fg-arch-scroll,.fg-page .fg-features,.fg-page .fg-safety-card,.fg-page .fg-route-screen,.fg-page [class*=fg-hero-],.fg-page [class*=fg-scroll-]{transition-duration:.01ms;animation:none;transform:none}}.expandable-trigger{all:unset;cursor:zoom-in;width:100%;height:100%;display:block}.expandable-trigger:focus-visible{outline:2px solid var(--fg-accent,var(--accent,currentColor));outline-offset:2px;border-radius:.25rem}.lb-content{display:contents}.lb-backdrop{z-index:9000;-webkit-backdrop-filter:blur(6px);cursor:zoom-out;background:#000000d9;animation:.18s both lb-fade;position:fixed;inset:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.lb-backdrop{background:#000000eb}}.lb-frame{z-index:9001;pointer-events:none;justify-content:center;align-items:center;animation:.22s cubic-bezier(.22,1,.36,1) both lb-scale;display:flex;position:fixed;inset:0}.lb-frame>*{pointer-events:auto}.lb-image{object-fit:contain;border-radius:.7rem;width:auto;max-width:92vw;height:auto;max-height:92vh}@keyframes lb-fade{0%{opacity:0}to{opacity:1}}@keyframes lb-scale{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.lb-close{z-index:9002;color:#fff;cursor:pointer;pointer-events:auto;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;transition:background .16s;display:flex;position:fixed;top:1.25rem;right:1.25rem}.lb-close:hover{background:#ffffff3d}@media (prefers-reduced-motion:reduce){.lb-backdrop,.lb-frame{animation:none}}.tt-page{--tt-cyan:#25f4ee;--tt-magenta:#fe2c55}.tt-eyebrow{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;margin:0 0 .85rem;font-size:.72rem;display:inline-flex}.tt-logo{width:.95rem;height:.95rem;display:inline-block;position:relative}.tt-logo svg{width:100%;height:100%;display:block}.tt-logo svg g{transform-origin:50%;transform-box:fill-box}.tt-logo-cyan{fill:var(--tt-cyan);mix-blend-mode:screen}.tt-logo-magenta{fill:var(--tt-magenta);mix-blend-mode:screen}.tt-logo-ink{fill:var(--foreground)}@media (prefers-reduced-motion:no-preference){.tt-logo-cyan{animation:3.5s ease-in-out infinite tt-logo-drift-cyan}.tt-logo-magenta{animation:3.5s ease-in-out infinite tt-logo-drift-magenta}}@keyframes tt-logo-drift-cyan{0%,to{transform:translate(0)}50%{transform:translate(-1.2px,.6px)}}@keyframes tt-logo-drift-magenta{0%,to{transform:translate(0)}50%{transform:translate(1.2px,-.6px)}}.tt-page .tt-title{font-size:clamp(2.5rem,7vw,4.6rem)}.tt-page .tt-lede{max-width:44ch;font-size:clamp(1.05rem,2vw,1.28rem)}.tt-cover{width:min(var(--content-max), 100%);isolation:isolate;background:#0a0a0f;border-radius:1.4rem;align-items:flex-end;min-height:clamp(26rem,60vh,40rem);margin:1.75rem auto clamp(2.25rem,4.5vw,3.5rem);display:flex;position:relative;overflow:hidden}.tt-cover-field{z-index:0;background:radial-gradient(120% 105% at 50% 32%,#16161f 0%,#08080d 70%);position:absolute;inset:0;overflow:hidden}.tt-cover-cluster{position:absolute;inset:0}.tt-cblob{filter:drop-shadow(0 12px 38px #0000004d);height:auto;animation-play-state:paused;position:absolute}.tt-cover-field--active .tt-cblob{will-change:transform;animation-play-state:running}.tt-cover:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#06060a00 28%,#06060a57 58%,#06060ad1 100%);position:absolute;inset:0}.tt-cover-inner{z-index:3;width:min(var(--content-max), 100%);padding:clamp(6rem, 22vh, 12rem) var(--page-gutter,1.25rem) clamp(2rem, 5vw, 3.25rem);margin:0 auto;position:relative}.tt-cover .tt-eyebrow{color:#ffffffdb;margin-bottom:1rem}.tt-cover .tt-title{color:#fff}.tt-cover .tt-lede{color:#ffffffd1;margin-top:1.1rem}@media (prefers-reduced-motion:no-preference){.tt-cblob--a1{animation:tt-bfloat1 var(--d) ease-in-out infinite alternate}.tt-cblob--a2{animation:tt-bfloat2 var(--d) ease-in-out infinite alternate}.tt-cblob--a3{animation:tt-bfloat3 var(--d) ease-in-out infinite alternate}.tt-cblob--a4{animation:tt-bfloat4 var(--d) ease-in-out infinite alternate}.tt-cblob--a5{animation:tt-bfloat5 var(--d) ease-in-out infinite alternate}.tt-cblob--a6{animation:tt-bfloat6 var(--d) ease-in-out infinite alternate}}@keyframes tt-bfloat1{0%{transform:translate(0)rotate(-2deg)scale(1)}to{transform:translate(2.2vw,-2.6vw)rotate(4.5deg)scale(1.07)}}@keyframes tt-bfloat2{0%{transform:translate(0)rotate(1.5deg)scale(1.03)}to{transform:translate(-2.6vw,2.2vw)rotate(-4deg)scale(.94)}}@keyframes tt-bfloat3{0%{transform:translate(0)rotate(-1.5deg)scale(.96)}to{transform:translate(2.4vw,2.8vw)rotate(5deg)scale(1.08)}}@keyframes tt-bfloat4{0%{transform:translate(0)rotate(2deg)scale(1)}to{transform:translate(-2.8vw,-2.4vw)rotate(-5deg)scale(1.06)}}@keyframes tt-bfloat5{0%{transform:translate(0)rotate(-1deg)scale(1.04)}to{transform:translate(2.8vw,2.4vw)rotate(4deg)scale(.93)}}@keyframes tt-bfloat6{0%{transform:translate(0)rotate(1deg)scale(.95)}to{transform:translate(-2.4vw,-2.8vw)rotate(-4deg)scale(1.08)}}.tt-cover--preview .tt-cblob{left:var(--tt-preview-x)!important;top:var(--tt-preview-y)!important}@media (max-width:640px){.tt-cover--preview .tt-cblob{left:var(--tt-preview-mobile-x)!important;top:var(--tt-preview-mobile-y)!important}}.tt-cover--preview .tt-title{max-width:12ch;font-size:clamp(2.4rem,6vw,4.2rem)}@media (prefers-reduced-motion:no-preference){.tt-cover--preview .tt-cblob{animation-duration:calc(var(--d) * .45);animation-delay:var(--tt-preview-delay);animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}.tt-cover--preview .tt-cblob--a1{animation-name:tt-preview-piece-a1}.tt-cover--preview .tt-cblob--a2{animation-name:tt-preview-piece-a2}.tt-cover--preview .tt-cblob--a3{animation-name:tt-preview-piece-a3}.tt-cover--preview .tt-cblob--a4{animation-name:tt-preview-piece-a4}.tt-cover--preview .tt-cblob--a5{animation-name:tt-preview-piece-a5}.tt-cover--preview .tt-cblob--a6{animation-name:tt-preview-piece-a6}}@keyframes tt-preview-piece-a1{0%{transform:translate(0)}to{transform:translate(6.4px,-2.4px)}}@keyframes tt-preview-piece-a2{0%{transform:translate(0)}to{transform:translate(-5.8px,2.7px)}}@keyframes tt-preview-piece-a3{0%{transform:translate(0)}to{transform:translate(3.3px,5.4px)}}@keyframes tt-preview-piece-a4{0%{transform:translate(0)}to{transform:translate(-4.5px,-4.1px)}}@keyframes tt-preview-piece-a5{0%{transform:translate(0)}to{transform:translate(6.7px,1.8px)}}@keyframes tt-preview-piece-a6{0%{transform:translate(0)}to{transform:translate(-6.1px,-2.6px)}}.tt-template-system{margin-top:2.4rem}.tt-template-contact-sheet{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.9rem,2.4vw,1.6rem);max-width:760px;margin:0 auto;display:grid}.tt-template-choice{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:44px;color:var(--foreground);cursor:pointer;text-align:left;border-radius:.8rem;grid-template-rows:1fr auto;padding:clamp(.65rem,1.6vw,1rem);transition:border-color .18s,background .18s,transform .18s;display:grid}.tt-template-choice:hover{border-color:var(--line-hover);transform:translateY(-2px)}.tt-template-choice:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.tt-template-choice--selected{border-color:var(--tt-cyan);background:var(--tt-cyan)}@supports (color:color-mix(in lab, red, red)){.tt-template-choice--selected{background:color-mix(in srgb, var(--tt-cyan) 7%, var(--surface))}}.tt-template-choice-image{place-items:center;min-height:clamp(9rem,20vw,14rem);display:grid;overflow:hidden}.tt-template-choice-image img{object-fit:contain;width:auto;max-width:100%;height:100%;max-height:14rem;display:block}.tt-template-choice-meta{justify-content:space-between;align-items:center;gap:.5rem;padding-top:.75rem;font-size:clamp(.72rem,1.3vw,.86rem);font-weight:600;display:flex}.tt-template-shipped{background:var(--foreground);color:var(--background);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:.2rem .45rem;font-size:.62rem}.tt-template-regions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:2.4rem 0 1.6rem;display:flex}.tt-template-regions button{border:1px solid var(--line);min-height:44px;color:var(--foreground);cursor:pointer;font:inherit;background:0 0;border-radius:999px;padding:.55rem .8rem;font-size:.82rem;transition:background .16s,border-color .16s}.tt-template-regions button[aria-pressed=true]{border-color:var(--tt-magenta);background:var(--tt-magenta)}@supports (color:color-mix(in lab, red, red)){.tt-template-regions button[aria-pressed=true]{background:color-mix(in srgb, var(--tt-magenta) 12%, transparent)}}.tt-template-regions button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.tt-template-selected{border-block:1px solid var(--line);grid-template-columns:minmax(15rem,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(2.4rem,6vw,5rem);margin:0;padding:clamp(2.4rem,5vw,4rem) 0;display:grid}.tt-template-selected-image{border-radius:.65rem;width:min(100%,360px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 18px 46px #0003}.tt-template-selected-image>img{width:100%;height:auto;display:block}.tt-template-region-overlay{border:2px solid var(--tt-cyan);background:var(--tt-cyan);border-radius:.3rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.tt-template-region-overlay{background:color-mix(in srgb, var(--tt-cyan) 18%, transparent)}}.tt-template-region-overlay{pointer-events:none;transition:left .22s cubic-bezier(.22,1,.36,1),top .22s cubic-bezier(.22,1,.36,1),width .22s cubic-bezier(.22,1,.36,1),height .22s cubic-bezier(.22,1,.36,1);box-shadow:0 0 0 999px #05050942}.tt-template-selected-caption{gap:1.5rem;display:grid}.tt-template-selected-caption>div:first-child{gap:.45rem;display:grid}.tt-template-selected-caption strong{letter-spacing:var(--track-display);font-size:clamp(1.35rem,3vw,2rem);font-weight:500}.tt-template-selected-caption span{line-height:1.55}.tt-template-region-copy{border-top:1px solid var(--line);gap:.55rem;padding-top:1.15rem;display:grid}.tt-template-region-copy p{max-width:52ch;color:var(--muted);margin:0;line-height:1.55}.tt-template-region-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.tt-template-region-source{background:var(--foreground);border-radius:.3rem;width:fit-content;padding:.3rem .5rem}@supports (color:color-mix(in lab, red, red)){.tt-template-region-source{background:color-mix(in srgb, var(--foreground) 8%, transparent)}}.tt-template-region-source{color:var(--foreground);font-size:.72rem}.tt-template-original-assets{flex-wrap:wrap;gap:.7rem;display:flex}.tt-template-original-assets figure{color:#fff;background:#314951;border-radius:.5rem;grid-template-columns:5rem 1fr;align-items:center;gap:.7rem;margin:0;padding:.55rem;display:grid}.tt-template-original-assets img{object-fit:contain;width:100%;max-height:4rem;display:block}.tt-template-original-assets figcaption{font-size:.72rem;line-height:1.35}.tt-preview-process{margin-top:0}.tt-preview-process-lede{max-width:62ch;color:var(--muted);margin:0 0 2.4rem;line-height:1.55}.tt-preview-process-list{gap:clamp(3.2rem,7vw,5rem);display:grid}.tt-preview-process-card{border-top:1px solid var(--line);padding:2.4rem 0 0}.tt-preview-process-card>header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.6rem;display:flex}.tt-preview-process-card h3{color:var(--foreground);margin:0;font-size:clamp(1.3rem,2.4vw,1.85rem);font-weight:500}.tt-preview-process-card>header>span{background:var(--foreground);color:var(--background);text-transform:uppercase;border-radius:999px;padding:.25rem .55rem;font-size:.68rem;font-weight:700}.tt-preview-process-media{grid-template-columns:minmax(0,1fr) minmax(11rem,.38fr);align-items:center;gap:clamp(1.6rem,4vw,2.4rem);display:grid}.tt-preview-process-media figure{margin:0}.tt-preview-sketch{background:#314951;border-radius:.65rem;padding:clamp(.75rem,2vw,1.2rem)}.tt-preview-final{max-width:280px;position:relative;overflow:hidden;margin-inline:auto!important}.tt-preview-process-media figcaption{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;margin-top:.45rem;font-size:.7rem}.tt-preview-sketch figcaption{color:#ffffffd1}.tt-preview-iteration{gap:.25rem;max-width:70ch;margin:1.6rem 0 0;line-height:1.5;display:grid}.tt-preview-iteration strong{font-size:.78rem}.tt-preview-iteration span{color:var(--muted)}.tt-preview-outcome{margin-top:3rem}.tt-outcome-sequence{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,3vw,2rem);margin:1.8rem 0 2rem;padding:0;list-style:none;display:grid;position:relative}.tt-outcome-sequence:before{content:"";background:linear-gradient(90deg, var(--tt-cyan), var(--tt-magenta));opacity:.55;height:1px;position:absolute;top:1.05rem;left:8%;right:8%}.tt-outcome-step{min-width:0;position:relative}.tt-outcome-step-label{z-index:1;border:1px solid var(--line);background:var(--background);width:max-content;color:var(--foreground);border-radius:999px;margin:0 auto .85rem;padding:.3rem .65rem;font-size:.78rem;font-weight:600;position:relative}.tt-outcome-step figure{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;align-content:start;gap:.7rem;min-height:100%;margin:0;padding:.85rem;display:grid}@supports (color:color-mix(in lab, red, red)){.tt-outcome-step figure{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.tt-outcome-step figure>button,.tt-outcome-step figure>img{place-items:center;min-height:10rem;display:grid}.tt-outcome-step img{object-fit:contain;max-height:14rem}.tt-outcome-step--shipped img{max-height:18rem}.tt-outcome-step figcaption{color:var(--muted);font-size:.86rem;line-height:1.45}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.tt-outcome-step{animation:linear both tt-outcome-arrive;animation-timeline:view();animation-range:entry 8% cover 28%}.tt-outcome-step:nth-child(2){animation-range:entry 12% cover 32%}.tt-outcome-step:nth-child(3){animation-range:entry 16% cover 36%}}}@keyframes tt-outcome-arrive{0%{opacity:.68;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:720px){.tt-template-contact-sheet{scroll-snap-type:x mandatory;grid-template-columns:none;grid-auto-columns:min(76vw,16rem);grid-auto-flow:column;padding:.25rem .2rem .7rem;overflow-x:auto}.tt-template-choice{scroll-snap-align:start}.tt-template-selected,.tt-preview-process-media{grid-template-columns:1fr}.tt-template-selected-image{max-width:17rem}.tt-template-selected{gap:2.4rem;padding-block:2.4rem}.tt-preview-final{width:min(72vw,17rem)}.tt-outcome-sequence{grid-template-columns:1fr;gap:1.2rem}.tt-outcome-sequence:before{background:linear-gradient(180deg, var(--tt-cyan), var(--tt-magenta));width:1px;height:auto;top:1rem;bottom:1rem;left:50%}.tt-outcome-step{width:min(100%,22rem);margin-inline:auto}}@media (prefers-reduced-motion:no-preference){.tt-template-selected{animation:.36s cubic-bezier(.22,1,.36,1) both tt-template-reveal}.tt-preview-final:after,.uf-switcher-preview:after{content:"";z-index:3;pointer-events:none;position:absolute;inset:0}.uf-switcher-preview:after{background:linear-gradient(180deg, transparent 20%, var(--uf-accent-highlight) 50%, transparent 80%)}@supports (color:color-mix(in lab, red, red)){.uf-switcher-preview:after{background:linear-gradient(180deg, transparent 20%, color-mix(in srgb, var(--uf-accent-highlight) 13%, transparent) 50%, transparent 80%)}}.uf-switcher-preview:after{animation:.56s cubic-bezier(.22,1,.36,1) both uf-template-sweep}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.tt-preview-final:after{background:linear-gradient(180deg, transparent 24%, var(--tt-cyan) 44%, var(--tt-magenta) 56%, transparent 76%)}@supports (color:color-mix(in lab, red, red)){.tt-preview-final:after{background:linear-gradient(180deg, transparent 24%, color-mix(in srgb, var(--tt-cyan) 10%, transparent) 44%, color-mix(in srgb, var(--tt-magenta) 12%, transparent) 56%, transparent 76%)}}.tt-preview-final:after{animation:linear both tt-artifact-sweep;animation-timeline:view();animation-range:entry 8% cover 30%}}}@supports not (animation-timeline:view()){.tt-preview-final:after{display:none}}@keyframes tt-artifact-sweep{0%{transform:translateY(-76%)}to{transform:translateY(76%)}}@keyframes uf-template-sweep{0%{transform:translateY(-76%)}to{transform:translateY(76%)}}@keyframes tt-template-reveal{0%{opacity:.72;transform:translateY(10px)scale(.992)}to{opacity:1;transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.tt-template-choice,.tt-template-region-overlay,.tt-template-selected{transition:none;animation:none}.tt-template-choice:hover{transform:none}.tt-preview-final:after,.uf-switcher-preview:after{animation:none;display:none}}@media print{.tt-preview-final:after,.uf-switcher-preview:after{display:none!important}}.tt-section{margin-top:4.5rem}.tt-page .project-chapter>.tt-section,.tt-page .project-chapter>.tt-preview-process{margin-top:0}.tt-section--wide{max-width:none}.tt-section--wide .project-section-body{max-width:65ch}.tt-page .project-chapter-title{letter-spacing:var(--track-display);text-wrap:balance;margin:0 0 1.25rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:500;line-height:1.18}.play-title{align-items:baseline;gap:0;padding-bottom:.05em;display:flex;overflow:visible}.play-title-word{align-items:baseline;display:inline-flex}.play-title-letter{transform-origin:50% 100%;will-change:transform;display:inline-block}@media (prefers-reduced-motion:no-preference){.play-title-letter{animation:1.08s cubic-bezier(.32,.72,.36,1) both play-hop;animation-delay:calc(.38s + var(--i,0) * 90ms)}.play-title-letter:first-child{--i:0}.play-title-letter:nth-child(2){--i:1}.play-title-letter:nth-child(3){--i:2}.play-title-letter:nth-child(4){--i:3}}@keyframes play-hop{0%{transform:translateY(0)scale(1)}12%{transform:translateY(0)scale(1.14,.86)}32%{transform:translateY(-.28em)scale(.94,1.08)}55%{transform:translateY(-.34em)scale(.97,1.05)}78%{transform:translateY(0)scale(1.12,.88)}to{transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.play-title-letter{animation:none}}.fg-research-landing{color:var(--foreground);letter-spacing:-.005em;font-size:1.08rem;font-weight:500;margin-top:1.4rem!important}.fg-pullquote{border-left:1px solid var(--fg-accent);max-width:38rem;margin:3rem 0;padding-left:1.25rem}.fg-pullquote blockquote{letter-spacing:-.012em;color:var(--foreground);text-wrap:balance;margin:0;font-size:clamp(1.35rem,2.8vw,1.85rem);font-weight:400;line-height:1.32}.fg-pullquote figcaption{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:.95rem;font-size:.72rem}.fg-screen-station{border-top:1px solid #ffffff0a;align-items:center;gap:8px;padding:8px 12px;display:flex}.fg-screen-station:first-of-type{border-top:none}.fg-screen-station--trusted{background:#e2b34012;border-top-color:#e2b3401f}.fg-screen-star{color:#e2b340;flex-shrink:0;font-size:11px;line-height:1}.fg-screen-star--empty{color:#ffffff1f}.fg-screen-station-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.fg-screen-trusted-badge{font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;color:#e2b340;background:#e2b34014;border:1px solid #e2b34066;border-radius:100px;align-self:flex-start;padding:2px 5px;font-size:8px}.fg-page h2[id^=fg-]{scroll-margin-top:3.5rem}.site-logo{align-items:center;min-height:44px;padding:.25rem 0;text-decoration:none;transition:opacity .2s;display:inline-flex}.site-logo:hover,.site-logo:focus-visible{opacity:.72}.site-logo svg{width:auto;height:2.4rem;color:var(--foreground);transition:color .24s;display:block}@media (max-width:640px){.site-logo svg{height:2.1rem}}.about-layout{gap:3.5rem;margin-top:2.5rem;animation:.52s ease-out both fadeUp;display:grid}@media (min-width:768px){.about-layout{grid-template-columns:3fr 1fr;gap:4rem;margin-top:3.5rem}}.about-primary{flex-direction:column;align-items:flex-start;max-width:60ch;display:flex}.about-kicker{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--muted);margin-bottom:.75rem;font-size:.78rem}.about-heading{font-size:clamp(2.2rem,5.5vw,4rem);font-weight:400;line-height:var(--lead-title);letter-spacing:var(--track-display);color:var(--foreground);text-wrap:balance;margin:0}.about-body{color:var(--foreground);font-size:clamp(1.02rem,2vw,1.12rem);line-height:var(--lead-long);flex-direction:column;gap:1.2rem;margin-top:1.8rem;display:flex}.about-body p{text-wrap:pretty}.about-body em{color:var(--focus-ring);font-style:italic}.about-page-actions{margin-top:2.2rem}.about-aside{margin-top:0}@media (min-width:768px){.about-aside{align-self:start;position:sticky;top:2rem}}.about-details{flex-direction:column;gap:1.1rem;margin:0;display:flex}.about-detail{border-top:1px solid var(--line);flex-direction:column;gap:.3rem;padding-top:1rem;display:flex}.about-detail:first-child{border-top:none;padding-top:0}.about-detail dt{color:var(--muted);margin-bottom:.15rem;font-size:.82rem;font-weight:500}.about-detail dd{color:var(--foreground);text-wrap:pretty;margin:0;font-size:.94rem;line-height:1.45}.about-detail dd a{border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.about-detail dd a:hover,.about-detail dd a:focus-visible{border-bottom-color:currentColor}.play-images{gap:.85rem;margin-top:.45rem;display:grid}.play-images--1{max-width:28rem}.play-images--2,.play-images--3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.play-image{border:1px solid var(--line);background:var(--surface);border-radius:.65rem;width:100%;height:auto;transition:border-color .24s;display:block}.play-image:hover{border-color:var(--line-hover)}.specimen-card{--spec-border:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.specimen-card{--spec-border:color-mix(in srgb, var(--foreground) 18%, transparent)}}.specimen-card{--spec-surface:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.specimen-card{--spec-surface:color-mix(in srgb, var(--foreground) 4%, transparent)}}.specimen-card{--spec-mono:var(--font-geist-mono), ui-monospace, monospace;border:1px solid var(--spec-border);border-radius:.55rem;margin-top:.45rem;overflow:hidden}.specimen-header{border-bottom:1px solid var(--spec-border);background:var(--spec-surface);justify-content:space-between;align-items:center;padding:.6rem .85rem;display:flex}.specimen-label{font-family:var(--spec-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.65rem}.specimen-id{font-family:var(--spec-mono);letter-spacing:.08em;color:var(--muted);font-size:.65rem}.specimen-gallery{background:var(--spec-border);grid-template-columns:1fr 1fr;gap:1px;display:grid}.specimen-image-btn{background:var(--background);cursor:pointer;border:none;padding:0;display:block;position:relative;overflow:hidden}.specimen-image-btn:after{content:"";background:linear-gradient(180deg, transparent 70%, var(--background) 100%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.specimen-image-btn:after{background:linear-gradient(180deg, transparent 70%, color-mix(in srgb, var(--background) 60%, transparent) 100%)}}.specimen-image-btn:after{pointer-events:none}.specimen-image{width:100%;height:auto;transition:transform .4s cubic-bezier(.22,.61,.36,1);display:block}.specimen-image-btn:hover .specimen-image,.specimen-image-btn:focus-visible .specimen-image{transform:scale(1.03)}.specimen-image-label{font-family:var(--spec-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--background);font-size:.58rem;position:absolute;top:.5rem;left:.6rem}@supports (color:color-mix(in lab, red, red)){.specimen-image-label{background:color-mix(in srgb, var(--background) 75%, transparent)}}.specimen-image-label{z-index:1;border-radius:.2rem;padding:.15rem .4rem}.specimen-fig{font-family:var(--spec-mono);letter-spacing:.06em;color:var(--foreground);font-size:.6rem;position:absolute;bottom:.5rem;right:.6rem}@supports (color:color-mix(in lab, red, red)){.specimen-fig{color:color-mix(in srgb, var(--foreground) 50%, transparent)}}.specimen-fig{z-index:1;font-style:italic}.specimen-meta{border-top:1px solid var(--spec-border)}.specimen-row{border-bottom:1px solid var(--spec-border);justify-content:space-between;align-items:center;padding:.45rem .85rem;display:flex}.specimen-row:last-child{border-bottom:none}.specimen-key{font-family:var(--spec-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.62rem}.specimen-val{font-family:var(--spec-mono);letter-spacing:.04em;color:var(--foreground);font-size:.72rem}.specimen-status{font-family:var(--spec-mono);letter-spacing:.12em;text-transform:uppercase;color:#e06f6f;background:#b4404014;border:1px solid #b4404059;border-radius:.2rem;padding:.12rem .45rem;font-size:.62rem}:root[data-theme=light] .specimen-status{color:#962f2f}@media (max-width:480px){.specimen-gallery{grid-template-columns:1fr}}.nv-page{--nv-accent:#f3722c;--nv-accent-text:#f3722c;--nv-accent-soft:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-page{--nv-accent-soft:color-mix(in oklch, var(--nv-accent) 14%, transparent)}}.nv-page{--nv-accent-line:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-page{--nv-accent-line:color-mix(in srgb, var(--nv-accent) 55%, transparent)}}.nv-page{--nv-ink:#4a414d;--nv-surface:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-page{--nv-surface:color-mix(in srgb, var(--nv-accent) 6%, var(--surface))}}.nv-page{--nv-ui-bg:#fff;--nv-ui-border:var(--nv-ink)}@supports (color:color-mix(in lab, red, red)){.nv-page{--nv-ui-border:color-mix(in srgb, var(--nv-ink) 18%, transparent)}}.nv-page{--nv-error:#e5383b;--nv-success:#2a9d8f}:root[data-theme=dark] .nv-page{--nv-ink:var(--foreground);--nv-ui-bg:#141214;--nv-ui-border:var(--foreground)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .nv-page{--nv-ui-border:color-mix(in srgb, var(--foreground) 18%, transparent)}}:root[data-theme=dark] .nv-page{--nv-error:#ff6b6b;--nv-success:#4ecdc4}:root[data-theme=light] .nv-page{--nv-accent-text:#9f3f0d;--nv-surface:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=light] .nv-page{--nv-surface:color-mix(in srgb, var(--nv-accent) 5%, var(--surface))}}.nv-eyebrow{color:var(--nv-accent-text);margin:0 0 .85rem;font-size:.85rem}.nv-page .nv-title{font-family:var(--font-navi-display), var(--font-sans), sans-serif;font-size:clamp(2.5rem,7vw,4.6rem)}.nv-page .nv-lede{max-width:42ch;font-size:clamp(1.05rem,2vw,1.28rem)}.nv-meta{margin-top:2.5rem}.nv-section{margin-top:4.5rem}.nv-section--wide .project-section-body{max-width:65ch}.nv-section--wide{max-width:none}.nv-survey-note{color:var(--muted);font-size:.92rem}.nv-reveal{opacity:1;transition:opacity .56s,transform .56s cubic-bezier(.22,1,.36,1);transform:none}.nv-page[data-nv-anim-ready] .nv-reveal:not(.nv-reveal--visible){opacity:0;transform:translateY(14px)}@media (prefers-reduced-motion:reduce){.nv-reveal,.nv-page[data-nv-anim-ready] .nv-reveal:not(.nv-reveal--visible){opacity:1;transition:none;transform:none}}.nv-heuristic{gap:1rem;margin-top:2rem;display:grid}@media (min-width:768px){.nv-heuristic{grid-template-columns:repeat(3,minmax(0,1fr))}}.nv-heuristic-card{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;padding:1.25rem 1.2rem 1.35rem;transition:transform .22s,border-color .22s}.nv-reveal--visible .nv-heuristic-card{animation:.52s cubic-bezier(.22,1,.36,1) both nv-stagger-in;animation-delay:var(--nv-stagger,0s)}.nv-heuristic-card:hover{border-color:var(--nv-accent-line);transform:translateY(-3px)}.nv-heuristic-card h3{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0 0 .55rem;font-size:1.05rem;line-height:1.25}.nv-heuristic-card p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}@keyframes nv-stagger-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.nv-reveal--visible .nv-heuristic-card{animation:none}.nv-heuristic-card:hover{transform:none}}.nv-rings{gap:1.5rem;margin-top:2rem;display:grid}@media (min-width:640px){.nv-rings{grid-template-columns:repeat(2,minmax(0,1fr));max-width:42rem}}.nv-ring{text-align:center;margin:0;position:relative}.nv-ring-svg{width:min(180px,42vw);height:auto;margin:0 auto;display:block;transform:rotate(-90deg)}.nv-ring-track{fill:none;stroke:var(--line);stroke-width:10px}.nv-ring-progress{fill:none;stroke:var(--nv-accent);stroke-width:10px;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.22,1,.36,1)}.nv-page[data-nv-anim-ready] .nv-reveal:not(.nv-reveal--visible) .nv-ring-progress{stroke-dashoffset:339.292px!important}.nv-ring-center{pointer-events:none;place-items:center;padding-bottom:2.2rem;display:grid;position:absolute;inset:0}.nv-ring-value{font-family:var(--font-navi-display), var(--font-sans), sans-serif;color:var(--foreground);font-size:clamp(1.8rem,4vw,2.2rem);font-weight:700}.nv-ring-caption{max-width:22ch;color:var(--muted);margin:.35rem auto 0;font-size:.95rem;line-height:1.45}@media (prefers-reduced-motion:reduce){.nv-ring-progress{transition:none}}.nv-screen-grid{gap:1rem;margin-top:2rem;display:grid}@media (min-width:768px){.nv-screen-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nv-screen-grid>:first-child,.nv-screen-grid>:nth-child(2){grid-column:span 3}}.nv-showroom{border:1px solid var(--line);background:var(--nv-surface);border-radius:1rem;gap:2rem;margin-top:2.5rem;padding:1.5rem;display:grid}.nv-showroom-heading{font-family:var(--font-navi-display), var(--font-sans), sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--nv-accent-text);margin:0 0 1rem;font-size:1rem}.nv-type-grid{gap:.85rem;display:grid}@media (min-width:640px){.nv-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.nv-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.nv-type-cell{border:1px solid var(--nv-ui-border);background:var(--nv-ui-bg);border-radius:.7rem;padding:.85rem 1rem}:root[data-theme=dark] .nv-type-cell,:root[data-theme=dark] .nv-swatch,:root[data-theme=dark] .nv-composition-strip,:root[data-theme=dark] .nv-composition-card,:root[data-theme=dark] .nv-form-column{--nv-ui-bg:#141214;--nv-ui-border:#ffffff24}.nv-type-label{font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.45rem;font-size:.68rem;display:block}.nv-type-sample{color:var(--nv-ink);margin:0;font-size:1.1rem;line-height:1.3}:root[data-theme=dark] .nv-type-sample{color:var(--foreground)}.nv-swatches{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.nv-swatches{grid-template-columns:repeat(5,minmax(0,1fr))}}.nv-swatch{border:1px solid var(--nv-ui-border);background:var(--nv-ui-bg);cursor:pointer;text-align:left;border-radius:.35rem;align-items:center;gap:.65rem;width:100%;min-height:44px;padding:.55rem .65rem;display:flex}.nv-swatch-chip{border:1px solid #0000001f;border-radius:999px;flex-shrink:0;width:1.5rem;height:1.5rem}.nv-swatch-meta{flex-direction:column;gap:.1rem;min-width:0;display:flex}.nv-swatch-name{text-transform:capitalize;color:var(--muted);font-size:.78rem}.nv-swatch-hex{font-family:var(--font-mono), monospace;font-size:.72rem}.nv-spacing-table{gap:.45rem;display:grid}.nv-spacing-row{grid-template-columns:3.5rem 3rem 1fr;align-items:center;gap:.75rem;display:grid}.nv-spacing-token{font-family:var(--font-mono), monospace;color:var(--muted);font-size:.75rem}.nv-spacing-px{font-size:.82rem}.nv-spacing-bar-wrap{background:var(--nv-accent);border-radius:999px;height:.55rem}@supports (color:color-mix(in lab, red, red)){.nv-spacing-bar-wrap{background:color-mix(in srgb, var(--nv-accent) 10%, transparent)}}.nv-spacing-bar-wrap{overflow:hidden}.nv-spacing-bar{border-radius:inherit;background:var(--nv-accent);height:100%;display:block}.nv-matrix-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.nv-matrix{border-collapse:collapse;width:100%;min-width:520px;font-size:.82rem}.nv-matrix th,.nv-matrix td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:.55rem .45rem}.nv-matrix th[scope=row]{text-align:left;text-transform:capitalize;color:var(--muted)}.nv-ui-button{min-height:44px;font-family:var(--font-navi-ui), var(--font-sans), sans-serif;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.55rem 1rem;font-size:.88rem;font-weight:700;transition:background .16s,color .16s,border-color .16s,box-shadow .16s,opacity .16s;display:inline-flex}.nv-ui-button--primary{background:var(--nv-accent);color:#fff}.nv-ui-button--primary:hover,.nv-ui-button--primary.nv-ui-button--hover{background:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-ui-button--primary:hover,.nv-ui-button--primary.nv-ui-button--hover{background:color-mix(in srgb, var(--nv-accent) 88%, #000)}}.nv-ui-button--transparent{color:var(--nv-accent-text);background:0 0}.nv-ui-button--transparent:hover,.nv-ui-button--transparent.nv-ui-button--hover{background:var(--nv-accent-soft)}.nv-ui-button--outline{color:var(--nv-ink);border-color:var(--nv-ui-border);background:0 0}:root[data-theme=dark] .nv-ui-button--outline{color:var(--foreground)}.nv-ui-button--outline:hover,.nv-ui-button--outline.nv-ui-button--hover{border-color:var(--nv-accent);color:var(--nv-accent-text)}.nv-ui-button--disabled,.nv-ui-button:disabled{opacity:.42;cursor:not-allowed}.nv-ui-button--focus,.nv-ui-button:focus-visible{outline:2px solid var(--focus-ring,#8ab4ff);outline-offset:2px}.nv-ui-tab{min-height:44px;font-family:var(--font-navi-ui), var(--font-sans), sans-serif;cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:.45rem .9rem;font-size:.86rem}.nv-ui-tab--selected{color:var(--nv-accent-text);border-bottom-color:var(--nv-accent);font-weight:700}.nv-ui-tab--unselected:hover,.nv-ui-tab--hover{color:var(--foreground)}.nv-ui-tab--focus,.nv-ui-tab:focus-visible{outline:2px solid var(--focus-ring,#8ab4ff);outline-offset:2px}.nv-ui-tab:disabled{opacity:.4;cursor:not-allowed}.nv-form-grid{gap:1rem;display:grid}@media (min-width:768px){.nv-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.nv-form-column{border:1px solid var(--nv-ui-border);background:var(--nv-ui-bg);border-radius:.7rem;gap:.65rem;padding:1rem;display:grid}.nv-form-state-label{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .25rem;font-size:.72rem}.nv-ui-field{font-family:var(--font-navi-ui), var(--font-sans), sans-serif;gap:.3rem;font-size:.82rem;display:grid}.nv-ui-field span{color:var(--muted)}.nv-ui-field input,.nv-ui-field select,.nv-ui-field textarea{border:1px solid var(--nv-ui-border);background:var(--surface);width:100%;color:var(--foreground);font:inherit;border-radius:.35rem;padding:.55rem .65rem}.nv-form-column--error .nv-ui-field input,.nv-form-column--error .nv-ui-field select{border-color:var(--nv-error)}.nv-form-column--success .nv-ui-field input,.nv-form-column--success .nv-ui-field select{border-color:var(--nv-success)}.nv-field-message{margin:0;font-size:.78rem}.nv-field-message--error{color:var(--nv-error)}.nv-field-message--success{color:var(--nv-success)}.nv-composition{margin-top:2rem}.nv-composition-eyebrow{letter-spacing:0;color:var(--muted);margin:0 0 .75rem;font-family:inherit;font-size:.72rem}.nv-composition-strip{border:1px solid var(--line);background:var(--nv-ui-bg);border-radius:1rem;max-width:56rem;padding:1.35rem}.nv-composition-header{gap:.85rem;margin-bottom:1.25rem;display:grid}.nv-composition-title{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.2}.nv-trust-labels{flex-wrap:wrap;gap:.45rem;display:flex}.nv-trust-label{background:var(--nv-accent-soft);color:#ff9b68;min-height:32px;font-family:var(--font-navi-ui), var(--font-sans), sans-serif;border-radius:999px;align-items:center;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-flex}:root[data-theme=light] .nv-trust-label{color:#b04410}.nv-specimen-label{background:var(--nv-accent);color:#281208;font-family:var(--font-navi-ui), var(--font-sans), sans-serif;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;padding:.55rem 1rem;font-size:.88rem;font-weight:700;display:inline-flex}.nv-composition-cards{transform:translateX(var(--nv-parallax-x,0px));gap:.75rem;transition:transform .12s linear;display:grid}@media (min-width:768px){.nv-composition-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.nv-composition-card{border:1px solid var(--nv-ui-border);background:var(--surface);border-radius:.7rem;padding:.95rem 1rem}.nv-composition-card h4{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0 0 .4rem;font-size:.98rem}.nv-composition-card p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.45}@media (prefers-reduced-motion:no-preference){.nv-eyebrow,.uf-eyebrow,.fg-eyebrow{animation:.72s cubic-bezier(.22,1,.36,1) 40ms both nv-hero-in}.nv-title,.uf-title,.fg-title{animation:.94s cubic-bezier(.22,1,.36,1) .12s both nv-hero-in}.nv-lede,.uf-lede,.fg-lede{animation:.94s cubic-bezier(.22,1,.36,1) .22s both nv-hero-in}}@keyframes nv-hero-in{0%{opacity:1;transform:translateY(18px)scale(.972)}55%{opacity:1;filter:blur();transform:translateY(-2px)scale(1.006)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.nv-composition-cards{perspective:900px;transform-style:preserve-3d}.nv-composition-card{transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1),border-color .22s}@media (hover:hover) and (prefers-reduced-motion:no-preference){.nv-composition-card{will-change:transform}.nv-composition-card:hover{border-color:var(--nv-accent-line);box-shadow:0 22px 42px -24px var(--nv-accent);transform:translateY(-4px)rotateX(3deg)rotateY(-3deg)}@supports (color:color-mix(in lab, red, red)){.nv-composition-card:hover{box-shadow:0 22px 42px -24px color-mix(in srgb, var(--nv-accent) 55%, transparent)}}.nv-composition-card:nth-child(2):hover{transform:translateY(-4px)rotateX(3deg)rotateY(0)}.nv-composition-card:nth-child(3):hover{transform:translateY(-4px)rotateX(3deg)rotateY(3deg)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.nv-persona-grid>*{animation:linear both nv-persona-rise;animation-timeline:view();animation-range:entry cover 35%}}}@keyframes nv-persona-rise{0%{opacity:.4;transform:translateY(28px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.nv-heatmap{gap:1.25rem;margin-top:2rem;display:grid}@media (min-width:768px){.nv-heatmap{grid-template-columns:1fr 1fr;align-items:start}}.nv-heatmap-list{border:1px solid var(--line);border-radius:.7rem;max-height:320px;margin:0;padding:0;list-style:none;overflow-y:auto}.nv-heatmap-item{border:none;border-bottom:1px solid var(--line);text-align:left;width:100%;min-height:44px;font-family:var(--font-navi-ui), var(--font-sans), sans-serif;color:var(--foreground);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;padding:.65rem .9rem;font-size:.92rem;display:block}.nv-heatmap-item:focus:not(:focus-visible){outline:none}.nv-heatmap-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.nv-heatmap-item:last-child{border-bottom:none}.nv-heatmap-item--active{background:var(--nv-accent-soft);color:var(--nv-accent-text);font-weight:700}.nv-heatmap-map-wrap{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:.7rem;padding:1.25rem 1rem 1rem}.nv-heatmap-map{width:100%;max-width:18rem;height:auto;margin:0 auto;display:block}@media (min-width:768px){.nv-heatmap-map{max-width:9.5rem}}.nv-heatmap-silhouette{fill:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.nv-heatmap-silhouette{fill:color-mix(in srgb, var(--foreground) 4%, var(--surface))}}.nv-heatmap-silhouette{stroke:var(--foreground);stroke-width:2px;stroke-linejoin:round;pointer-events:none}.nv-heatmap-region{fill:#0000;stroke:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.nv-heatmap-region{stroke:color-mix(in srgb, var(--foreground) 28%, transparent)}}.nv-heatmap-region{stroke-width:.45px;vector-effect:non-scaling-stroke;-webkit-tap-highlight-color:transparent;pointer-events:none;transition:fill .28s,stroke .28s,opacity .28s}.nv-heatmap-region--active{fill:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-heatmap-region--active{fill:color-mix(in srgb, var(--nv-accent) 55%, transparent)}}.nv-heatmap-region--active{stroke:var(--nv-accent)}@supports (color:color-mix(in lab, red, red)){.nv-heatmap-region--active{stroke:color-mix(in srgb, var(--nv-accent) 85%, transparent)}}.nv-heatmap-region--active{stroke-width:.55px}@media (prefers-reduced-motion:no-preference){.nv-heatmap-region--active{animation:1.4s ease-in-out infinite nv-pulse}}@keyframes nv-pulse{0%,to{opacity:1}50%{opacity:.72}}.nv-heatmap-map-label{max-width:34ch;color:var(--muted);text-wrap:pretty;margin:.85rem auto 0;font-size:.95rem;line-height:1.45}.nv-heatmap-map-name{font-family:var(--font-navi-display), var(--font-sans), sans-serif;color:var(--nv-accent-text);font-weight:700}.nv-heatmap-map-pos{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.04em;color:var(--muted);font-size:.78rem}@supports (color:color-mix(in lab, red, red)){.nv-heatmap-map-pos{color:color-mix(in srgb, var(--muted) 85%, transparent)}}.nv-heatmap-map-pos{white-space:nowrap}.nv-page .project-chapter-title,.nv-page .project-evidence-heading{font-family:var(--font-navi-display), var(--font-sans), sans-serif}.uf-page{--uf-accent-warm:#f26938;--uf-accent-warm-text:#ff956e;--uf-accent-warm-fill:#b84410;--uf-accent-cool:#164f73;--uf-accent-cool-text:#82c5fb;--uf-accent-soft:var(--uf-accent-warm)}@supports (color:color-mix(in lab, red, red)){.uf-page{--uf-accent-soft:color-mix(in oklch, var(--uf-accent-warm) 14%, transparent)}}.uf-page{--uf-accent-line:var(--uf-accent-warm)}@supports (color:color-mix(in lab, red, red)){.uf-page{--uf-accent-line:color-mix(in srgb, var(--uf-accent-warm) 55%, transparent)}}.uf-page{--uf-accent-highlight:#f2b544}:root[data-theme=light] .uf-page{--uf-accent-warm-text:#b84410;--uf-accent-soft:var(--uf-accent-warm)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=light] .uf-page{--uf-accent-soft:color-mix(in oklch, var(--uf-accent-warm) 10%, transparent)}}:root[data-theme=light] .uf-page{--uf-accent-cool-text:#164f73;--uf-accent-highlight:#e3a233}.uf-eyebrow{color:var(--uf-accent-warm);margin:0 0 .85rem;font-size:.85rem}:root[data-theme=light] .uf-eyebrow{color:#c14e18}.uf-page .uf-title{font-size:clamp(2.5rem,7vw,4.6rem)}.uf-page .uf-lede{max-width:42ch;font-size:clamp(1.05rem,2vw,1.28rem)}.uf-meta{margin-top:2.5rem}.uf-section{margin-top:4.5rem}.uf-section--wide .project-section-body{max-width:65ch}.uf-system-outro{margin-top:2rem}.uf-phone{--phone-w:220px;width:var(--phone-w);filter:drop-shadow(0 20px 36px #00000047);transform:rotate(var(--uf-phone-tilt,0deg));margin:0 auto;transition:transform .28s}.uf-before-after-item:hover .uf-phone{transform:rotate(0)translateY(-4px)}.uf-phone-bezel{aspect-ratio:9/19.5;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:34px;padding:7px;position:relative;overflow:hidden}.uf-phone-notch{z-index:2;background:#050505;border-radius:12px;width:76px;height:18px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.uf-phone-screen{background:#0e0e10;border-radius:27px;width:100%;height:100%;position:relative;overflow:hidden}.uf-phone-screen--scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 0 calc(100% - 32px),#00000080 100%);mask-image:linear-gradient(#000 0 calc(100% - 32px),#00000080 100%)}.uf-phone-screen--scroll .expandable-trigger{align-items:flex-start;height:auto;min-height:100%}.uf-phone-screen--scroll .expandable-trigger img{object-fit:contain;width:100%;height:auto}.uf-phone-screen .expandable-trigger{cursor:zoom-in;border:none;border-radius:0;width:100%;height:100%;padding:0;display:flex}.uf-phone-screen .expandable-trigger img{object-fit:cover;width:100%;height:100%}.uf-before-after{justify-items:center;gap:2rem;margin-top:2.25rem;display:grid}@media (min-width:640px){.uf-before-after{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem;max-width:34rem;margin-inline:auto}}.uf-before-after-item{text-align:center;margin:0}.uf-before-after-label{font-family:var(--font-mono), ui-monospace, monospace;color:var(--uf-accent-cool-text);margin:.85rem 0 0;font-size:.78rem}.uf-before-after-hint{color:var(--muted);margin:.35rem 0 0;font-size:.82rem}.uf-before-after-evidence-note{max-width:34rem;color:var(--muted);text-align:center;grid-column:1/-1;margin:-.25rem auto 0;font-size:.85rem;line-height:1.5}.uf-switcher,.uf-lock-toggle{margin-top:2.25rem}.uf-chip-row,.uf-segment-row{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.uf-chip,.uf-segment{border:1px solid var(--line);background:var(--surface);font-family:var(--font-mono), ui-monospace, monospace;color:var(--foreground);cursor:pointer;border-radius:999px;padding:.45rem .9rem;font-size:.78rem;transition:border-color .18s,background .18s,color .18s}.uf-chip:hover,.uf-segment:hover{border-color:var(--uf-accent-line)}.uf-chip--active{border-color:var(--uf-accent-warm);background:var(--uf-accent-soft);color:#ff956e}:root[data-theme=light] .uf-chip--active{color:#b84410}.uf-segment--active{border-color:var(--uf-accent-cool-text);background:var(--uf-accent-cool-text)}@supports (color:color-mix(in lab, red, red)){.uf-segment--active{background:color-mix(in oklch, var(--uf-accent-cool-text) 14%, transparent)}}.uf-segment--active{color:var(--uf-accent-cool-text)}.uf-lock-hint{color:var(--muted);margin:.6rem 0 0;font-size:.82rem;font-style:italic}.uf-switcher-preview,.uf-lock-stage{border-radius:.35rem;max-width:34rem;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.uf-lock-stage{animation:.2s uf-fade-in}}.uf-lock-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.uf-switcher-preview--static{animation:none}.uf-switcher-preview--scroll{border:1px solid var(--line);background:var(--surface);border-radius:.5rem;max-height:640px;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 0 calc(100% - 36px),#00000080 100%);mask-image:linear-gradient(#000 0 calc(100% - 36px),#00000080 100%)}.uf-switcher-preview--scroll .expandable-trigger{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.uf-switcher-descriptor,.uf-lock-legend{color:var(--muted);max-width:34rem;margin:.85rem 0 0;font-size:.92rem}.uf-lock-legend{gap:.5rem;padding:0;list-style:none;display:grid}.uf-lock-legend li{align-items:center;gap:.6rem;display:flex}.uf-lock-legend strong{color:var(--foreground);font-weight:600}.uf-lock-key{flex:0 0 32px;height:0}.uf-lock-key--swap{border-top:3px solid var(--uf-accent-warm)}.uf-lock-key--lock{border-top:3px dashed var(--uf-accent-cool)}.uf-switcher-note{color:var(--muted);max-width:34rem;margin:.45rem 0 0;font-size:.82rem;font-style:italic}@keyframes uf-fade-in{0%{opacity:0}to{opacity:1}}.uf-gallery{margin-top:2.5rem;flex-direction:column;gap:0;max-width:36rem;margin-inline:auto;display:flex}.uf-gallery-card{margin-left:var(--uf-gallery-offset,0);margin-top:calc(var(--uf-gallery-index,0) * -1.25rem + .5rem);transform:rotate(var(--uf-gallery-rotate,0deg));filter:drop-shadow(0 14px 28px #00000024);z-index:calc(10 - var(--uf-gallery-index,0));transition:transform .24s,filter .24s;position:relative}.uf-gallery-card:first-child{margin-top:0}.uf-gallery-card:hover{filter:drop-shadow(0 18px 32px #0003);z-index:20;transform:rotate(0)translateY(-3px)}@media (max-width:639px){.uf-gallery-card{margin-top:1rem!important;margin-left:0!important;transform:none!important}.uf-gallery-card:first-child{margin-top:0!important}}.uf-composer-demo{margin-top:2.5rem}.uf-composer-demo-trigger{border:1px solid var(--uf-accent-line);background:var(--uf-accent-soft);min-height:44px;color:var(--foreground);font:inherit;cursor:pointer;border-radius:999px;padding:.65rem 1rem;font-weight:600}.uf-composer-demo-trigger:hover{border-color:var(--uf-accent-cool-text)}.uf-composer-demo-trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.uf-composer-demo-content .uf-composer{margin-top:1rem}.uf-composer{border:1px solid var(--line);background:var(--surface);border-radius:1rem;margin-top:2.5rem;padding:1.35rem 1.35rem 1.5rem}.uf-composer-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.uf-composer-toolbar-title{flex:22rem;min-width:0}.uf-composer-eyebrow{font-family:var(--font-mono), ui-monospace, monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--uf-accent-cool-text);margin:0 0 .35rem;font-size:.72rem}.uf-composer-help{color:var(--muted);max-width:44ch;margin:0;font-size:.92rem;line-height:1.5}.uf-composer-toolbar-actions{flex-wrap:wrap;gap:.5rem;display:flex}.uf-composer-btn{border:1px solid var(--line);min-height:36px;color:var(--foreground);cursor:pointer;background:0 0;border-radius:.35rem;padding:.4rem .85rem;font-family:inherit;font-size:.85rem;font-weight:500;transition:background .18s,border-color .18s,transform .18s}.uf-composer-btn:hover:not(:disabled){background:var(--uf-accent-soft);border-color:var(--uf-accent-line)}.uf-composer-btn:active:not(:disabled){transform:translateY(1px)}.uf-composer-btn:disabled{opacity:.45;cursor:not-allowed}.uf-composer-layout{gap:1.25rem;display:grid}@media (min-width:900px){.uf-composer-layout{grid-template-columns:minmax(0,18rem) minmax(0,1fr);align-items:start}}.uf-composer-heading{font-family:var(--font-mono), ui-monospace, monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .75rem;font-size:.72rem}.uf-composer-shelf-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.uf-composer-shelf-btn{border:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border-radius:.7rem;grid-template-columns:3.25rem 1fr auto;align-items:center;gap:.75rem;padding:.55rem .7rem;transition:background .18s,border-color .18s,transform .18s;display:grid}.uf-composer-shelf-btn:hover{background:var(--uf-accent-soft);border-color:var(--uf-accent-line)}.uf-composer-shelf-btn:active{transform:translateY(1px)}.uf-composer-shelf-thumb{background:var(--uf-accent-soft);border:1px solid var(--line);border-radius:.35rem;width:3.25rem;height:3.25rem;display:block;overflow:hidden}.uf-composer-shelf-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.uf-composer-shelf-meta{flex-direction:column;gap:.1rem;min-width:0;display:flex}.uf-composer-shelf-name{color:var(--foreground);font-size:.92rem;font-weight:600}.uf-composer-shelf-role{color:var(--muted);font-size:.78rem}.uf-composer-shelf-add{background:var(--uf-accent-warm-fill);color:#fff;min-width:1.75rem;min-height:1.75rem;font-family:var(--font-mono), ui-monospace, monospace;border-radius:999px;justify-content:center;align-items:center;padding:0 .5rem;font-size:.78rem;font-weight:600;display:inline-flex}.uf-composer-preview-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.65rem;display:flex}.uf-composer-weight{font-family:var(--font-mono), ui-monospace, monospace;color:var(--muted);margin:0;font-size:.75rem}.uf-composer-weight--over{color:var(--uf-accent-warm-text);font-weight:600}.uf-composer-canvas{border:1px dashed var(--line);background:var(--nv-ui-bg,var(--background));border-radius:.7rem;gap:.5rem;min-height:8rem;margin:0;padding:.5rem;display:grid}.uf-composer-middle{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.uf-composer-pinned{background:var(--foreground);border-radius:.7rem}@supports (color:color-mix(in lab, red, red)){.uf-composer-pinned{background:color-mix(in srgb, var(--foreground) 3%, var(--surface))}}.uf-composer-pinned{border:1px dashed var(--foreground)}@supports (color:color-mix(in lab, red, red)){.uf-composer-pinned{border:1px dashed color-mix(in srgb, var(--foreground) 12%, transparent)}}.uf-composer-pinned-body{grid-template-columns:1rem 3.75rem 1fr auto;align-items:center;gap:.75rem;padding:.55rem .65rem;display:grid}.uf-composer-pinned-lock{color:var(--muted);opacity:.55;justify-content:center;align-items:center;display:flex}.uf-composer-pinned-thumb{border:1px solid var(--line);background:var(--surface);border-radius:.35rem;width:3.75rem;height:3rem;overflow:hidden}.uf-composer-pinned-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.uf-composer-pinned-badge{font-family:var(--font-mono), ui-monospace, monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);opacity:.7;font-size:.68rem}.uf-composer-empty{min-height:6rem;color:var(--muted);text-align:center;background:0 0;border-radius:.35rem;place-items:center;padding:1rem;font-size:.9rem;display:grid}.uf-composer-item{background:var(--surface);border-radius:.7rem}.uf-composer-item-body{border:1px solid var(--line);background:var(--surface);cursor:grab;border-radius:.7rem;grid-template-columns:1rem 3.75rem 1fr auto;align-items:center;gap:.75rem;padding:.55rem .7rem;transition:transform .26s cubic-bezier(.22,1,.36,1),border-color .18s,box-shadow .22s,opacity .18s;display:grid}.uf-composer-item-body:active{cursor:grabbing}.uf-composer-item--dragging .uf-composer-item-body{opacity:.5;border-style:dashed}.uf-composer-item--dragover .uf-composer-item-body{border-color:var(--uf-accent-warm);box-shadow:0 0 0 3px var(--uf-accent-warm)}@supports (color:color-mix(in lab, red, red)){.uf-composer-item--dragover .uf-composer-item-body{box-shadow:0 0 0 3px color-mix(in srgb, var(--uf-accent-warm) 22%, transparent)}}.uf-composer-item--dragover .uf-composer-item-body{transform:translateY(-2px)}@keyframes uf-composer-pop{0%{opacity:0;transform:translateY(-10px)scale(.94)}55%{opacity:1;transform:translateY(2px)scale(1.015)}to{opacity:1;transform:translateY(0)scale(1)}}.uf-composer-item--enter .uf-composer-item-body{animation:.52s cubic-bezier(.16,1,.3,1) both uf-composer-pop}.uf-composer-item-handle{grid-template-rows:repeat(3,3px);grid-template-columns:repeat(2,3px);justify-content:center;gap:3px;width:9px;display:inline-grid}.uf-composer-item-handle span{background:var(--muted);opacity:.55;border-radius:999px;width:3px;height:3px}.uf-composer-item-thumb{background:var(--uf-accent-soft);border:1px solid var(--line);border-radius:.35rem;width:3.75rem;height:3.75rem;display:block;overflow:hidden}.uf-composer-item-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.uf-composer-item-meta{flex-direction:column;gap:.15rem;min-width:0;display:flex}.uf-composer-item-name{color:var(--foreground);font-size:.95rem;font-weight:600}.uf-composer-item-role{color:var(--muted);font-size:.8rem}.uf-composer-item-position{font-family:var(--font-mono), ui-monospace, monospace;color:var(--muted);opacity:.75;font-size:.7rem}.uf-composer-item-controls{gap:.25rem;display:inline-flex}.uf-composer-mini{border:1px solid var(--line);width:1.75rem;height:1.75rem;color:var(--foreground);cursor:pointer;background:0 0;border-radius:.35rem;justify-content:center;align-items:center;transition:background .16s,border-color .16s,transform .16s;display:inline-flex;position:relative}.uf-composer-mini:before{content:"";position:absolute;inset:-.5rem}.uf-composer-mini:hover:not(:disabled){background:var(--uf-accent-soft);border-color:var(--uf-accent-line)}.uf-composer-mini:active:not(:disabled){transform:translateY(1px)}.uf-composer-mini:disabled{opacity:.35;cursor:not-allowed}.uf-composer-mini--remove:hover:not(:disabled){background:var(--uf-accent-warm)}@supports (color:color-mix(in lab, red, red)){.uf-composer-mini--remove:hover:not(:disabled){background:color-mix(in srgb, var(--uf-accent-warm) 15%, transparent)}}.uf-composer-mini--remove:hover:not(:disabled){border-color:var(--uf-accent-warm);color:var(--uf-accent-warm)}@media (max-width:640px){.uf-composer-btn--randomize{display:none}.uf-composer-shelf,.uf-composer-preview{border:1px solid var(--line);border-radius:.75rem;padding:.85rem}.uf-composer-shelf{background:var(--uf-accent-soft)}@supports (color:color-mix(in lab, red, red)){.uf-composer-shelf{background:color-mix(in srgb, var(--uf-accent-soft) 45%, transparent)}}.uf-composer-preview{background:var(--background)}.uf-composer-item-body{grid-template-columns:3.25rem 1fr auto}.uf-composer-item-handle{display:none}.uf-composer-item-thumb{width:3.25rem;height:3.25rem}.uf-composer-pinned-body{grid-template-columns:3.25rem 1fr auto}.uf-composer-pinned-lock{display:none}.uf-composer-pinned-thumb{width:3.25rem;height:3.25rem}}@media (prefers-reduced-motion:reduce){.uf-composer-item--enter .uf-composer-item-body{animation:none}.uf-composer-item-body,.uf-composer-mini,.uf-composer-btn,.uf-composer-shelf-btn{transition:none}}.uf-lock-palette{gap:.5rem;max-width:34rem;margin:1rem 0 0;display:grid}.uf-lock-palette-caption{color:var(--muted);margin:0;font-size:.82rem}.uf-lock-palette ul{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.uf-lock-palette-swatch{--uf-swatch:#f26938;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s,box-shadow .22s;display:inline-flex}.uf-lock-palette-swatch>span[aria-hidden=true]{background:var(--uf-swatch);border-radius:999px;width:1.35rem;height:1.35rem;box-shadow:inset 0 0 0 1px #00000026}.uf-lock-palette-swatch:hover{border-color:var(--uf-swatch);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.uf-lock-palette-swatch:hover{border-color:color-mix(in srgb, var(--uf-swatch) 65%, transparent)}}.uf-lock-palette-swatch--active{border-color:var(--uf-swatch);box-shadow:0 0 0 2px var(--uf-swatch)}@supports (color:color-mix(in lab, red, red)){.uf-lock-palette-swatch--active{box-shadow:0 0 0 2px color-mix(in srgb, var(--uf-swatch) 30%, transparent)}}@media (max-width:640px){.uf-chip,.uf-segment,.uf-composer-btn,.uf-lock-palette-swatch{min-height:44px}.uf-lock-palette-swatch{min-width:44px}}@media (prefers-reduced-motion:reduce){.uf-lock-palette-swatch,.uf-lock-palette-swatch:hover{transition:none;transform:none}}.uf-figma-pair{gap:1.25rem;margin-top:2rem;display:grid}@media (min-width:768px){.uf-figma-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}}.uf-figma-figure{margin:0}.uf-figma-figure figcaption{font-family:var(--font-mono), ui-monospace, monospace;color:var(--uf-accent-cool-text);margin-top:.65rem;font-size:.75rem}.uf-page .color-palette{margin-top:3.6rem;margin-bottom:3.2rem}@media (prefers-reduced-motion:reduce){.uf-phone{transform:rotate(var(--uf-phone-tilt,0deg));transition:none}.uf-before-after-item:hover .uf-phone{transform:rotate(var(--uf-phone-tilt,0deg))}.uf-gallery-card{transition:none}.uf-gallery-card:hover{transform:rotate(var(--uf-gallery-rotate,0deg))}.uf-switcher-preview{animation:none}}@keyframes od-card-rise{0%{opacity:1;transform:translateY(32px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.fg-features-grid>*{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 32%}}}@media (prefers-reduced-motion:no-preference){.about-kicker{animation:.72s cubic-bezier(.22,1,.36,1) 40ms both nv-hero-in}.about-heading{animation:.94s cubic-bezier(.22,1,.36,1) .12s both nv-hero-in}.about-body{animation:.94s cubic-bezier(.22,1,.36,1) .26s both nv-hero-in}.about-page-actions{animation:.82s cubic-bezier(.22,1,.36,1) .38s both nv-hero-in}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.about-detail{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 40%}}}@media (prefers-reduced-motion:no-preference){.project-meta-field:first-child{animation:.68s cubic-bezier(.22,1,.36,1) .32s both nv-hero-in}.project-meta-field:nth-child(2){animation:.68s cubic-bezier(.22,1,.36,1) .4s both nv-hero-in}.project-meta-field:nth-child(3){animation:.68s cubic-bezier(.22,1,.36,1) .48s both nv-hero-in}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.home-page .about{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 28%}.project-highlight{animation:linear both od-highlight-in;animation-timeline:view();animation-range:entry cover 35%}}}@keyframes od-highlight-in{0%{opacity:1;transform:translateY(20px)scale(.975)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:no-preference){.project-toc-item{animation:.52s cubic-bezier(.22,1,.36,1) both nv-hero-in;animation-delay:calc(var(--toc-i,0) * 60ms + .2s)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.footer{animation:linear both od-footer-in;animation-timeline:view();animation-range:entry cover 50%}}}@keyframes od-footer-in{0%{opacity:1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.play-lede{animation:.94s cubic-bezier(.22,1,.36,1) .72s both nv-hero-in}.play-section-label{animation:.72s cubic-bezier(.22,1,.36,1) .9s both nv-hero-in}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.play-entry{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 32%}.project-work-jump-card,.project-work-jump-view-all{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 30%}}}@media (prefers-reduced-motion:no-preference){.resume-label{animation:.72s cubic-bezier(.22,1,.36,1) 40ms both nv-hero-in}.resume-heading{animation:.94s cubic-bezier(.22,1,.36,1) .12s both nv-hero-in}.resume-body{animation:.94s cubic-bezier(.22,1,.36,1) .26s both nv-hero-in}.resume-actions{animation:.82s cubic-bezier(.22,1,.36,1) .38s both nv-hero-in}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.resume-detail{animation:linear both od-card-rise;animation-timeline:view();animation-range:entry cover 40%}}}@media (prefers-reduced-motion:no-preference){.resume-cta span[aria-hidden]{transition:transform .26s cubic-bezier(.22,1,.36,1);display:inline-block}.resume-cta:hover span[aria-hidden]{transform:translateY(2px)}}.nv-research-artifacts{min-width:0;margin-top:2rem}.nv-research-board{border:1px solid var(--line);border-radius:var(--rounded-md);background:var(--surface);gap:clamp(2.5rem,5vw,4rem);padding:clamp(1.25rem,3vw,2.25rem);display:grid}.nv-research-board-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.5rem;display:flex}.nv-research-board-head h3{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0;font-size:clamp(1.15rem,2.2vw,1.35rem);line-height:1.2}.nv-research-board-head p{max-width:40ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:.85rem;line-height:1.5}.nv-page[data-nv-anim-ready] .nv-research-artifacts.nv-reveal:not(.nv-reveal--visible){opacity:1;transform:none}.nv-research-artifact{border-top:1px solid var(--line);isolation:isolate;grid-template-areas:"caption""diagram";min-width:0;margin:0;padding-top:1.2rem;display:grid}.nv-research-artifact figcaption{max-width:72ch;color:var(--foreground);flex-wrap:wrap;grid-area:caption;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;margin-bottom:1.5rem;font-weight:600;display:flex}.nv-research-artifact figcaption span{color:var(--muted);font-size:.82rem;font-weight:400}.nv-research-archetypes,.nv-research-journey,.nv-research-booking{grid-area:diagram;min-width:0;margin:0;padding:0;list-style:none}.nv-research-archetypes{grid-template-columns:repeat(3,minmax(0,1fr));align-items:flex-start;gap:1.25rem;display:grid}.nv-research-archetypes>li{border:1px solid var(--nv-ui-border);border-radius:var(--rounded-sm);background:var(--background);min-width:0;padding:1.15rem 1.2rem}.nv-research-archetypes>li:first-child{transform:rotate(-1deg)}.nv-research-archetypes>li:nth-child(2){transform:rotate(.65deg)}.nv-research-archetypes>li:nth-child(3){transform:rotate(-.35deg)}.nv-research-archetypes>li[data-scope=Implemented]{border:1px solid var(--nv-accent-line);background:var(--nv-accent-soft)}.nv-research-archetypes>li[data-scope=Future\ opportunity]{border:1px dashed var(--foreground)}@supports (color:color-mix(in lab, red, red)){.nv-research-archetypes>li[data-scope=Future\ opportunity]{border:1px dashed color-mix(in srgb, var(--foreground) 32%, transparent)}}.nv-research-archetypes>li[data-scope=Future\ opportunity]{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.nv-research-archetypes>li[data-scope=Future\ opportunity]{background:color-mix(in srgb, var(--foreground) 4%, var(--surface))}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.nv-research-archetypes>li{transition:transform .24s cubic-bezier(.22,1,.36,1)}.nv-research-archetypes>li:hover{transform:rotate(0)translateY(-.18rem)}}.nv-research-archetypes h4,.nv-research-journey h4,.nv-research-booking h4{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0 0 .55rem;font-size:1rem;line-height:1.3}.nv-research-archetypes dd,.nv-research-journey dd,.nv-research-booking p{overflow-wrap:anywhere;color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.nv-research-archetype-details,.nv-research-lane-details{gap:.7rem;margin:0;display:grid}.nv-research-archetype-details div,.nv-research-lane-details div{gap:.18rem;display:grid}.nv-research-archetype-details dt,.nv-research-lane-details dt{color:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;font-size:.78rem}.nv-research-archetype-details dd,.nv-research-lane-details dd{color:var(--foreground);margin:0}.nv-research-archetype-details span{color:var(--foreground);border:1px solid;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;line-height:1.35;display:inline-flex}.nv-research-journey,.nv-research-booking{z-index:1;gap:.75rem;padding-top:1.15rem;display:grid;position:relative}.nv-research-journey{grid-template-columns:repeat(3,minmax(0,1fr))}.nv-research-booking{grid-template-columns:repeat(5,minmax(0,1fr))}.nv-research-journey>li,.nv-research-booking>li{border:1px solid var(--nv-ui-border);background:var(--nv-accent);border-radius:.45rem;min-width:0;padding:1rem;position:relative}@supports (color:color-mix(in lab, red, red)){.nv-research-journey>li,.nv-research-booking>li{background:color-mix(in srgb, var(--nv-accent) 5%, var(--surface))}}.nv-research-booking>li[data-decision-point=cost-review]{border-color:var(--nv-accent);background:var(--nv-accent-soft)}.nv-research-step{color:var(--nv-accent-text);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;margin-bottom:.45rem;font-size:.78rem;display:block}.nv-research-journey>li:before,.nv-research-booking>li:before{z-index:3;border:1px solid var(--nv-accent);background:var(--surface);content:"";border-radius:50%;width:.65rem;height:.65rem;position:absolute;top:-1.45rem;left:50%;transform:translate(-50%)scale(1)}.nv-research-route{pointer-events:none;transform-origin:0;grid-area:diagram;grid-auto-columns:1fr;grid-auto-flow:column;align-self:start;gap:.75rem;height:1px;margin:1.45rem 8% 0;display:grid;transform:scaleX(1)}.nv-research-route span{background:var(--nv-accent);height:1px;display:block}@media (prefers-reduced-motion:no-preference){.nv-research-artifacts.nv-reveal--visible .nv-research-route{animation:.78s cubic-bezier(.22,1,.36,1) both nv-research-route-draw}.nv-research-artifacts.nv-reveal--visible .nv-research-journey>li:before,.nv-research-artifacts.nv-reveal--visible .nv-research-booking>li:before{animation:.46s cubic-bezier(.22,1,.36,1) both nv-research-marker-in;animation-delay:calc(.16s + var(--nv-marker-index,0) * 90ms)}.nv-research-journey>li:nth-child(2),.nv-research-booking>li:nth-child(2){--nv-marker-index:1}.nv-research-journey>li:nth-child(3),.nv-research-booking>li:nth-child(3){--nv-marker-index:2}.nv-research-booking>li:nth-child(4){--nv-marker-index:3}.nv-research-booking>li:nth-child(5){--nv-marker-index:4}}@keyframes nv-research-route-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes nv-research-route-draw-vertical{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes nv-research-marker-in{0%{transform:translate(-50%)scale(.35)}to{transform:translate(-50%)scale(1)}}@media (max-width:700px){.nv-research-artifacts,.nv-research-artifact{width:100%;min-width:0}.nv-research-board{padding:1rem}.nv-research-archetypes{grid-template-columns:1fr}.nv-research-archetypes>li:nth-child(n){width:100%;max-width:none;transform:none}.nv-research-journey,.nv-research-booking{grid-template-columns:1fr;gap:1rem;padding-top:0}.nv-research-journey>li,.nv-research-booking>li{padding:1rem 1rem 1rem 3rem}.nv-research-journey>li:before,.nv-research-booking>li:before{top:1.3rem;left:1rem}.nv-research-route{z-index:2;transform-origin:top;grid-template-columns:1fr;grid-auto-rows:1fr;grid-auto-flow:row;place-self:stretch start;width:1px;height:calc(100% - 2.6rem);margin:1.6rem 0 1rem 1.3rem;transform:scaleY(1)}.nv-research-route span{width:1px;height:100%}.nv-research-artifacts.nv-reveal--visible .nv-research-route{animation-name:nv-research-route-draw-vertical}}.nv-closing{max-width:none}.nv-validation-ledger{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2rem;display:grid}.nv-validation-ledger section{padding:1.35rem 0}.nv-validation-ledger section+section{border-left:1px solid var(--line);padding-left:clamp(1.25rem,4vw,3rem)}.nv-validation-ledger h3{font-family:var(--font-navi-display), var(--font-sans), sans-serif;margin:0 0 .75rem;font-size:1rem}.nv-validation-ledger ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.nv-validation-ledger li{color:var(--muted);padding-left:1rem;font-size:1rem;line-height:1.5;position:relative}.nv-validation-ledger li:before{background:var(--nv-accent);content:"";border-radius:50%;width:.32rem;height:.32rem;position:absolute;top:.65em;left:0}.nv-closing-links{flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:1.25rem;display:flex}.nv-closing-links a{color:var(--foreground);text-underline-offset:.24em;font-weight:600}@media (max-width:700px){.nv-validation-ledger{grid-template-columns:1fr}.nv-validation-ledger section+section{border-top:1px solid var(--line);border-left:0;padding-left:0}}@media (prefers-reduced-motion:reduce){.nv-research-route,.nv-research-journey>li:before,.nv-research-booking>li:before{animation:none}}.nv-ui,.nv-overlay-root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:#c4541a;--nv-darwin:#f3722c;--nv-gumball:#3a86ff;--nv-robinson:#4a414d;--nv-action:#c4541a;--nv-action-strong:#9e3f0b;--nv-surface:#fff;--nv-surface-muted:#f5f5f5;--nv-text:#2b2b2b;--nv-text-muted:#5a5560;--nv-border:#e2e0e3;--nv-focus:#9e3f0b;--nv-error:#c2371f;--nv-info:#3a86ff;--nv-disabled-bg:#d7d5d8;--nv-disabled-text:#8b8790;--nv-text-on-action:#fff;--nv-pin-location:#2f7d4f;--nv-local-bg:#e6f0e8;--nv-local-text:#2f5d3c;--nv-impact-icon:#3a7d4f;--nv-r-sm:6px;--nv-r-md:10px;--nv-r-lg:16px;--nv-r-pill:999px;--nv-sp-3xs:2px;--nv-sp-2xs:4px;--nv-sp-xs:8px;--nv-sp-sm:12px;--nv-sp-md:16px;--nv-sp-lg:24px;--nv-sp-xl:32px;--nv-sp-2xl:64px;--nv-sp-3xl:128px;--nv-z-bar:40;--nv-z-backdrop:60;--nv-z-overlay:70;--nv-z-backdrop-top:80;--nv-z-overlay-top:90;font-family:var(--nv-font-body), system-ui, sans-serif;color:var(--nv-text);background:var(--nv-surface)}.nv-ui :focus-visible,.nv-overlay-root :focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-ui h1,.nv-ui h2,.nv-ui h3,.nv-ui h4,.nv-ui h5,.nv-ui h6{font-family:var(--nv-font-display), system-ui, sans-serif}.nv-header{border-bottom:1px solid var(--nv-border)}.nv-header-main{justify-content:space-between;align-items:center;gap:var(--nv-sp-lg);padding:var(--nv-sp-md) var(--nv-sp-xl);display:flex}.nv-concept-disclosure{padding:6px var(--nv-sp-xl);border-bottom:1px solid var(--nv-border);background:var(--nv-surface-muted);color:var(--nv-text-muted);text-align:center;margin:0;font-size:.75rem;line-height:1.4}.nv-header-lead{align-items:center;display:flex}.nv-nav a.nv-nav-back{color:var(--nv-text-muted);white-space:nowrap;padding-right:var(--nv-sp-md);border-right:1px solid var(--nv-border);font-weight:600;position:relative}.nv-nav-back-short{display:none}.nv-nav a.nv-nav-back:after{content:"";left:0;right:var(--nv-sp-md);transform-origin:0;background:currentColor;height:1.5px;transition:transform .26s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;transform:scaleX(0)}.nv-nav a.nv-nav-back:hover,.nv-nav a.nv-nav-back:focus-visible{color:var(--nv-action)}.nv-nav a.nv-nav-back:hover:after,.nv-nav a.nv-nav-back:focus-visible:after{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.nv-nav a.nv-nav-back:after{transition:none}}.nv-wordmark{font-family:var(--nv-font-display), sans-serif;color:var(--nv-action);font-size:1.65rem;font-weight:700;line-height:1;text-decoration:none}.nv-nav{gap:var(--nv-sp-lg);align-items:center;display:flex}.nv-nav a{color:var(--nv-text);text-decoration:none}.nv-nav a:hover{color:var(--nv-action)}.nv-nav-host{padding:var(--nv-sp-xs) var(--nv-sp-md);border:1px solid var(--nv-action);border-radius:var(--nv-r-pill);white-space:nowrap}.nv-nav a.nv-nav-host{color:var(--nv-action)}.nv-footer{gap:var(--nv-sp-xl);padding:var(--nv-sp-2xl) var(--nv-sp-xl);border-top:1px solid var(--nv-border);background:var(--nv-surface-muted);grid-template-columns:minmax(0,1fr) auto;display:grid}.nv-footer-brand{gap:var(--nv-sp-xs);flex-direction:column;max-width:22rem;display:flex}.nv-footer-tagline{font-family:var(--nv-font-display), sans-serif;color:var(--nv-text);margin:0;font-size:1.05rem;line-height:1.35}.nv-footer-cols{gap:var(--nv-sp-2xl);align-items:flex-start;display:flex}.nv-footer-heading{letter-spacing:.12em;text-transform:uppercase;color:var(--nv-text-muted);margin:0 0 var(--nv-sp-sm);font-size:.72rem;font-weight:700}.nv-footer-col ul{gap:var(--nv-sp-xs);margin:0;padding:0;list-style:none;display:grid}.nv-footer-col a{color:var(--nv-text);text-decoration:none}.nv-footer-col a:hover{color:var(--nv-action)}@media (max-width:640px){.nv-footer{padding:var(--nv-sp-xl) var(--nv-sp-md);grid-template-columns:1fr}.nv-footer-cols{gap:var(--nv-sp-xl);flex-wrap:wrap}.nv-header-main{padding:var(--nv-sp-sm) var(--nv-sp-md);gap:var(--nv-sp-xs)}.nv-concept-disclosure{padding-right:var(--nv-sp-md);padding-left:var(--nv-sp-md)}.nv-nav{gap:var(--nv-sp-xs);min-width:0}.nv-wordmark,.nv-nav a{align-items:center;min-height:44px;display:inline-flex}.nv-nav a:not(.nv-nav-host):not(.nv-nav-back){display:none}.nv-nav a.nv-nav-back{border-right:none;padding-right:0}.nv-nav-back-wide{display:none}.nv-nav-back-short{display:inline}.nv-nav-host{padding:6px 10px}}.nv-btn{align-items:center;gap:var(--nv-sp-xs);border-radius:var(--nv-r-md);font-family:var(--nv-font-body), sans-serif;cursor:pointer;border:1px solid #0000;font-weight:700;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.nv-btn--sm{padding:6px 12px;font-size:.85rem}.nv-btn--md{padding:10px 18px;font-size:.95rem}.nv-btn--lg{padding:14px 24px;font-size:1.05rem}.nv-btn-icon{width:1em;height:1em;display:inline-flex}.nv-btn-icon svg{width:100%;height:100%;display:block}.nv-icon-btn .nv-btn-icon{width:1.25em;height:1.25em}.nv-btn--primary{background:var(--nv-action);color:var(--nv-text-on-action)}.nv-btn--primary:hover{background:var(--nv-action-strong)}.nv-btn--transparent{color:var(--nv-action);background:0 0}.nv-btn--transparent:hover{background:var(--nv-action)}@supports (color:color-mix(in lab, red, red)){.nv-btn--transparent:hover{background:color-mix(in srgb, var(--nv-action) 10%, transparent)}}.nv-btn--outline{color:var(--nv-action);border-color:var(--nv-action);background:0 0}.nv-btn--outline:hover{background:var(--nv-action)}@supports (color:color-mix(in lab, red, red)){.nv-btn--outline:hover{background:color-mix(in srgb, var(--nv-action) 8%, transparent)}}.nv-btn:disabled{background:var(--nv-disabled-bg);color:var(--nv-disabled-text);cursor:not-allowed;border-color:#0000}.nv-icon-btn{border-radius:var(--nv-r-pill);cursor:pointer;background:var(--nv-surface);color:var(--nv-text);border:1px solid #0000;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.nv-icon-btn--sm{width:32px;height:32px;position:relative}.nv-icon-btn--sm:before{content:"";position:absolute;inset:-6px}.nv-icon-btn--md{width:40px;height:40px;position:relative}.nv-icon-btn--md:before{content:"";position:absolute;inset:-2px}.nv-icon-btn--lg{width:48px;height:48px}.nv-icon-btn--primary{background:var(--nv-action);color:var(--nv-text-on-action)}.nv-icon-btn--primary:hover{background:var(--nv-action-strong);color:var(--nv-text-on-action);border-color:#0000}.nv-icon-btn--outline{border-color:var(--nv-action);color:var(--nv-action)}.nv-icon-btn--transparent{background:0 0}.nv-icon-btn:hover{color:var(--nv-action);border-color:var(--nv-action)}.nv-icon-btn:disabled{background:var(--nv-disabled-bg);color:var(--nv-disabled-text);cursor:not-allowed;border-color:#0000}.nv-tag{border-radius:var(--nv-r-pill);background:var(--nv-surface-muted);color:var(--nv-text);align-items:center;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.nv-tag--popular{background:var(--nv-action)}@supports (color:color-mix(in lab, red, red)){.nv-tag--popular{background:color-mix(in srgb, var(--nv-action) 8%, var(--nv-surface))}}.nv-tag--popular{color:var(--nv-action-strong)}.nv-tag--local{background:var(--nv-local-bg);color:var(--nv-local-text)}.nv-impact{align-items:flex-start;gap:var(--nv-sp-xs);color:var(--nv-local-text);font-size:.82rem;line-height:1.4;display:inline-flex}.nv-impact-icon{color:var(--nv-impact-icon);margin-top:.15em;display:inline-flex}.nv-impact--link{cursor:pointer;text-decoration:none}.nv-impact--link:hover .nv-impact-text{text-decoration:underline}.nv-impact--link:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px;border-radius:var(--nv-r-sm)}.nv-rating{align-items:center;gap:var(--nv-sp-xs);display:inline-flex}.nv-rating-badge{border-radius:var(--nv-r-sm);background:var(--nv-action);color:var(--nv-text-on-action);align-items:center;padding:2px 8px;font-size:.82rem;font-weight:700;display:inline-flex}.nv-rating-reviews{color:var(--nv-text-muted);font-size:.82rem}.nv-avatar{border-radius:var(--nv-r-pill);background:var(--nv-surface-muted);color:var(--nv-text);justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.nv-avatar img{object-fit:cover;width:100%;height:100%}.nv-avatar--sm{width:28px;height:28px;font-size:.7rem}.nv-avatar--md{width:40px;height:40px;font-size:.85rem}.nv-avatar--lg{width:56px;height:56px;font-size:1rem}.nv-pill-row{gap:var(--nv-sp-xs);flex-wrap:wrap;display:flex}.nv-pill-row-item{min-height:44px;padding:0 var(--nv-sp-md);border-radius:var(--nv-r-pill);color:var(--nv-text-muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;font-weight:700}.nv-pill-row-item:hover{color:var(--nv-text)}.nv-pill-row-item--active{color:var(--nv-text-on-action);background:var(--nv-action)}.nv-pill-row-item:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-pill-row--sticky-section-nav{z-index:2;background:var(--nv-surface);padding:var(--nv-sp-sm) 0;margin-bottom:var(--nv-sp-md);border-bottom:1px solid var(--nv-border);position:sticky;top:0}.nv-tabs{gap:var(--nv-sp-lg);border-bottom:1px solid var(--nv-border);display:inline-flex}.nv-tab{min-height:44px;padding:var(--nv-sp-xs) 0;color:var(--nv-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:700}.nv-tab:hover{color:var(--nv-action)}.nv-tab--selected{color:var(--nv-text);border-bottom-color:var(--nv-action)}.nv-accordion{flex-direction:column;width:100%;display:flex}.nv-accordion-row{border-bottom:1px solid var(--nv-border)}.nv-accordion-trigger{width:100%;padding:var(--nv-sp-md) 0;color:var(--nv-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;font-weight:700;display:flex}.nv-accordion-panel{padding-bottom:var(--nv-sp-md);color:var(--nv-text-muted)}.nv-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nv-label{align-items:baseline;gap:var(--nv-sp-3xs);font-weight:700;display:inline-flex}.nv-label-required{color:var(--nv-error)}.nv-label-optional{color:var(--nv-text-muted);font-weight:400}.nv-label-help{border-radius:var(--nv-r-pill);background:var(--nv-action);width:16px;height:16px;color:var(--nv-text-on-action);margin-left:var(--nv-sp-2xs);justify-content:center;align-items:center;font-size:.7rem;display:inline-flex}.nv-search{align-items:center;gap:var(--nv-sp-xs);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);width:100%;padding:var(--nv-sp-xs) var(--nv-sp-md);background:var(--nv-surface);display:flex}.nv-search-icon{color:var(--nv-text-muted);flex:none;display:inline-flex}.nv-search-input{min-width:0;font:inherit;background:0 0;border:none;outline:none;flex:1}.nv-carousel-arrow{border-radius:var(--nv-r-pill);border:1px solid var(--nv-border);background:var(--nv-surface);width:44px;min-width:44px;height:44px;color:var(--nv-text);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.nv-carousel-arrow:hover{border-color:var(--nv-action);color:var(--nv-action)}.nv-carousel-arrow:disabled{color:var(--nv-disabled-text);cursor:not-allowed;border-color:#0000}.nv-dots{gap:var(--nv-sp-xs);display:inline-flex}.nv-dot{border-radius:var(--nv-r-pill);border:1px solid var(--nv-border);cursor:pointer;background:0 0;width:10px;height:10px;padding:0;position:relative}.nv-dot:before{content:"";position:absolute;inset:-17px}.nv-dot--active{background:var(--nv-action);border-color:var(--nv-action)}.nv-tooltip{display:inline-flex;position:relative}.nv-tooltip-bubble{bottom:calc(100% + var(--nv-sp-xs));background:var(--nv-robinson);color:var(--nv-text-on-action);padding:var(--nv-sp-xs) var(--nv-sp-sm);border-radius:var(--nv-r-sm);white-space:nowrap;z-index:10;font-size:.8rem;position:absolute;left:50%;transform:translate(-50%)}.nv-card{background:var(--nv-surface);border:1px solid var(--nv-border);border-radius:var(--nv-r-md)}.nv-card--padded{padding:var(--nv-sp-md)}.nv-pin{min-width:36px;height:28px;padding:0 var(--nv-sp-xs);border-radius:var(--nv-r-pill);border:1.5px solid var(--nv-surface);justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #0000004d}.nv-pin--place{background:var(--nv-action);color:var(--nv-text-on-action)}.nv-pin--place.nv-pin--selected{background:var(--nv-action-strong);transform:scale(1.14)}.nv-pin--hollow{background:var(--nv-surface);color:var(--nv-action)}@media (prefers-reduced-motion:no-preference){.nv-pin{transition:transform .15s cubic-bezier(.22,1,.36,1),background .15s}}.nv-loc-dot{background:var(--nv-info);border:2.5px solid var(--nv-surface);width:14px;height:14px;box-shadow:0 0 0 4px var(--nv-info), 0 1px 3px #0000004d;border-radius:50%;display:inline-block}@supports (color:color-mix(in lab, red, red)){.nv-loc-dot{box-shadow:0 0 0 4px color-mix(in srgb, var(--nv-info) 28%, transparent), 0 1px 3px #0000004d}}.nv-cluster-leaflet{background:0 0!important;border:none!important}.nv-cluster{background:var(--nv-action);width:38px;height:38px;color:var(--nv-text-on-action);border:2px solid var(--nv-surface);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 1px 4px #0000004d}.nv-venue-pin{background:var(--nv-action);border:2px solid var(--nv-surface);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;box-shadow:0 1px 3px #00000059}.nv-venue-pin:after{content:"";background:var(--nv-surface);border-radius:50%;width:8px;height:8px}.nv-specimen{padding:var(--nv-sp-xl) 0;border-bottom:1px solid var(--nv-border)}.nv-specimen-title{margin-bottom:var(--nv-sp-2xs);font-size:1.25rem}.nv-specimen-note{color:var(--nv-text-muted);margin-bottom:var(--nv-sp-md);max-width:60ch}.nv-specimen-stage{gap:var(--nv-sp-md);flex-wrap:wrap;align-items:center;display:flex}.nv-specimen-stage .nv-feed-catwrap{flex:100%;min-width:0;max-width:100%}.nv-specimen-stage .nv-feed-categories{margin-inline:0;padding-inline:0;scroll-padding-inline:0}.nv-playground{gap:var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-lg);padding:var(--nv-sp-lg);display:grid}.nv-playground-stage{padding:var(--nv-sp-lg);background:var(--nv-surface-muted);border-radius:var(--nv-r-md);justify-content:center;display:flex}.nv-playground-controls{gap:var(--nv-sp-lg);flex-wrap:wrap;display:flex}.nv-playground-control{gap:var(--nv-sp-sm);border:none;align-items:center;padding:0;display:flex}.nv-playground-control legend{margin-right:var(--nv-sp-xs);font-weight:700}.nv-playground-opt{gap:var(--nv-sp-2xs);align-items:center;display:inline-flex}.nv-playground-code{background:var(--nv-robinson);color:var(--nv-text-on-action);padding:var(--nv-sp-sm);border-radius:var(--nv-r-sm);font-size:.82rem;overflow-x:auto}.nv-system{max-width:60rem;padding:var(--nv-sp-xl) var(--nv-sp-lg);margin:0 auto}.nv-system-head h1{font-size:2rem}.nv-system-head p{color:var(--nv-text-muted);max-width:65ch;margin-top:var(--nv-sp-sm)}.nv-chapter{padding:var(--nv-sp-2xl) 0;border-top:1px solid var(--nv-border)}.nv-chapter:first-of-type{border-top:none}.nv-chapter-head{margin-bottom:var(--nv-sp-lg)}.nv-chapter-title{margin:0 0 var(--nv-sp-2xs);font-size:1.6rem}.nv-chapter-intro{color:var(--nv-text-muted);max-width:60ch;margin:0}.nv-chapter-body{gap:var(--nv-sp-xl);flex-direction:column;display:flex}.nv-hero{padding:var(--nv-sp-2xl) 0}.nv-hero-head{margin-bottom:var(--nv-sp-lg)}.nv-hero-title{margin:0 0 var(--nv-sp-2xs);font-size:1.6rem}.nv-hero-lede{color:var(--nv-text-muted);max-width:60ch;margin:0}.nv-hero-stage{background:var(--nv-surface-muted);border-radius:var(--nv-r-lg);padding:var(--nv-sp-xl)}.nv-tabpanel{padding-top:var(--nv-sp-md)}.nv-tabbar{background:var(--nv-surface);border-top:1px solid var(--nv-border);padding:var(--nv-sp-xs) var(--nv-sp-sm);z-index:var(--nv-z-bar);display:none;position:fixed;bottom:0;left:0;right:0}@media (max-width:720px){.nv-tabbar{justify-content:space-around;display:flex}body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}.nv-tabbar-item{align-items:center;gap:var(--nv-sp-3xs);padding:var(--nv-sp-2xs) var(--nv-sp-sm);color:var(--nv-text-muted);flex-direction:column;min-width:44px;min-height:44px;font-size:.72rem;font-weight:700;text-decoration:none;display:flex}.nv-tabbar-item--active{color:var(--nv-action)}.nv-tabbar-icon{font-size:1.1rem;display:inline-flex}.nv-exp-card{background:var(--nv-surface);border:1px solid var(--nv-border);border-radius:var(--nv-r-md);height:100%;color:var(--nv-text);grid-template-rows:auto 1fr;text-decoration:none;transition:border-color .15s,transform .15s;display:grid;overflow:hidden}.nv-exp-card:hover{border-color:var(--nv-action);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.nv-exp-card{transition:none}.nv-exp-card:hover{transform:none}}.nv-exp-card-photo{aspect-ratio:16/10;position:relative;overflow:hidden}.nv-card-badge{top:var(--nv-sp-xs);left:var(--nv-sp-xs);z-index:1;padding:2px var(--nv-sp-xs);border-radius:var(--nv-r-pill);background:var(--nv-surface);font-size:.72rem;font-weight:700;line-height:1.5;position:absolute;box-shadow:0 1px 3px #00000040}.nv-card-badge--popular{color:var(--nv-action-strong)}.nv-card-badge--local{color:var(--nv-local-text)}.nv-exp-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.nv-photo-pending{width:100%;height:100%;min-height:8rem;padding:var(--nv-sp-sm);background:var(--nv-surface-muted);color:var(--nv-text-muted);letter-spacing:.02em;text-align:center;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.nv-exp-card-body{padding:var(--nv-sp-md);gap:var(--nv-sp-xs);flex-direction:column;display:flex}.nv-exp-card-title{margin:0;font-size:1.05rem}.nv-exp-card-loc{color:var(--nv-text-muted);margin:0;font-size:.85rem}.nv-exp-card-price{padding-top:var(--nv-sp-xs);margin:auto 0 0;font-size:.95rem;font-weight:700}.nv-result{gap:var(--nv-sp-md);padding:var(--nv-sp-md) 0;border-bottom:1px solid var(--nv-border);color:var(--nv-text);grid-template-columns:160px 1fr;text-decoration:none;display:grid}.nv-result:hover{background:var(--nv-surface-muted)}.nv-result-photo{border-radius:var(--nv-r-md);width:160px;height:120px;position:relative;overflow:hidden}.nv-result-photo img{object-fit:cover;width:100%;height:100%;display:block}.nv-result-body{gap:var(--nv-sp-2xs);align-content:start;display:grid}.nv-result-title{margin:0;font-size:1rem}.nv-result-loc{color:var(--nv-text-muted);margin:0;font-size:.85rem}.nv-result-price{margin:0;font-weight:700}@media (max-width:720px){.nv-result{grid-template-columns:1fr}.nv-result-photo{width:100%;height:160px}}.nv-booking{gap:var(--nv-sp-sm);padding:var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-lg);background:var(--nv-surface);top:var(--nv-sp-lg);display:grid;position:sticky}.nv-booking-reassure{gap:var(--nv-sp-sm);padding-top:var(--nv-sp-md);border-top:1px solid var(--nv-border);display:grid}.nv-booking-reassure-host{align-items:center;gap:var(--nv-sp-sm);color:var(--nv-text);margin:0;font-size:.9rem;display:flex}.nv-booking-reassure-link{color:var(--nv-text);text-underline-offset:2px;font-weight:600;text-decoration:underline}.nv-booking-reassure-link:hover{color:var(--nv-action-strong)}.nv-mobilebar{display:none}@media (max-width:720px){.nv-booking{display:none}.nv-mobilebar{z-index:var(--nv-z-bar);justify-content:space-between;align-items:center;gap:var(--nv-sp-md);padding:var(--nv-sp-sm) var(--nv-sp-md);padding-bottom:calc(var(--nv-sp-sm) + env(safe-area-inset-bottom));background:var(--nv-surface);border-top:1px solid var(--nv-border);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 16px #0000001a}.nv-ui:has(.nv-detail) .nv-tabbar{display:none}}.nv-mobilebar-info{flex-direction:column;min-width:0;line-height:1.2;display:flex}.nv-mobilebar-price{color:var(--nv-text);font-size:1.15rem;font-weight:700}.nv-mobilebar-status{align-items:center;gap:var(--nv-sp-2xs);color:var(--nv-action-strong);font-weight:700;display:inline-flex}.nv-mobilebar .nv-btn{flex:none}.nv-booking-price{margin:0;font-size:1.6rem;font-weight:700}.nv-booking-dates{gap:var(--nv-sp-xs);border:none;padding:0;display:grid}.nv-booking-dates-legend{color:var(--nv-text);padding:0;font-size:.85rem;font-weight:700}.nv-booking-date{padding:var(--nv-sp-sm);border:1px solid var(--nv-border);border-radius:var(--nv-r-md);cursor:pointer;justify-content:space-between;display:flex}.nv-booking-date--active{border-color:var(--nv-action);background:var(--nv-surface-muted)}.nv-booking-date-day{font-weight:700}.nv-booking-date-time{color:var(--nv-text-muted)}.nv-booking-pick{gap:var(--nv-sp-2xs);display:grid}.nv-booking-pick-label{color:var(--nv-text-muted);font-size:.85rem}.nv-booking-pick-trigger{border:1px solid var(--nv-border);border-radius:var(--nv-r-md);background:var(--nv-surface);color:var(--nv-text-muted);cursor:pointer;font:inherit;justify-content:space-between;align-items:stretch;gap:0;padding:0;display:flex;overflow:hidden}.nv-booking-pick-trigger.is-set{color:var(--nv-text)}.nv-booking-pick-trigger:hover{border-color:var(--nv-action)}.nv-booking-pick-trigger:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-booking-pick-value{padding:var(--nv-sp-sm);text-align:left;align-self:center}.nv-booking-pick-icon{padding:0 var(--nv-sp-sm);background:var(--nv-action);color:var(--nv-text-on-action);justify-content:center;align-items:center;display:inline-flex}.nv-booking-pick-trigger:hover .nv-booking-pick-icon{background:var(--nv-action-strong)}.nv-booking-pick-icon svg{width:20px;height:20px}.nv-cal{gap:var(--nv-sp-md);background:var(--nv-surface);flex-direction:column;display:flex}.nv-cal-head{align-items:center;gap:var(--nv-sp-xs);grid-template-columns:auto 1fr auto;display:grid}.nv-cal-title{text-align:center;font-family:var(--nv-font-display), sans-serif;color:var(--nv-text);margin:0;font-size:1rem;font-weight:600}.nv-cal-nav{border-radius:var(--nv-r-pill);border:1px solid var(--nv-border);background:var(--nv-surface);width:44px;height:44px;color:var(--nv-text);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.nv-cal-nav:hover:not(:disabled){background:var(--nv-surface-muted)}.nv-cal-nav:disabled{opacity:.4;cursor:not-allowed}.nv-cal-nav:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-cal-nav svg{width:20px;height:20px}.nv-cal-divider{background:var(--nv-border);height:1px}.nv-cal-weekdays,.nv-cal-week{gap:var(--nv-sp-2xs);grid-template-columns:repeat(7,1fr);display:grid}.nv-cal-weekday{text-align:center;color:var(--nv-text-muted);font-size:.8rem;font-weight:600}.nv-cal-grid{gap:var(--nv-sp-2xs);flex-direction:column;display:flex}.nv-cal-cell{aspect-ratio:1;border-radius:var(--nv-r-sm);min-height:44px;font:inherit;color:var(--nv-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.nv-cal-cell:hover:not(:disabled):not(.nv-cal-cell--selected){background:var(--nv-surface-muted)}.nv-cal-cell:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-cal-cell--selected{background:var(--nv-action);color:var(--nv-text-on-action);font-weight:700}.nv-cal-cell:disabled{color:var(--nv-text-muted);opacity:.35;cursor:not-allowed}.nv-cal-cell--empty{cursor:default;background:0 0}.nv-dtmodal-backdrop{z-index:var(--nv-z-backdrop-top);background:#00000073;position:fixed;inset:0}.nv-dtmodal{z-index:var(--nv-z-overlay-top);background:var(--nv-surface);border-radius:var(--nv-r-lg);flex-direction:column;width:min(92vw,380px);max-height:90vh;display:flex;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 20px 60px #00000040}@media (prefers-reduced-motion:no-preference){.nv-dtmodal-backdrop,.nv-dtmodal{animation:.18s both nvFadeIn}}.nv-dtmodal-head{justify-content:space-between;align-items:center;gap:var(--nv-sp-sm);padding:var(--nv-sp-md) var(--nv-sp-md) 0;display:flex}.nv-dtmodal-head h2{font-size:1.05rem;font-family:var(--nv-font-display), sans-serif;margin:0}.nv-dtmodal-close{cursor:pointer;color:var(--nv-text-muted);border-radius:var(--nv-r-pill);background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;display:inline-flex}.nv-dtmodal-close:hover{background:var(--nv-surface-muted);color:var(--nv-text)}.nv-dtmodal-close:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-dtmodal-body{padding:var(--nv-sp-md);gap:var(--nv-sp-md);flex-direction:column;display:flex}.nv-dtmodal-times{gap:var(--nv-sp-xs);border:none;flex-direction:column;min-inline-size:0;margin:0;padding:0;display:flex}.nv-dtmodal-times-legend{color:var(--nv-text);padding:0;font-size:.85rem;font-weight:700}.nv-dtmodal-times-pills{gap:var(--nv-sp-xs);flex-wrap:wrap;display:flex}.nv-dtmodal-time{min-height:44px;padding:var(--nv-sp-2xs) var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);background:var(--nv-surface);color:var(--nv-text);font:inherit;cursor:pointer;justify-content:center;align-items:center;font-size:.9rem;display:inline-flex}.nv-dtmodal-time:hover{border-color:var(--nv-action)}.nv-dtmodal-time.is-active{background:var(--nv-action);border-color:var(--nv-action);color:var(--nv-text-on-action);font-weight:700}.nv-dtmodal-time:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-dtmodal-foot{padding:0 var(--nv-sp-md) var(--nv-sp-md);gap:var(--nv-sp-sm);flex-direction:column;display:flex}.nv-dtmodal-summary{color:var(--nv-text-muted);margin:0;font-size:.9rem}.nv-dtmodal-actions{gap:var(--nv-sp-sm);display:flex}.nv-dtmodal-cancel,.nv-dtmodal-confirm{padding:var(--nv-sp-sm);border-radius:var(--nv-r-md);font:inherit;cursor:pointer;flex:1;font-weight:700}.nv-dtmodal-cancel{border:1px solid var(--nv-border);background:var(--nv-surface);color:var(--nv-text)}.nv-dtmodal-cancel:hover{background:var(--nv-surface-muted)}.nv-dtmodal-confirm{border:1px solid var(--nv-action);background:var(--nv-action);color:var(--nv-text-on-action)}.nv-dtmodal-confirm:hover:not(:disabled){background:var(--nv-action-strong);border-color:var(--nv-action-strong)}.nv-dtmodal-confirm:disabled{opacity:.5;cursor:not-allowed}.nv-dtmodal-cancel:focus-visible,.nv-dtmodal-confirm:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-sheet-backdrop{z-index:var(--nv-z-backdrop);background:#00000073;position:fixed;inset:0}.nv-sheet{z-index:var(--nv-z-overlay);background:var(--nv-surface);border-radius:var(--nv-r-lg) var(--nv-r-lg) 0 0;flex-direction:column;max-height:92vh;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -12px 48px #0000004d}.nv-sheet-head{justify-content:space-between;align-items:center;gap:var(--nv-sp-sm);padding:var(--nv-sp-md) var(--nv-sp-md) 0;display:flex}.nv-sheet-title{font-size:1.1rem;font-family:var(--nv-font-display), sans-serif;margin:0}.nv-sheet-close{border-radius:var(--nv-r-pill);width:44px;height:44px;color:var(--nv-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.nv-sheet-close:hover{background:var(--nv-surface-muted);color:var(--nv-text)}.nv-sheet-close:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-sheet-body{gap:var(--nv-sp-sm);padding:var(--nv-sp-md);padding-bottom:calc(var(--nv-sp-md) + env(safe-area-inset-bottom));display:grid}.nv-sheet-body .nv-btn{justify-content:center}@media (prefers-reduced-motion:no-preference){.nv-sheet-backdrop{animation:.2s both nvFadeIn}.nv-sheet{animation:.28s cubic-bezier(.22,1,.36,1) both nvSlideUp}}@keyframes nvSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.nv-booking-confirm{padding:var(--nv-sp-sm);background:var(--nv-surface-muted);border-radius:var(--nv-r-md);color:var(--nv-text);margin:0}.nv-booking-confirm-group{gap:var(--nv-sp-xs);display:grid}@media (prefers-reduced-motion:no-preference){.nv-booking-confirm-group{animation:.3s cubic-bezier(.22,1,.36,1) both fadeUp}}.nv-booking-note{color:var(--nv-text-muted);text-align:center;margin:0;font-size:.8rem}.nv-booking .nv-btn{justify-content:center}.nv-transit{gap:var(--nv-sp-md);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.nv-transit-item{align-items:center;gap:var(--nv-sp-2xs);text-align:center;flex-direction:column;display:flex}@media (max-width:640px){.nv-transit{gap:var(--nv-sp-lg);grid-template-columns:repeat(2,minmax(0,1fr))}}.nv-transit-icon{color:var(--nv-action-strong);align-items:center;display:inline-flex}.nv-transit-label{font-weight:700}.nv-transit-detail{color:var(--nv-text-muted);font-size:.85rem}.nv-gallery-carousel{gap:var(--nv-sp-sm);margin:0;display:grid}.nv-gallery-carousel-hero{aspect-ratio:16/10;border-radius:var(--nv-r-md);outline:none;position:relative;overflow:hidden}.nv-gallery-carousel-hero img,.nv-gallery-carousel-hero .nv-photo-pending{object-fit:cover;width:100%;height:100%;display:block}.nv-gallery-carousel-hero:focus-visible{outline:3px solid var(--nv-focus);outline-offset:2px}.nv-gallery-carousel-arrows{padding:var(--nv-sp-sm);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0}.nv-gallery-carousel-arrows .nv-carousel-arrow{pointer-events:auto}.nv-gallery-carousel-dots{left:50%;bottom:var(--nv-sp-sm);position:absolute;transform:translate(-50%)}.nv-gallery-carousel-thumbs{gap:var(--nv-sp-xs);grid-template-columns:repeat(auto-fill,minmax(80px,1fr));margin:0;padding:0;list-style:none;display:grid}.nv-gallery-carousel-thumb{aspect-ratio:16/10;border-radius:var(--nv-r-sm);cursor:pointer;background:0 0;border:2px solid #0000;width:100%;padding:0;display:block;overflow:hidden}.nv-gallery-carousel-thumb img,.nv-gallery-carousel-thumb .nv-photo-pending{object-fit:cover;width:100%;height:100%;display:block}.nv-gallery-carousel-thumb.is-active{border-color:var(--nv-action)}.nv-gallery-carousel-thumb:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.nv-gallery-carousel-hero img{transition:opacity .18s}}.nv-map{isolation:isolate;border-radius:var(--nv-r-md);height:100%;min-height:480px;position:relative;overflow:hidden}.nv-map-canvas{width:100%;height:100%}.nv-map-skeleton{background:var(--nv-surface-muted);width:100%;height:100%}.nv-map-empty{z-index:2;top:var(--nv-sp-md);padding:var(--nv-sp-xs) var(--nv-sp-md);max-width:calc(100% - 2 * var(--nv-sp-md));background:var(--nv-surface);color:var(--nv-text);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);text-align:center;margin:0;font-weight:700;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000001f}.nv-pin-leaflet{background:0 0!important;border:none!important}.nv-legend{bottom:var(--nv-sp-md);right:var(--nv-sp-md);padding:var(--nv-sp-sm) var(--nv-sp-md);background:var(--nv-surface);border:1px solid var(--nv-border);border-radius:var(--nv-r-md);z-index:850;font-size:.82rem;position:absolute}.nv-legend-title{margin:0 0 var(--nv-sp-2xs);font-weight:700}.nv-legend ul{gap:var(--nv-sp-2xs);margin:0;padding:0;list-style:none;display:grid}.nv-legend li{align-items:center;gap:var(--nv-sp-xs);grid-template-columns:40px 1fr;display:grid}.nv-legend li>:first-child{justify-self:center}.nv-feed{max-width:72rem;padding:var(--nv-sp-xl) var(--nv-sp-lg);margin:0 auto}.nv-feed-head{gap:var(--nv-sp-md);margin-bottom:var(--nv-sp-xl);display:grid}.nv-feed-head h1{margin:0;font-size:clamp(1.6rem,3vw,2.2rem)}.nv-feed-catwrap{margin-bottom:var(--nv-sp-md);position:relative}.nv-feed-catwrap:before,.nv-feed-catwrap:after{content:"";pointer-events:none;opacity:0;z-index:1;width:28px;transition:opacity .15s;position:absolute;top:0;bottom:0}.nv-feed-catwrap:before{background:linear-gradient(90deg, var(--nv-surface) 30%, transparent);left:0}.nv-feed-catwrap:after{background:linear-gradient(-90deg, var(--nv-surface) 30%, transparent);right:0}.nv-feed-catwrap.is-prev:before,.nv-feed-catwrap.is-next:after{opacity:1}.nv-feed-categories{gap:var(--nv-sp-xs);scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;display:flex;overflow-x:auto}.nv-feed-categories::-webkit-scrollbar{display:none}.nv-cat-nav{z-index:2;border:1px solid var(--nv-border);background:var(--nv-surface);width:36px;height:36px;color:var(--nv-text);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000001f}.nv-cat-nav:hover{border-color:var(--nv-action);color:var(--nv-action-strong)}.nv-cat-nav:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-cat-nav--prev{left:-10px}.nv-cat-nav--next{right:-10px}@media (max-width:640px){.nv-cat-nav{display:none}}.nv-feed-controls{justify-content:space-between;align-items:center;gap:var(--nv-sp-md);margin-bottom:var(--nv-sp-lg);flex-wrap:wrap;display:flex}.nv-feed-count{margin:0 0 var(--nv-sp-md);font-weight:700}.nv-feed-actions{align-items:center;gap:var(--nv-sp-sm);flex-wrap:wrap;display:flex}.nv-feed-select{align-items:center;display:inline-flex}.nv-feed-select select{font:inherit;min-height:36px;padding:var(--nv-sp-xs) 30px var(--nv-sp-xs) var(--nv-sp-sm);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);background-color:var(--nv-surface);color:var(--nv-text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%232b2b2b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat}.nv-feed-select select:hover,.nv-feed-select select:focus-visible{border-color:var(--nv-action)}.nv-feed-filters{align-items:center;gap:var(--nv-sp-xs);min-height:36px;padding:0 var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);background:var(--nv-surface);color:var(--nv-text);cursor:pointer;font:inherit;font-weight:700;display:inline-flex}.nv-feed-filters:hover{border-color:var(--nv-action)}.nv-feed-filters:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-feed-filters-badge{border-radius:var(--nv-r-pill);background:var(--nv-action);min-width:20px;height:20px;color:var(--nv-text-on-action);place-items:center;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-grid}.nv-feed-clear{padding:var(--nv-sp-xs) var(--nv-sp-sm);min-height:36px;color:var(--nv-action-strong);cursor:pointer;background:0 0;border:none;font-weight:700;text-decoration:underline}@media (min-width:768px){.nv-feed-row{align-items:center;gap:var(--nv-sp-md);margin-bottom:var(--nv-sp-md);display:flex}.nv-feed-row .nv-feed-catwrap{flex:1;min-width:0;margin-bottom:0}.nv-feed-row .nv-feed-divider{background:var(--nv-border);width:1px;height:36px}.nv-feed-row .nv-feed-actions{flex:none}}@media (max-width:767px){.nv-feed-divider{display:none}.nv-feed-row{margin-bottom:var(--nv-sp-md)}.nv-feed-row .nv-feed-actions{margin-top:var(--nv-sp-sm)}.nv-feed-select select,.nv-feed-filters,.nv-feed-clear{min-height:44px}}.nv-exp-card-facts{color:var(--nv-text-muted);margin:0;font-size:.8rem}.nv-feed-cat{scroll-snap-align:start;min-height:44px;padding:var(--nv-sp-xs) var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);background:var(--nv-surface);cursor:pointer;color:var(--nv-text);flex:none;align-items:center;gap:8px;font-weight:700;display:inline-flex}.nv-feed-cat svg{flex:none}.nv-feed-cat--active{border-color:var(--nv-action);color:var(--nv-text-on-action);background:var(--nv-action)}.nv-feed-grid{gap:var(--nv-sp-lg);grid-template-columns:repeat(auto-fill,minmax(280px,340px));justify-content:start;margin:0;padding:0;list-style:none;display:grid}.nv-search-result[data-pulse=true],.nv-feed-grid>li[data-pulse=true]{border-radius:var(--nv-r-md);animation:1.4s cubic-bezier(.22,1,.36,1) both nvPickedPulse}@keyframes nvPickedPulse{0%{box-shadow:0 0 0 0 color-mix(in oklch, var(--nv-action) 55%, transparent)}35%{box-shadow:0 0 0 6px color-mix(in oklch, var(--nv-action) 28%, transparent)}to{box-shadow:0 0 0 0 color-mix(in oklch, var(--nv-action) 0%, transparent)}}@media (prefers-reduced-motion:reduce){.nv-search-result[data-pulse=true],.nv-feed-grid>li[data-pulse=true]{outline:2px solid var(--nv-action);outline-offset:2px;animation:none}}@media (prefers-reduced-motion:no-preference){.nv-feed-grid>li{animation:.4s cubic-bezier(.22,1,.36,1) both fadeUp;animation-delay:calc(min(var(--i,0), 8) * 45ms)}}@media (max-width:640px){.nv-feed-categories{margin-inline:calc(-1 * var(--nv-sp-md));padding-inline:var(--nv-sp-md);scroll-padding-inline:var(--nv-sp-md);padding-bottom:var(--nv-sp-2xs)}}.nv-feed-empty{color:var(--nv-text-muted);padding:var(--nv-sp-xl) 0;text-align:center}.nv-search-page{grid-template-columns:minmax(0,1fr) 1.2fr;min-height:calc(100vh - 200px);display:grid}.nv-search-list{padding:var(--nv-sp-lg);max-height:calc(100vh - 80px);overflow-y:auto}.nv-search-head{gap:var(--nv-sp-md);margin-bottom:var(--nv-sp-md);display:grid}.nv-search-count{margin:0;font-size:1.4rem}.nv-search-results{margin:0;padding:0;list-style:none}.nv-search-empty{color:var(--nv-text-muted);padding:var(--nv-sp-xl) 0}.nv-search-map{position:relative}@media (max-width:720px){.nv-search-page{flex-direction:column;display:flex}.nv-search-map{order:0;height:60vh}.nv-search-list{max-height:none;padding-top:var(--nv-sp-md);order:1}}.nv-detail{max-width:72rem;padding:var(--nv-sp-xl) var(--nv-sp-lg);margin:0 auto}.nv-detail-head h1{margin:var(--nv-sp-lg) 0 var(--nv-sp-md);font-size:clamp(1.6rem,3vw,2rem)}.nv-detail-body{gap:var(--nv-sp-xl);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}.nv-detail-main{min-width:0}.nv-detail-section{gap:var(--nv-sp-md);padding-top:var(--nv-sp-xl);scroll-margin-top:72px;display:grid}.nv-detail-section+.nv-detail-section{border-top:1px solid var(--nv-border);margin-top:var(--nv-sp-lg)}.nv-detail-section-heading{letter-spacing:-.01em;margin:0;font-size:1.4rem;font-weight:700}.nv-detail-host{gap:var(--nv-sp-xs);color:var(--nv-text-muted);align-items:center;display:inline-flex}.nv-detail-host-link{color:var(--nv-action);font-weight:600;text-decoration:none}.nv-detail-host-link:hover{text-decoration:underline}.nv-detail-host-link:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px;border-radius:2px}.nv-detail-prose{max-width:60ch}.nv-detail-facts{align-items:center;gap:var(--nv-sp-md);margin:var(--nv-sp-xs) 0 0;color:var(--nv-text-muted);flex-wrap:wrap;padding:0;font-size:.9rem;list-style:none;display:flex}.nv-detail-facts li:not(:first-child):before{content:"·";margin-right:var(--nv-sp-md);color:var(--nv-border)}.nv-included{margin-top:var(--nv-sp-md)}.nv-included-heading{margin:0 0 var(--nv-sp-xs);font-size:1.05rem}.nv-included ul{gap:var(--nv-sp-2xs);margin:0;padding-left:1.2rem;list-style:outside;display:grid}.nv-included li{color:var(--nv-text)}.nv-booking-spots{color:var(--nv-action-strong);margin:0;font-size:.85rem;font-weight:700}.nv-reviews{margin-top:var(--nv-sp-xl);border-top:1px solid var(--nv-border);padding-top:var(--nv-sp-xl)}.nv-reviews-head{justify-content:space-between;align-items:baseline;gap:var(--nv-sp-md);margin-bottom:var(--nv-sp-lg);flex-wrap:wrap;display:flex}.nv-reviews-head h2{margin:0}.nv-reviews-summary{align-items:baseline;gap:var(--nv-sp-xs);margin:0;display:flex}.nv-reviews-score{font-family:var(--nv-font-display), sans-serif;color:var(--nv-text);font-size:1.5rem;font-weight:700}.nv-reviews-count{color:var(--nv-text-muted);font-size:.9rem}.nv-reviews-list{gap:var(--nv-sp-xl);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0;padding:0;list-style:none;display:grid}.nv-review{gap:var(--nv-sp-sm);align-content:start;display:grid}.nv-review-head{align-items:center;gap:var(--nv-sp-sm);display:flex}.nv-review-author{margin:0;font-weight:700}.nv-review-date{color:var(--nv-text-muted);margin:0;font-size:.8rem}.nv-review-quote{color:var(--nv-text);max-width:48ch;margin:0;line-height:1.55}.nv-review-rating{color:var(--nv-action-strong);letter-spacing:.02em;white-space:nowrap;margin-left:auto;font-size:.8rem;font-weight:700}.nv-detail-where-heading{margin:0 0 var(--nv-sp-xs);font-size:1.1rem;font-weight:700}.nv-detail-where-nb{margin:var(--nv-sp-xs) 0 0}.nv-detail-nb-link{color:var(--nv-action);font-weight:600;text-decoration:none}.nv-detail-nb-link:hover{text-decoration:underline}.nv-detail-nb-link:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px;border-radius:var(--nv-r-sm)}.nv-detail-where-map{border-radius:var(--nv-r-md);height:280px;overflow:hidden}.nv-detail-go-heading{margin-top:var(--nv-sp-md);font-size:1.1rem}@media (max-width:720px){.nv-detail-body{grid-template-columns:1fr}}.nv-system-cta{padding:var(--nv-sp-2xl) 0;text-align:center;border-top:1px solid var(--nv-border)}.nv-system-cta h2{margin:0 0 var(--nv-sp-2xs);font-size:1.6rem}.nv-system-cta p{color:var(--nv-text-muted);margin:0 0 var(--nv-sp-lg)}.nv-system-cta-link{color:#fff;background:#c4541a;border-radius:999px;margin-top:12px;padding:12px 24px;font-weight:700;text-decoration:none;display:inline-block}.nv-system-cta-link:hover{background:#9e3f0b}.nv-host-empty{max-width:42rem;padding:var(--nv-sp-xl) var(--nv-sp-md);text-align:center;margin:0 auto}.nv-host-empty h1{margin:0 0 var(--nv-sp-md);font-size:clamp(2rem,5vw,3rem)}.nv-host-empty p{color:var(--nv-text-muted);max-width:34rem;margin:0 auto var(--nv-sp-md);line-height:1.6}.nv-host-empty .nv-btn{margin-top:var(--nv-sp-sm)}.nv-detail-back{margin:0 0 var(--nv-sp-md)}.nv-detail-back a{color:var(--nv-text-muted);font-weight:700;text-decoration:none}.nv-detail-back a:hover{color:var(--nv-action)}.nv-host{max-width:880px;padding:var(--nv-sp-lg);gap:var(--nv-sp-lg);margin:0 auto;display:grid}.nv-host-back{margin:0}.nv-host-back a{color:var(--nv-text-muted);text-decoration:none}.nv-host-back a:hover{color:var(--nv-text);text-decoration:underline}.nv-host-head{align-items:center;gap:var(--nv-sp-md);display:flex}.nv-host-headtext h1{margin:0 0 var(--nv-sp-xs);font-size:2rem}.nv-host-meta{color:var(--nv-text-muted);margin:0}.nv-host-bio{max-width:60ch;color:var(--nv-text);margin:0;line-height:1.6}.nv-host-rating{align-items:center;gap:var(--nv-sp-xs);margin:0;display:flex}.nv-host-experiences{gap:var(--nv-sp-md);display:grid}.nv-host-experiences h2{margin:0;font-size:1.4rem}.nv-host-experiences .nv-feed-grid{margin:0;padding:0;list-style:none}.nv-host-footer{margin:0}.nv-host-footer a{color:var(--nv-action);font-weight:700;text-decoration:none}.nv-host-footer a:hover{text-decoration:underline}.nv-host-footer a:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-neighborhood{max-width:960px;padding:var(--nv-sp-lg);gap:var(--nv-sp-lg);margin:0 auto;display:grid}.nv-neighborhood-back{margin:0}.nv-neighborhood-back a{color:var(--nv-text-muted);text-decoration:none}.nv-neighborhood-back a:hover{color:var(--nv-text);text-decoration:underline}.nv-neighborhood-back a:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-neighborhood-head{gap:var(--nv-sp-xs);display:grid}.nv-neighborhood-head h1{margin:0;font-size:2.2rem}.nv-neighborhood-borough{color:var(--nv-text-muted);margin:0}.nv-neighborhood-intro{max-width:64ch;color:var(--nv-text);margin:0;line-height:1.6}.nv-neighborhood-map{border-radius:var(--nv-r-lg);overflow:hidden}.nv-neighborhood-experiences{gap:var(--nv-sp-md);display:grid}.nv-neighborhood-experiences h2{margin:0;font-size:1.4rem}.nv-neighborhood-experiences .nv-feed-grid{margin:0;padding:0;list-style:none}.nv-neighborhood-hosts{gap:var(--nv-sp-md);display:grid}.nv-neighborhood-hosts h2{margin:0;font-size:1.4rem}.nv-neighborhood-hosts-row{gap:var(--nv-sp-md);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nv-neighborhood-host{align-items:center;gap:var(--nv-sp-sm);color:var(--nv-text);font-weight:600;text-decoration:none;display:inline-flex}.nv-neighborhood-host:hover span{text-decoration:underline}.nv-neighborhood-host:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px;border-radius:var(--nv-r-md)}.nv-impact-page{max-width:1040px;padding:var(--nv-sp-lg);gap:var(--nv-sp-2xl);margin:0 auto;display:grid}.nv-impact-intro{gap:var(--nv-sp-sm);max-width:70ch;display:grid}.nv-impact-intro h1{margin:0;font-size:2.2rem}.nv-impact-intro p{color:var(--nv-text);margin:0;line-height:1.6}.nv-impact-theme{gap:var(--nv-sp-md);display:grid}.nv-impact-theme-head{padding-bottom:var(--nv-sp-sm);border-bottom:1px solid var(--nv-border);margin:0;font-size:1.5rem}.nv-impact-count{color:var(--nv-text-muted);margin:0;font-weight:600}.nv-impact-statements{gap:var(--nv-sp-xs);margin:0;padding:0;list-style:none;display:grid}.nv-impact-method{gap:var(--nv-sp-sm);max-width:70ch;padding-top:var(--nv-sp-lg);border-top:1px solid var(--nv-border);display:grid}.nv-impact-method h2{margin:0;font-size:1.25rem}.nv-impact-method p{color:var(--nv-text-muted);margin:0;line-height:1.6}.nv-impact-back{margin:0}.nv-impact-back a{color:var(--nv-text-muted);font-weight:700;text-decoration:none}.nv-impact-back a:hover{color:var(--nv-action)}.nv-impact-cta{gap:var(--nv-sp-sm);flex-wrap:wrap;display:flex}.nv-system-context{color:var(--nv-text);margin:0 0 var(--nv-sp-sm);font-size:1.05rem;font-weight:700}.nv-slide-over-backdrop{z-index:50;background:#00000059;animation:.15s ease-out both nvSlideOverFade;position:fixed;inset:0}.nv-slide-over{z-index:51;background:var(--nv-surface);grid-template-rows:auto 1fr auto;width:min(420px,100vw);animation:.2s ease-out both nvSlideOverIn;display:grid;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000002e}.nv-slide-over-head{padding:var(--nv-sp-md) var(--nv-sp-lg);border-bottom:1px solid var(--nv-border);justify-content:space-between;align-items:center;display:flex}.nv-slide-over-head h2{margin:0;font-size:1.2rem}.nv-slide-over-close{border:1px solid var(--nv-border);background:var(--nv-surface);cursor:pointer;border-radius:50%;width:36px;height:36px;position:relative}.nv-slide-over-close:before{content:"";border-radius:50%;position:absolute;inset:-4px}.nv-slide-over-body{padding:var(--nv-sp-lg);gap:var(--nv-sp-lg);display:grid;overflow-y:auto}.nv-slide-over-group{border:0;margin:0;padding:0}.nv-slide-over-legend{margin-bottom:var(--nv-sp-sm);padding:0;font-weight:700}.nv-slide-over-pills{gap:var(--nv-sp-xs);flex-wrap:wrap;display:flex}.nv-slide-over-pill{min-height:44px;padding:0 var(--nv-sp-md);border:1px solid var(--nv-border);border-radius:var(--nv-r-pill);background:var(--nv-surface);cursor:pointer;font:inherit}.nv-slide-over-pill.is-active{background:var(--nv-action);color:var(--nv-text-on-action);border-color:var(--nv-action)}.nv-slide-over-pill:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}.nv-slide-over-foot{justify-content:space-between;align-items:center;gap:var(--nv-sp-md);padding:var(--nv-sp-md) var(--nv-sp-lg);border-top:1px solid var(--nv-border);display:flex}.nv-slide-over-clear{cursor:pointer;font:inherit;color:var(--nv-text-muted);background:0 0;border:none;text-decoration:underline}.nv-slide-over-apply{min-height:44px;padding:0 var(--nv-sp-lg);border-radius:var(--nv-r-pill);background:var(--nv-action);color:var(--nv-text-on-action);cursor:pointer;font:inherit;border:none;flex:1;font-weight:700}.nv-slide-over-apply:focus-visible{outline:2px solid var(--nv-focus);outline-offset:2px}@keyframes nvSlideOverFade{0%{opacity:0}to{opacity:1}}@keyframes nvSlideOverIn{0%{transform:translate(100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.nv-slide-over,.nv-slide-over-backdrop{animation:none}}@media (max-width:640px){.nv-slide-over{border-top-left-radius:var(--nv-r-lg);border-top-right-radius:var(--nv-r-lg);width:100%;max-height:min(640px,85vh);animation-name:nvSlideOverInBottom;top:auto;left:0;right:0}@keyframes nvSlideOverInBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.nv-booking-state{display:grid}.nv-booking-state>div{gap:var(--nv-sp-sm);grid-area:1/1;transition:opacity .18s,transform .18s;display:grid}.nv-booking-state .nv-booking-state-reserve{opacity:1;transform:scale(1)}.nv-booking-state .nv-booking-state-confirmed,.nv-booking-state.is-reserved .nv-booking-state-reserve{opacity:0;pointer-events:none;transform:scale(.97)}.nv-booking-state.is-reserved .nv-booking-state-confirmed{opacity:1;pointer-events:auto;transform:scale(1)}.nv-booking-confirm svg{vertical-align:-3px;color:var(--nv-action);margin-right:6px}@media (prefers-reduced-motion:reduce){.nv-booking-state>div{transition:none}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.project-section>h2{text-underline-offset:.18em;text-decoration-line:underline;text-decoration-thickness:.08em;animation:linear both sectionHeadingEmphasis;animation-timeline:view();animation-range:entry 8% cover 22%}}}@keyframes sectionHeadingEmphasis{0%{text-decoration-color:#0000}to{-webkit-text-decoration-color:color-mix(in srgb, var(--toc-accent,var(--foreground)) 42%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--toc-accent,var(--foreground)) 42%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--toc-accent,var(--foreground)) 42%, transparent);text-decoration-color:color-mix(in srgb, var(--toc-accent,var(--foreground)) 42%, transparent)}}@keyframes projectChapterTrace{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.project-chapter-motif-line:after{animation:linear both projectChapterTrace;animation-timeline:view();animation-range:entry 8% cover 34%}}}@media (prefers-reduced-motion:reduce),print{.project-chapter,.project-chapter-title,.project-evidence-heading,.project-chapter-motif-line:after{opacity:1!important;animation:none!important;transform:none!important}}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation:.24s cubic-bezier(.4,0,1,1) both vtLeave}::view-transition-new(root){animation:.42s cubic-bezier(.22,.61,.36,1) both vtEnter}.project-cover-image{view-transition-name:project-cover}.project-hero-title{view-transition-name:project-title}::view-transition-group(project-cover){animation-duration:.46s;animation-timing-function:cubic-bezier(.22,.61,.36,1)}::view-transition-group(project-title){animation-duration:.46s;animation-timing-function:cubic-bezier(.22,.61,.36,1)}}@keyframes vtLeave{to{opacity:0;transform:scale(.985)}}@keyframes vtEnter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.device-3d{margin-top:2.2rem}.device-3d-stage{touch-action:pan-y;cursor:grab;width:100%;height:clamp(440px,62vh,660px);position:relative}.device-3d-stage:active{cursor:grabbing}.device-3d-hint{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.05em;color:var(--muted);opacity:.7;pointer-events:none;margin:0;font-size:.72rem;position:absolute;bottom:.4rem;left:50%;transform:translate(-50%)}.device-3d-flat{justify-content:center;display:flex}.device-3d-flat-img{border-radius:var(--rounded-lg,1rem);width:auto;max-height:clamp(440px,62vh,660px)}@supports not (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.project-highlight,.play-entry,.about-detail,.home-page .about,.footer,.fg-features-heading,.fg-features-grid>*,.nv-build-layer,.nv-persona-grid>*{opacity:0;transition:opacity .48s cubic-bezier(.22,1,.36,1),transform .48s cubic-bezier(.22,1,.36,1);transform:translateY(1.2rem)}.project-highlight.sr-revealed,.play-entry.sr-revealed,.about-detail.sr-revealed,.home-page .about.sr-revealed,.footer.sr-revealed,.fg-features-heading.sr-revealed,.fg-features-grid>.sr-revealed,.nv-build-layer.sr-revealed,.nv-persona-grid>.sr-revealed{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){.project-page .project-section,.project-section>h2{opacity:1;clip-path:none;animation:none;transform:none}}@media print{.project-page .project-section,.project-section>h2{opacity:1!important;clip-path:none!important;animation:none!important;transform:none!important}}.nv-demo-embed{border:1px solid var(--line);background:var(--surface,#fafafa);border-radius:.7rem;margin-top:1.5rem;overflow:hidden}.nv-demo-embed-chrome{border-bottom:1px solid var(--line);background:var(--foreground);align-items:center;gap:.75rem;padding:.65rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.nv-demo-embed-chrome{background:color-mix(in srgb, var(--foreground) 4%, var(--background))}}.nv-demo-embed-dots{gap:6px;display:flex}.nv-demo-embed-dots span{background:var(--line);border-radius:50%;width:10px;height:10px}.nv-demo-embed-url{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:.78rem;overflow:hidden}.nv-demo-embed-viewport{aspect-ratio:16/10;position:relative;overflow:hidden}.nv-demo-embed-frame{border:none;width:100%;height:100%;display:block}.nv-demo-embed-fallback{width:100%;height:100%;position:relative}.nv-demo-embed-fallback img{object-fit:cover;object-position:top left;width:100%;height:100%}.nv-demo-embed-mobile-cta{background:var(--background);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.nv-demo-embed-mobile-cta{background:color-mix(in srgb, var(--background) 50%, transparent)}}.nv-demo-embed-mobile-cta{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--foreground);font-size:1.1rem;font-weight:600;text-decoration:none}.nv-demo-embed-skeleton{flex-direction:column;gap:1rem;padding:2.5rem 2rem;display:flex}.nv-demo-embed-skeleton-bar{background:var(--foreground);border-radius:.35rem;width:60%;height:1rem}@supports (color:color-mix(in lab, red, red)){.nv-demo-embed-skeleton-bar{background:color-mix(in srgb, var(--foreground) 8%, transparent)}}.nv-demo-embed-skeleton-bar{animation:1.6s ease-in-out infinite nvSkeletonPulse}.nv-demo-embed-skeleton-bar--short{width:35%}@keyframes nvSkeletonPulse{0%,to{opacity:.4}50%{opacity:1}}.nv-demo-embed-cta{border-top:1px solid var(--line);text-align:center;padding:.75rem 1rem}mark.case-highlight{background-color:var(--case-highlight-color,var(--foreground))}@supports (color:color-mix(in lab, red, red)){mark.case-highlight{background-color:color-mix(in srgb, var(--case-highlight-color,var(--foreground)) var(--case-highlight-opacity,14%), transparent)}}mark.case-highlight{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.35rem;padding:.05em .22em}main[data-project-slug=fresh-greens]{--case-highlight-color:var(--fg-accent);--case-highlight-opacity:14%}main[data-project-slug=navi]{--case-highlight-color:var(--nv-accent);--case-highlight-opacity:14%}.nv-page .project-chapter{--chapter-motif-accent:var(--nv-accent)}.nv-page .project-chapter-motif-line{background:var(--line)}.nv-page .project-chapter-motif-line:after{background:var(--chapter-motif-accent)}.nv-page .project-chapter-motif-point{border-color:var(--chapter-motif-accent);background:var(--background)}main[data-project-slug=understandingfafsa]{--case-highlight-color:var(--uf-accent-highlight,#f2b544);--case-highlight-opacity:22%}main[data-project-slug=tiktok]{--case-highlight-color:var(--tt-magenta,#fe2c55);--case-highlight-opacity:16%}main[data-highlight-anim-ready] mark.case-highlight{background-color:#0000;background-image:linear-gradient(90deg, var(--case-highlight-color,var(--foreground)), var(--case-highlight-color,var(--foreground)))}@supports (color:color-mix(in lab, red, red)){main[data-highlight-anim-ready] mark.case-highlight{background-image:linear-gradient(90deg, color-mix(in srgb, var(--case-highlight-color,var(--foreground)) var(--case-highlight-opacity,14%), transparent), color-mix(in srgb, var(--case-highlight-color,var(--foreground)) var(--case-highlight-opacity,14%), transparent))}}main[data-highlight-anim-ready] mark.case-highlight{background-position:0 0;background-repeat:no-repeat;background-size:0% 100%;transition:background-size .72s cubic-bezier(.16,1,.3,1)}main[data-highlight-anim-ready] mark.case-highlight.is-revealed{background-size:100% 100%}main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight{background-color:#0000;background-image:none;background-size:auto;transition:background-color .64s cubic-bezier(.22,1,.36,1)}main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight.is-revealed{background-color:var(--case-highlight-color)}@supports (color:color-mix(in lab, red, red)){main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight.is-revealed{background-color:color-mix(in srgb, var(--case-highlight-color) var(--case-highlight-opacity), transparent)}}main[data-project-slug=understandingfafsa][data-highlight-anim-ready] mark.case-highlight{transition:background-size .42s cubic-bezier(.42,0,.15,1)}main[data-project-slug=understandingfafsa] mark.case-highlight{background-color:#0000;background-image:linear-gradient(100deg, transparent 0, var(--case-highlight-color) .4em, var(--case-highlight-color) 55%, var(--case-highlight-color) calc(100% - .4em), transparent 100%)}@supports (color:color-mix(in lab, red, red)){main[data-project-slug=understandingfafsa] mark.case-highlight{background-image:linear-gradient(100deg, transparent 0, color-mix(in srgb, var(--case-highlight-color) 30%, transparent) .4em, color-mix(in srgb, var(--case-highlight-color) 22%, transparent) 55%, color-mix(in srgb, var(--case-highlight-color) 17%, transparent) calc(100% - .4em), transparent 100%)}}main[data-project-slug=understandingfafsa] mark.case-highlight{background-repeat:no-repeat}@media (prefers-reduced-motion:reduce){main[data-highlight-anim-ready] mark.case-highlight,main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight,main[data-project-slug=understandingfafsa][data-highlight-anim-ready] mark.case-highlight{background-size:100% 100%;transition:none}main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight{background-color:var(--case-highlight-color)}@supports (color:color-mix(in lab, red, red)){main[data-project-slug=fresh-greens][data-highlight-anim-ready] mark.case-highlight{background-color:color-mix(in srgb, var(--case-highlight-color) var(--case-highlight-opacity), transparent)}}}.case-lead-media{border:1px solid var(--line);border-radius:.7rem;margin:1.6rem 0 2rem;overflow:hidden}.case-lead-img,.case-lead-video{width:100%;height:auto;display:block}.case-lead-media--fresh-greens{--fg-cover-scale:1.03;aspect-ratio:16/9;background:#001301;margin-bottom:1.5rem}.case-lead-media--fresh-greens .case-lead-img{object-fit:cover;object-position:50% 50%;height:100%;transform:scale(var(--fg-cover-scale));transform-origin:50%}@media (max-width:640px){.case-lead-media--fresh-greens{--fg-cover-scale:1.24;aspect-ratio:2560/1862}}.case-video-frame{position:relative}.case-video-opt-in{border:1px solid var(--foreground);min-height:44px;padding:.65rem 1rem;position:absolute;bottom:1rem;left:50%;translate:-50%}@supports (color:color-mix(in lab, red, red)){.case-video-opt-in{border:1px solid color-mix(in srgb, var(--foreground) 18%, transparent)}}.case-video-opt-in{background:var(--background);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.case-video-opt-in{background:color-mix(in srgb, var(--background) 90%, transparent)}}.case-video-opt-in{color:var(--foreground);font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.82rem;font-weight:650}.case-video-opt-in:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.case-cut{gap:1.4rem;max-width:70ch;margin:0 0 2.2rem;display:grid}.case-cut-facts{gap:.6rem;margin:0;display:grid}.case-cut-row{grid-template-columns:120px 1fr;align-items:baseline;gap:1rem;display:grid}@media (max-width:560px){.case-cut-row{grid-template-columns:1fr;gap:.1rem}}.case-cut-row dt{letter-spacing:normal;color:var(--muted);margin:0;font-size:.84rem;font-weight:600}.case-cut-row dd{color:var(--foreground);margin:0;font-size:1rem;line-height:1.5}.case-cut-metric{font-variant-numeric:tabular-nums;font-weight:600}.count-up-fact{background-image:linear-gradient(0deg,currentColor 0 .22em,#0000 .22em)}@supports (color:color-mix(in lab, red, red)){.count-up-fact{background-image:linear-gradient(to top, color-mix(in srgb, currentColor 22%, transparent) 0 .22em, transparent .22em)}}.count-up-fact{-webkit-box-decoration-break:clone;box-decoration-break:clone;background-position:0 100%;background-repeat:no-repeat;background-size:100% 100%}@media (prefers-reduced-motion:no-preference){.count-up-fact{background-size:0 100%;transition:background-size .56s cubic-bezier(.22,1,.36,1)}.count-up-fact[data-count-up-emphasized=true]{background-size:100% 100%}}@media (prefers-reduced-motion:reduce){.count-up-fact{background-size:100% 100%;transition:none}}.case-cut-outcome dd{font-size:1.05rem}.case-cut-moves-label{letter-spacing:normal;color:var(--muted);margin:0 0 .5rem;font-size:.84rem;font-weight:600}.case-cut-moves ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.case-cut-moves li{color:var(--foreground);padding-left:1.7rem;font-size:1rem;line-height:1.55;position:relative}.case-cut-moves li:before{content:"→";color:var(--muted);position:absolute;left:0}.case-tier-divider{color:var(--muted);align-items:center;gap:1rem;margin:2.6rem 0 2rem;display:flex}.case-tier-divider:before,.case-tier-divider:after{content:"";background:var(--line);flex:1;height:1px}.case-tier-divider span{font-family:var(--font-geist-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:.72rem}.case-section-lead{color:var(--foreground);text-wrap:pretty;max-width:68ch;margin:0 0 1rem;font-size:1.08rem;font-weight:600;line-height:1.5}.case-pullquote{max-width:28ch;font-family:var(--font-quote), Georgia, serif;letter-spacing:-.01em;color:var(--foreground);text-wrap:balance;border:0;margin:2.9rem 0;padding:0;font-size:clamp(1.9rem,4.2vw,2.9rem);font-style:normal;font-weight:400;line-height:1.2;position:relative}.case-pullquote:before{content:"“";font-family:var(--font-quote), Georgia, serif;color:var(--foreground);font-size:2.7em;font-style:normal;line-height:.75;display:block}@supports (color:color-mix(in lab, red, red)){.case-pullquote:before{color:color-mix(in srgb, var(--foreground) 22%, transparent)}}.case-pullquote:before{margin:0 0 -.4rem -.02em}.project-section-body{max-width:68ch}.project-section-body p{text-wrap:pretty}.fg-synth{margin:1.75rem 0 0}.fg-synth-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;display:grid}.fg-synth-tab{border:1px solid var(--line);background:var(--surface);min-height:4.5rem;color:var(--foreground);text-align:left;cursor:pointer;border-radius:.65rem;align-items:center;gap:.65rem;padding:.75rem;transition:border-color .18s,background .18s,transform .18s;display:flex}.fg-synth-tab:hover{border-color:var(--line-hover)}.fg-synth-tab:active{transform:scale(.98)}.fg-synth-tab[aria-selected=true]{border-color:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-synth-tab[aria-selected=true]{border-color:color-mix(in srgb, var(--fg-accent) 68%, var(--line))}}.fg-synth-tab[aria-selected=true]{background:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-synth-tab[aria-selected=true]{background:color-mix(in srgb, var(--fg-accent) 8%, var(--surface))}}.fg-synth-tab-copy{gap:.15rem;display:grid}.fg-synth-glyph{opacity:.9;flex:none;width:1.6rem;height:1.6rem}.fg-synth-label{margin:0;font-size:.9rem;font-weight:600}.fg-synth-count{font-family:var(--font-mono), ui-monospace, monospace;color:var(--fg-accent);font-size:.78rem}.fg-synth-panel{border:1px solid var(--line);background:var(--surface);border-radius:.8rem;grid-template-columns:minmax(0,1.4fr) auto minmax(12rem,.8fr);align-items:center;gap:1.4rem;min-height:16rem;margin-top:.75rem;padding:clamp(1.1rem,2.8vw,2rem);display:grid}.fg-synth-panel-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 .65rem;font-size:.7rem}.fg-synth-insight{color:var(--muted);margin:0 0 .7rem;font-size:.95rem;line-height:1.5}.fg-synth-snippets{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.fg-synth-snippets li{color:var(--foreground);padding-left:.9rem;font-size:.88rem;line-height:1.4;position:relative}.fg-synth-snippets li:before{content:"“";color:var(--foreground);position:absolute;top:.05em;left:0}@supports (color:color-mix(in lab, red, red)){.fg-synth-snippets li:before{color:color-mix(in srgb, var(--foreground) 32%, transparent)}}.fg-synth-transform-arrow{color:var(--fg-accent);font-family:var(--font-mono), ui-monospace, monospace;font-size:1.2rem}.fg-synth-response p:last-child,.fg-synth-community-response{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.2rem,2.4vw,1.65rem);line-height:1.18}.fg-synth-community{border:1px solid var(--fg-accent);grid-template-columns:minmax(0,1.4fr) auto minmax(12rem,.8fr);align-items:center;gap:1.4rem;margin-top:.9rem;display:grid}@supports (color:color-mix(in lab, red, red)){.fg-synth-community{border:1px solid color-mix(in srgb, var(--fg-accent) 55%, var(--line))}}.fg-synth-community{background:var(--fg-accent);border-radius:.9rem;padding:1.1rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.fg-synth-community{background:color-mix(in srgb, var(--fg-accent) 7%, transparent)}}.fg-synth-community .fg-synth-insight{color:var(--foreground);margin-bottom:0;font-size:.96rem}@media (prefers-reduced-motion:no-preference){.fg-synth-panel{animation:.26s cubic-bezier(.22,1,.36,1) both fg-synth-panel-in}}@keyframes fg-synth-panel-in{0%{opacity:0;transform:translateY(7px)}}@media (max-width:720px){.fg-synth-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.fg-synth-panel,.fg-synth-community{grid-template-columns:1fr;gap:1rem}.fg-synth-transform-arrow{justify-self:center;transform:rotate(90deg)}.fg-synth-panel{min-height:0}}.fg-pulled-journey{margin:2.2rem 0 2.6rem}.fg-pulled-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-bottom:.75rem;display:grid}.fg-pulled-tab{border:1px solid var(--line);background:var(--surface);min-height:4.25rem;color:var(--foreground);text-align:left;cursor:pointer;border-radius:.65rem;gap:.25rem;padding:.75rem;transition:border-color .18s,background .18s,transform .18s;display:grid}.fg-pulled-tab:hover{border-color:var(--line-hover)}.fg-pulled-tab:active{transform:scale(.98)}.fg-pulled-tab[aria-selected=true]{border-color:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-pulled-tab[aria-selected=true]{border-color:color-mix(in srgb, var(--fg-accent) 68%, var(--line))}}.fg-pulled-tab[aria-selected=true]{background:var(--fg-accent)}@supports (color:color-mix(in lab, red, red)){.fg-pulled-tab[aria-selected=true]{background:color-mix(in srgb, var(--fg-accent) 8%, var(--surface))}}.fg-pulled-tab-number,.fg-pulled-state,.fg-pulled-progress{font-family:var(--font-mono), ui-monospace, monospace}.fg-pulled-tab-number{color:var(--fg-accent);font-size:.7rem}.fg-pulled-panel{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;grid-template-columns:minmax(15rem,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem);min-height:38rem;padding:clamp(1.25rem,3vw,2.5rem);display:grid}.fg-pulled-phone{width:min(100%,18rem);margin-inline:auto}.fg-pulled-phone .fg-phone{width:100%}.fg-pulled-copy{align-content:center;display:grid}.fg-pulled-state{color:var(--fg-accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .9rem;font-size:.72rem}.fg-pulled-decision{letter-spacing:-.035em;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(1.7rem,4vw,2.75rem);line-height:1.05}.fg-pulled-detail{max-width:34ch;color:var(--muted);text-wrap:pretty;margin:1.2rem 0 0;line-height:1.55}.fg-pulled-progress{color:var(--muted);margin:2rem 0 0;font-size:.72rem}@media (prefers-reduced-motion:no-preference){.fg-pulled-panel{animation:.3s cubic-bezier(.22,1,.36,1) both fg-pulled-panel-in}}@keyframes fg-pulled-panel-in{0%{opacity:0;transform:translate(8px)}}@media (max-width:720px){.fg-pulled-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.fg-pulled-panel{grid-template-columns:1fr;gap:1.5rem;min-height:0}.fg-pulled-phone{width:min(66vw,17rem)}.fg-pulled-decision{max-width:22ch}}.fg-lofi{margin:2.2rem 0 2.6rem}.fg-lofi img{border:1px solid var(--line);border-radius:.9rem}.fg-token-figure{margin:2.2rem 0 0}.fg-tokens{gap:2rem;margin:0 0 .9rem;display:grid}.fg-tokens-lane-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 1rem;font-size:.72rem}.fg-swatch-groups{gap:1.5rem;display:grid}.fg-swatch-group-label{color:var(--foreground);margin:0 0 .75rem;font-size:.9rem;font-weight:500}.fg-swatches{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.fg-swatch{align-content:start;gap:.2rem;display:grid}.fg-swatch-chip{height:3.25rem;box-shadow:inset 0 0 0 1px var(--foreground);border-radius:.5rem;margin-bottom:.35rem}@supports (color:color-mix(in lab, red, red)){.fg-swatch-chip{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--foreground) 14%, transparent)}}.fg-swatch-name{font-family:var(--font-mono), ui-monospace, monospace;color:var(--foreground);font-size:.8rem}.fg-swatch-hex{font-family:var(--font-mono), ui-monospace, monospace;color:var(--muted);font-size:.72rem}.fg-swatch-role{color:var(--muted);text-wrap:pretty;font-size:.8rem;line-height:1.35}.fg-tokens-spacing{gap:.55rem;max-width:30rem;margin:0;padding:0;list-style:none;display:grid}.fg-token-space{font-family:var(--font-mono), ui-monospace, monospace;grid-template-columns:2.4rem 1fr 2.4rem;align-items:center;gap:.8rem;font-size:.8rem;display:grid}.fg-token-space-name{color:var(--muted)}.fg-token-space-bar{background:var(--fg-accent);height:.8rem}.fg-token-space-px{color:var(--muted);text-align:right}.fg-tokens[data-reveal=pending] .fg-swatch{opacity:0;transform:translateY(8px)}.fg-tokens[data-reveal=pending] .fg-token-space-bar{transform:scaleX(0)}.fg-tokens[data-reveal] .fg-swatch{transition:opacity .5s ease-out,transform .5s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i,0) * 40ms)}.fg-tokens[data-reveal=in] .fg-swatch{opacity:1;transform:none}.fg-tokens[data-reveal] .fg-token-space-bar{transform-origin:0;transition:transform .9s cubic-bezier(.22,1,.36,1);transition-delay:calc(.4s + var(--i,0) * .14s)}.fg-tokens[data-reveal=in] .fg-token-space-bar{transform:scaleX(1)}@media (max-width:560px){.fg-swatches{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}}.fg-pivot{margin:2.2rem 0 0}.fg-pivot-steps{gap:1.4rem;margin:0;padding:0;list-style:none;display:grid}.fg-pivot-step{text-align:center;justify-items:center;gap:.9rem;display:grid}.fg-pivot-step:not(:last-child):after{content:"↓";color:var(--fg-accent);opacity:.7;margin-top:.5rem;font-size:1.15rem;line-height:1}.fg-pivot-step-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem}.fg-pivot-phone{width:100%;max-width:16.5rem;margin-inline:auto}.fg-pivot-caption{max-width:46ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:.88rem;line-height:1.5}.fg-en-route-video{max-width:320px;margin:2.2rem auto 2.6rem}.fg-en-route-video .case-lead-video{border:1px solid var(--line);background:var(--surface);border-radius:.9rem}.project-evidence-heading#fg-pulled-over{letter-spacing:-.028em;font-size:clamp(2rem,4vw,3.2rem);line-height:1.08}@media (min-width:820px){.fg-pivot-steps{grid-template-columns:1fr 1fr;align-items:start;gap:3rem}.fg-pivot-step:not(:last-child):after{content:none}}.fg-pivot[data-reveal=pending] .fg-pivot-step{opacity:0;transform:translateY(10px)}.fg-pivot[data-reveal] .fg-pivot-step{transition:opacity .55s ease-out,transform .55s cubic-bezier(.22,1,.36,1)}.fg-pivot[data-reveal] .fg-pivot-step:first-child{transition-delay:50ms}.fg-pivot[data-reveal] .fg-pivot-step:nth-child(2){transition-delay:.35s}.fg-pivot[data-reveal=in] .fg-pivot-step{opacity:1;transform:none}.fg-color-pair{gap:1.8rem;max-width:min(52rem,100%);margin:2.2rem 0 2.6rem;display:grid}@media (min-width:820px){.fg-color-pair{grid-template-columns:1.35fr 1fr;align-items:center;gap:2.4rem}.fg-color-pair>.fg-safety-visual{max-width:none;margin:0}}.fg-moderation{margin:2.2rem 0 2.6rem}.fg-mod-flow{border:1px solid var(--line);border-radius:.7rem;align-items:stretch;gap:.7rem;padding:1.1rem 1.2rem;display:flex}.fg-mod-stage{flex:7rem;align-content:start;gap:.55rem;display:grid}.fg-mod-stage--panel{flex:1.5 11rem}.fg-mod-stage-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--fg-accent);margin:0;font-size:.68rem}.fg-mod-stage-text{color:var(--foreground);margin:0;font-size:.9rem;line-height:1.4}.fg-mod-checks{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.fg-mod-checks li{color:var(--muted);padding-left:.95rem;font-size:.85rem;line-height:1.35;position:relative}.fg-mod-checks li:before{content:"";background:var(--fg-accent);border-radius:50%;width:.36rem;height:.36rem;position:absolute;top:.5em;left:0}.fg-mod-arrow{color:var(--fg-accent);opacity:.65;align-self:center;font-size:1rem}@media (max-width:620px){.fg-mod-flow{flex-direction:column}.fg-mod-arrow{align-self:center;transform:rotate(90deg)}}.fg-page{--fg-toc-night:#5559a8}:root[data-theme=light] .fg-page{--fg-toc-night:#1b1e4b}.fg-page .project-toc-item:first-child,.fg-page .project-toc-item:nth-child(2){--seg-color:#f09456}.fg-page .project-toc-item:nth-child(3){--seg-color:#fdd350}.fg-page .project-toc-item:nth-child(4){--seg-color:#c74757}.fg-page .project-toc-item:nth-child(5),.fg-page .project-toc-item:nth-child(6){--seg-color:var(--fg-toc-night)}.fg-page .project-chapter[data-chapter-index="1"],.fg-page .project-chapter[data-chapter-index="2"]{--chapter-motif-accent:#f09456}.fg-page .project-chapter[data-chapter-index="3"]{--chapter-motif-accent:#fdd350}.fg-page .project-chapter[data-chapter-index="4"]{--chapter-motif-accent:#c74757}.fg-page .project-chapter[data-chapter-index="5"],.fg-page .project-chapter[data-chapter-index="6"]{--chapter-motif-accent:var(--fg-toc-night)}.fg-page .project-toc-rail:after,.fg-page .project-toc-link--active .project-toc-dot,.fg-page .project-toc-link--active{background:var(--seg-color,var(--toc-fill))}@supports (color:color-mix(in lab, red, red)){.fg-page .project-toc-link--active{background:color-mix(in srgb, var(--seg-color,var(--toc-fill)) 10%, transparent)}}.fg-page .project-toc-progress{background:linear-gradient(to right, #f09456 0% 16.667%, #f09456 16.667% 33.333%, #fdd350 33.333% 50%, #c74757 50% 66.667%, var(--fg-toc-night) 66.667% 83.333%, var(--fg-toc-night) 83.333% 100%);width:100%;-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));transform:none}.tt-page .project-toc-item:nth-child(odd){--seg-color:var(--tt-cyan)}.tt-page .project-toc-item:nth-child(2n){--seg-color:var(--tt-magenta)}.tt-page .project-toc-rail:after,.tt-page .project-toc-link--active .project-toc-dot,.tt-page .project-toc-item--read .project-toc-dot{background:var(--seg-color,var(--toc-fill))}.tt-page .project-toc-progress{background:linear-gradient(to right, var(--tt-cyan) 0% 20%, var(--tt-magenta) 20% 40%, var(--tt-cyan) 40% 60%, var(--tt-magenta) 60% 80%, var(--tt-cyan) 80% 100%);-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));transform:none}.nv-page .project-toc-rail{border-radius:999px}.nv-page .project-toc-rail:after{background:var(--nv-accent)}.nv-page .project-toc-dot{border:1px solid var(--nv-accent);background:var(--background);width:7px;height:7px}.nv-page .project-toc-link--active .project-toc-dot,.nv-page .project-toc-item--read .project-toc-dot,.nv-page .project-toc-progress{background:var(--nv-accent)}.uf-page .project-toc-item:first-child{--seg-color:var(--uf-accent-warm)}.uf-page .project-toc-item:nth-child(2){--seg-color:var(--uf-accent-highlight)}.uf-page .project-toc-item:nth-child(3){--seg-color:var(--uf-accent-cool-text)}.uf-page .project-toc-item:nth-child(4){--seg-color:var(--uf-accent-warm)}.uf-page .project-toc-item:nth-child(5){--seg-color:var(--uf-accent-highlight)}.uf-page .project-chapter[data-chapter-index="1"]{--chapter-motif-accent:var(--uf-accent-warm)}.uf-page .project-chapter[data-chapter-index="2"]{--chapter-motif-accent:var(--uf-accent-highlight)}.uf-page .project-chapter[data-chapter-index="3"]{--chapter-motif-accent:var(--uf-accent-cool-text)}.uf-page .project-chapter[data-chapter-index="4"]{--chapter-motif-accent:var(--uf-accent-warm)}.uf-page .project-chapter[data-chapter-index="5"]{--chapter-motif-accent:var(--uf-accent-highlight)}.uf-page .project-chapter-motif-point{border-radius:.12rem}.uf-page .project-toc-rail:after,.uf-page .project-toc-link--active .project-toc-dot,.uf-page .project-toc-item--read .project-toc-dot{background:var(--seg-color,var(--toc-fill))}.uf-page .project-toc-progress{background:linear-gradient(to right, var(--uf-accent-warm) 0% 20%, var(--uf-accent-highlight) 20% 40%, var(--uf-accent-cool-text) 40% 60%, var(--uf-accent-warm) 60% 80%, var(--uf-accent-highlight) 80% 100%);-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));-webkit-mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));mask:linear-gradient(to right, #000 0 calc(var(--toc-progress,0) * 100%), transparent calc(var(--toc-progress,0) * 100%));transform:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
