.dialog{width:100%;max-width:none;height:100%;max-height:none;color:inherit;opacity:0;transition:opacity .2s cubic-bezier(.32, .72, 0, 1), display .2s allow-discrete, overlay .2s allow-discrete;border:0;margin:0;padding:0}.dialog[open]{opacity:1}@starting-style{.dialog[open]{opacity:0}}.dialog::backdrop{background:0 0}body:has(>.dialog[open]){overflow:hidden}.nav-header{--hp:1;--scrim:1;--dock:1;z-index:50;animation:.6s .1s both nav-fade-in;position:sticky;top:0}.nav-header[data-variant=home]{--hp:0;--scrim:0;--dock:0;animation:1s 1.2s both nav-fade-in;position:fixed;inset:0 0 auto}.nav-header:before{content:"";pointer-events:none;opacity:var(--scrim);background:linear-gradient(180deg, var(--color-bg) 55%, transparent);position:absolute;inset:0 0 -40px}.nav-bar{height:var(--header-h);padding-inline:var(--gutter);font-family:var(--font-text);letter-spacing:.01em;color:var(--color-warm);align-items:center;gap:16px;font-size:15px;font-stretch:108%;line-height:1;display:flex;position:relative}.nav-brand{white-space:nowrap;font-weight:600}.nav-header[data-mark=off] .nav-brand{pointer-events:none}.nav-brand-letter{--t:clamp(0, (var(--hp) - .1 - var(--i) * .011) / .1, 1);--e:calc(1 - (1 - var(--t)) * (1 - var(--t)));opacity:var(--t);transform:translate3d(0, calc((1 - var(--e)) * .85em), 0) rotate(calc((1 - var(--e)) * -9deg));filter:blur(calc((1 - var(--e)) * 3px));margin-bottom:-.2em;padding-bottom:.2em;display:inline-block}.nav-brand:focus-visible .nav-brand-letter,.nav-menu .nav-brand-letter{--t:1}.nav-links{gap:34px;margin-left:auto;display:flex}.nav-links a,.nav-menu-trigger{color:var(--color-warm);padding-block:8px;font-weight:450;position:relative}@supports (color:color-mix(in lab, red, red)){.nav-links a,.nav-menu-trigger{color:color-mix(in oklab, var(--color-warm) 72%, transparent)}}.nav-links a,.nav-menu-trigger{transition:color .2s}.nav-links a:hover,.nav-links a[aria-current],.nav-menu-trigger:hover{color:var(--color-warm)}.nav-links a:after{content:"";opacity:0;transform-origin:0;background:currentColor;height:1px;transition:scale .35s cubic-bezier(.2,.8,.2,1),opacity .35s;position:absolute;inset:auto 0 calc(50% - .5lh - 8px);scale:0 1}.nav-links a[aria-current]:after{opacity:.55;scale:1}@media (pointer:coarse){.nav-links a{padding-block:calc(22px - .5lh)}.nav-menu-trigger{min-width:44px;min-height:44px}}.nav-menu-slot{margin-left:auto;display:none}.nav-header :focus-visible,.nav-menu :focus-visible{outline:2px solid var(--color-warm);outline-offset:5px;border-radius:3px}.nav-light{width:6px;height:6px;opacity:var(--dock);border-radius:50%}.nav-bar>.nav-light,.nav-brand>.nav-light{position:absolute;top:calc(50% - 3px)}.nav-bar .nav-port{left:calc(var(--gutter) / 2 - 3px)}.nav-bar .nav-starboard{right:calc(var(--gutter) / 2 - 3px)}.nav-port{background:radial-gradient(circle,#ffd6d0 0 25%,#ff1a1a 70%);box-shadow:0 0 6px 1px #ff1a1abf,0 0 18px 4px #ff1a1a38}.nav-starboard{background:radial-gradient(circle,#d6fff0 0 25%,#00ffa0 70%);box-shadow:0 0 6px 1px #00ffa0a6,0 0 18px 4px #00ffa02e}.nav-light-flight{opacity:0;pointer-events:none;will-change:transform, opacity;position:absolute;top:-3px;left:-3px}.nav-menu-trigger{font:inherit;cursor:pointer;font-weight:450}.nav-menu{--gutter:26px;--dock:1}.nav-menu .nav-menu-trigger{margin-left:auto}@media (width<=700px){.nav-bar{gap:14px}.nav-links{display:none}.nav-menu-slot{display:block}}@media (prefers-reduced-motion:reduce){.nav-brand-letter{filter:none;transform:none}}@keyframes nav-fade-in{0%{opacity:0}}.footer{--dawn:0;--footer-sky:72svh;--footer-sun:34%;z-index:0;position:relative;overflow-x:clip}.footer[data-compact]{--footer-sky:34svh}.footer-sky{inset:calc(-1 * var(--footer-sky)) 0 0;pointer-events:none;position:absolute;overflow:hidden}.footer-glow{height:calc(var(--footer-sky) + 40px);opacity:var(--dawn);transform:scaleY(calc(.55 + var(--dawn) * .45));transform-origin:50% 100%;background:radial-gradient(ellipse var(--footer-sun) 5% at 72% calc(100% - 40px), #ffe4b86b, #ffe4b800 75%), linear-gradient(0deg, #7e76b057 40px, #3e46843d 22%, #1e264e1f 55%, transparent 90%);position:absolute;inset:0 0 auto}.footer-limb,.footer-earth{top:var(--footer-sky);border-radius:50%;width:340%;height:max(60vw,480px);position:absolute;left:-120%}.footer-limb{opacity:var(--dawn);background:linear-gradient(90deg,#bebae84d 36%,#ffeed2f2 56.4%,#bebae84d 65%);translate:0 -1.5px}.footer-earth{background:#0c0e12}.footer-ground{padding:44px var(--gutter) 48px;font-family:var(--font-text);font-size:var(--text-body-sm);letter-spacing:.01em;color:var(--color-warm-muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px 48px;font-stretch:108%;display:flex;position:relative}.footer[data-plain] .footer-ground{border-top:1px solid var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.footer[data-plain] .footer-ground{border-top:1px solid color-mix(in oklab, var(--color-warm) 10%, transparent)}}.footer-links{flex-wrap:wrap;gap:8px 28px;display:flex}.footer-link{transition:color .3s}.footer-link:hover,.footer-link:focus-visible{color:var(--color-warm)}@media (width<=700px){.footer{--footer-sun:300px}.footer-ground{text-align:center;flex-direction:column-reverse;align-items:stretch;padding-block:36px 40px}.footer-links{justify-content:space-between;gap:4px 12px}}@media (prefers-reduced-motion:reduce){.footer-glow{transform:none}}.status{z-index:1;min-height:calc(100svh - var(--header-h) - 116px);padding:72px var(--gutter);font-family:var(--font-text);flex-direction:column;justify-content:center;font-stretch:108%;display:flex;position:relative}.status-heading{max-width:16ch;font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-warm);text-wrap:balance;font-size:clamp(34px,3.6vw,52px);font-weight:600;font-stretch:110%;line-height:1.02}.status-path{overflow-wrap:anywhere;font-family:var(--font-data);color:var(--color-warm-muted);margin-top:18px;font-size:13px;line-height:1.5}.status-body{max-width:44ch;font-size:var(--text-body-lg);letter-spacing:.01em;color:var(--color-warm-muted);text-wrap:pretty;margin-top:18px;line-height:1.6}.status-actions{font-size:var(--text-body-lg);flex-wrap:wrap;gap:8px 28px;margin-top:28px;display:flex}.status-action{color:var(--color-warm);cursor:pointer;background:linear-gradient(currentColor,currentColor) 0 calc(100% + 2px)/0 1px no-repeat content-box border-box;padding-block:4px;transition:background-size .3s}@media (pointer:coarse){.status-action{padding-block:calc(22px - .5lh)}}.status-action:hover,.status-action:focus-visible{background-size:100% 1px}.status-standalone{flex-direction:column;min-height:100svh;display:flex}.status-standalone>main{flex-direction:column;flex:1;display:flex}.status-standalone .status{flex:1;min-height:0}@media (width<=700px){.status{min-height:calc(100svh - var(--header-h) - 136px)}}.hero-stage{--p:0;--night:clamp(0, (var(--p) - .2) / .5, 1);--night-s:calc(var(--night) * var(--night) * (3 - 2 * var(--night)));--blue:clamp(0, var(--night) / .4, 1);background:var(--color-bg);height:330svh;position:relative}.hero-pin{background:var(--color-bg);height:100svh;position:sticky;top:0;overflow:hidden}.hero-pin:after{content:"";z-index:1;pointer-events:none;opacity:var(--night-s);background:linear-gradient(180deg, transparent, var(--color-bg) 85%);position:absolute;inset:55% 0 0}.hero-sky{translate:0 calc(var(--p) * 30svh);background:radial-gradient(34% 9% at 24%,#ffe2aaf2,#ffaa6e00 70%),radial-gradient(80% 30% at 30%,#ff965a73,#ff965a00 70%),linear-gradient(#121a33 0%,#252a55 18%,#57466f 34%,#b8706a 44%,#f2a868 49%,#ffd08a 50.5%,#8a5260 52.5%,#3a2a44 60%,#1b1624 76%,#111317 100%);animation:1.8s cubic-bezier(.2,.7,.2,1) both hero-sky-in;position:absolute;inset:-40svh 0}.hero-sky:before,.hero-sky:after{content:"";position:absolute;inset:0}.hero-sky:before{opacity:calc(var(--blue) * .94);background:linear-gradient(#0e1430 0%,#19204c 20%,#2b3369 36%,#454a84 45%,#6b5f90 49.5%,#3a3a62 52.5%,#20233d 64%,#131521 100%)}.hero-sky:after{opacity:var(--night-s);background:linear-gradient(180deg, #06080d 0%, #0b0e15 45%, var(--color-bg) 100%)}.hero-stars{opacity:calc(clamp(0, (var(--p) - .4) / .3, 1) * .9);background-image:radial-gradient(1px 1px at 22px 34px,#fff,#0000),radial-gradient(1px 1px at 140px 90px,#ffffffb3,#0000),radial-gradient(1.5px 1.5px at 60px 170px,#dce6ffe6,#0000),radial-gradient(1px 1px at 300px 210px,#ffffff8c,#0000),radial-gradient(1px 1px at 410px 40px,#ffffff73,#0000);background-size:290px 250px,370px 330px,530px 410px,610px 470px,730px 290px;position:absolute;inset:0 0 30%;-webkit-mask-image:linear-gradient(#000 30%,#0000);mask-image:linear-gradient(#000 30%,#0000)}.hero-deck{translate:0 calc(var(--p) * 60svh);opacity:calc(1 - var(--night-s) * .9);position:absolute;inset:52% -20% -20%;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 12% 70%,#0000);mask-image:linear-gradient(#0000 0%,#000 12% 70%,#0000)}.hero-deck:after{content:"";opacity:clamp(0, 1 - var(--night) * 2.5, 1);background:linear-gradient(#ffaa7859,#50325000 22%);position:absolute;inset:0}.hero-deck-layer{left:calc(-1 * var(--tile));width:calc(100% + var(--tile));background-image:url(/assets/cloud-deck-pJzAYBLw.webp);background-size:var(--tile) 100%;animation:hero-deck-stream var(--pace) linear infinite;will-change:transform;background-repeat:repeat-x;position:absolute}.hero-pin[data-deck-paused=true] .hero-deck-layer{animation-play-state:paused}@supports (background-image:image-set(url("") type("image/avif"))){.hero-deck-layer{background-image:-webkit-image-set(url(/assets/cloud-deck-C-XquuqB.avif) 1x type("image/avif"),url(/assets/cloud-deck-pJzAYBLw.webp) 1x type("image/webp"));background-image:image-set("/assets/cloud-deck-C-XquuqB.avif" 1x type("image/avif"),"/assets/cloud-deck-pJzAYBLw.webp" 1x type("image/webp"))}}.hero-deck-far{height:62%;top:0;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.hero-deck-near{top:30%;bottom:0;-webkit-mask-image:linear-gradient(#0000,#000 35%);mask-image:linear-gradient(#0000,#000 35%)}.hero-canvas{opacity:0;width:100%;height:100%;transition:opacity 1.2s;display:block;position:absolute;inset:0}[data-scene=ready] .hero-canvas{opacity:1}.hero-leader,.hero-tag{opacity:0}[data-scene=ready] .hero-leader,[data-scene=ready] .hero-tag[data-placed]{opacity:calc(1 - clamp(0, (var(--p) - .04) / .1, 1));animation:.8s .4s both hero-fade-in}.hero-leader{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-leader line{stroke:#ffe4cd8c;stroke-width:1px}.hero-tag{z-index:2;width:max-content;max-width:230px;font-family:var(--font-data);color:#ffeede;will-change:transform;background:linear-gradient(90deg,#1e12206b,#1e122000);border-left:1px solid #ffe4cd8c;gap:3px;padding:10px 12px 11px;display:grid;position:absolute;top:0;left:0}.hero-tag-type{letter-spacing:.01em;font-size:13px;font-weight:700}.hero-tag-note{color:#ffeedeb8;font-size:12px;line-height:1.35}.hero-copy{inset:auto var(--gutter) 44px;z-index:2;color:var(--color-warm);pointer-events:none;flex-direction:column-reverse;display:flex;position:absolute}.hero-descriptors{font-family:var(--font-text);letter-spacing:.01em;color:#ffecded6;gap:2px;margin:0 0 clamp(14px,2.2vw,28px) .2em;font-size:clamp(17px,1.45vw,22px);font-weight:500;font-stretch:108%;line-height:1.3;display:grid}.hero-descriptors li{--t:clamp(0, (var(--p) - .01) / .1, 1);opacity:calc(1 - var(--t));translate:0 calc(var(--t) * -18px);animation:hero-rise 1s calc(1.05s + var(--i) * 80ms) cubic-bezier(.2, .8, .2, 1) both}.hero-name{font-family:var(--font-display);letter-spacing:-.035em;white-space:nowrap;margin:0;font-size:clamp(52px,10.2vw,184px);font-weight:700;font-stretch:108%;line-height:.84}.hero-name-letter{--t:clamp(0, (var(--p) - .015 - var(--i) * .011) / .2, 1);transform:translate3d(0, calc(var(--t) * var(--t) * -70svh), 0) rotate(calc(var(--t) * -9deg));opacity:clamp(0, 1 - var(--t) * 1.8, 1);filter:blur(calc(var(--t) * 6px));animation:hero-letter-in 1.1s calc(.55s + var(--i) * 45ms) cubic-bezier(.2, .9, .2, 1) both;margin-bottom:-.2em;padding-bottom:.2em;display:inline-block}@media (width<=700px){.hero-copy{bottom:32px}.hero-name{font-size:min(calc((100vw - 2 * var(--gutter)) / 4.42), 13svh)}.hero-name-space{display:block}}@media (prefers-reduced-motion:reduce){.hero-sky,.hero-deck{translate:none}.hero-name-letter{filter:none;transform:none}.hero-descriptors li{translate:none}}@keyframes hero-sky-in{0%{opacity:0;filter:brightness(.4)}}@keyframes hero-fade-in{0%{opacity:0}}@keyframes hero-rise{0%{opacity:0;translate:0 14px}}@keyframes hero-letter-in{0%{opacity:0;filter:blur(8px);translate:0 .5em}}@keyframes hero-deck-stream{to{transform:translateX(var(--tile))}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--experience-width:110%;--experience-nudge:0%;--projects-stretch:110%;--project-stretch:110%}*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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-duration:initial}}}@property --experience-width{syntax:"<percentage>";inherits:true;initial-value:110%}@property --experience-nudge{syntax:"<percentage>";inherits:true;initial-value:0%}.experience-row{font-family:var(--font-text);font-size:var(--text-body-lg);grid-template-columns:minmax(0,1fr) min(54ch,55%);column-gap:48px;padding-block:clamp(36px,4.4vw,64px);font-stretch:108%;display:grid}.experience-row+.experience-row{border-top:1px solid var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.experience-row+.experience-row{border-top:1px solid color-mix(in oklab, var(--color-warm) 12%, transparent)}}.experience-lead{container-type:inline-size}.experience-name{font-family:var(--font-display);font-size:clamp(24px,8cqi,56px);font-weight:650;font-stretch:calc(var(--experience-width) + var(--experience-nudge));letter-spacing:-.03em;white-space:nowrap;color:var(--color-warm);line-height:1;transition:--experience-nudge .5s cubic-bezier(.2,.7,.2,1)}@media (hover:hover){.experience-row:hover{--experience-nudge:4%}}@keyframes experience-widen{0%{--experience-width:76%}to{--experience-width:110%}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.experience-name{animation:linear both experience-widen;animation-timeline:view();animation-range:entry cover 45%}}}@media (width<=899px){.experience-row{grid-template-columns:minmax(0,54ch);row-gap:24px}}@property --projects-stretch{syntax:"<percentage>";inherits:true;initial-value:110%}.projects-list{gap:2px;display:grid}.projects-link{color:var(--color-warm);grid-template-columns:minmax(0,1fr) min(50%,1200px);align-items:center;text-decoration:none;display:grid}.projects-link:focus-visible{--projects-stretch:114%;outline:2px solid var(--color-warm);outline-offset:-4px;border-radius:0}.projects-media{aspect-ratio:16/9;background:var(--tone);grid-area:1/2;position:relative;overflow:clip}@supports (color:color-mix(in lab, red, red)){.projects-media{background:color-mix(in oklch, var(--tone) 10%, var(--color-bg))}}.projects-media{--graded-saturation:.8;-webkit-mask-image:linear-gradient(90deg,#0000,#000 40%);mask-image:linear-gradient(90deg,#0000,#000 40%)}.projects-shades{transition:opacity .6s;position:absolute;inset:0}.projects-shade{background:radial-gradient(120% 90% at 60% 50%, transparent 40%, var(--color-bg)), var(--color-bg);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.projects-shade{background:radial-gradient(120% 90% at 60% 50%, transparent 40%, color-mix(in oklab, var(--color-bg) 60%, transparent)), color-mix(in oklab, var(--color-bg) 55%, transparent)}}.projects-shade{opacity:.75}@keyframes projects-lights-on{0%,to{opacity:1}42%,58%{opacity:.45}}@supports (animation-timeline:view()){.projects-shade{animation:linear both projects-lights-on;animation-timeline:view()}@media (prefers-reduced-motion:reduce){.projects-shade{animation-duration:auto!important}}}.projects-copy{width:min(46%,640px);padding:0 0 0 var(--gutter);font-family:var(--font-text);grid-area:1/1/auto/-1;font-stretch:108%;position:relative}.projects-category{font-family:var(--font-data);color:var(--color-warm);font-size:13px}@supports (color:color-mix(in lab, red, red)){.projects-category{color:color-mix(in oklab, var(--color-warm) 60%, transparent)}}.projects-title{font-family:var(--font-display);font-size:clamp(30px,4vw,64px);font-weight:650;font-stretch:var(--projects-stretch);letter-spacing:-.03em;text-wrap:balance;margin-top:10px;line-height:1;transition:--projects-stretch .5s cubic-bezier(.2,.7,.2,1)}.projects-summary{max-width:40ch;font-size:var(--text-body-sm);letter-spacing:.01em;color:var(--color-warm-muted);margin-top:16px;line-height:1.55}.projects-more{padding:0 var(--gutter);text-align:center;margin-top:clamp(80px,10vw,144px)}.projects-more-link{font-family:var(--font-display);font-size:clamp(22px,1.4vw + 12px,30px);font-weight:600;font-stretch:var(--projects-stretch);letter-spacing:-.015em;color:var(--color-warm-muted);align-items:flex-start;gap:.45em;line-height:1.1;text-decoration:none;transition:--projects-stretch .5s cubic-bezier(.2,.7,.2,1),color .3s;display:inline-flex}.projects-more-mark{flex:none;width:.82em;margin-top:.12em}.projects-more-text{text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.projects-more-text{-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 20%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 20%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 20%, transparent);text-decoration-color:color-mix(in oklab, var(--color-warm) 20%, transparent)}}.projects-more-text{text-underline-offset:.18em;transition:text-decoration-color .3s}.projects-more-link:hover,.projects-more-link:focus-visible{--projects-stretch:114%;color:var(--color-warm)}.projects-more-link:hover .projects-more-text,.projects-more-link:focus-visible .projects-more-text{-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm)}.projects-more-note{max-width:44ch;font-family:var(--font-text);font-size:var(--text-body-sm);letter-spacing:.01em;color:var(--color-warm-muted);text-wrap:balance;margin:14px auto 0;font-stretch:108%;line-height:1.55}@media (hover:hover){.projects-link:hover{--projects-stretch:114%}.projects-link:hover .projects-shades{opacity:.6}}.projects-link:focus-visible .projects-shades{opacity:.6}@media (width<=899px){.projects-list{gap:clamp(40px,9vw,64px)}.projects-link{grid-template-columns:minmax(0,1fr)}.projects-media{aspect-ratio:16/9;grid-column:1;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.projects-copy{width:auto;padding:0 var(--gutter);grid-row:2;align-self:start;margin-top:-10px}.projects-more{padding:0 var(--gutter)}}@media (width>=600px) and (width<=899px){.projects-media{aspect-ratio:21/9}}.contact{z-index:1;min-height:calc(100svh - 150px);padding:clamp(96px, 16svh, 180px) var(--gutter) clamp(120px, 22svh, 240px);font-family:var(--font-text);grid-template-columns:minmax(0,1fr) min(54ch,55%);align-content:space-between;gap:56px 48px;font-stretch:108%;display:grid;position:relative}.contact-reach{font-size:var(--text-body-lg);container-type:inline-size}.contact-email{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-warm);padding-bottom:.12em;font-size:min(12.4cqi,80px);font-weight:600;font-stretch:108%;line-height:1.1;transition:color .2s linear;display:inline-block;position:relative}.contact-email:after{content:"";transform-origin:50% 100%;will-change:transform;background:currentColor;height:2px;transition:transform .2s ease-out;position:absolute;inset:auto 0 0;transform:scaleY(.5)}.contact-email:hover,.contact-email:focus-visible{color:#ffe4b8}.contact-email:hover:after,.contact-email:focus-visible:after{transform:none}.contact-action{color:var(--color-warm-muted);cursor:pointer;align-items:center;padding-block:4px;transition:color .3s;display:inline-flex}.contact-action:hover,.contact-action:focus-visible{color:var(--color-warm)}@media (pointer:coarse){.contact-action{min-height:44px}}@media (width<=899px){.contact{grid-template-columns:minmax(0,1fr)}}.button{border:1px solid var(--color-warm);align-items:center;min-height:44px;padding:0 20px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.button{border:1px solid color-mix(in oklab, var(--color-warm) 22%, transparent)}}.button{font-family:var(--font-text);letter-spacing:.005em;color:var(--color-warm);border-radius:6px;font-size:15px;font-weight:500;font-stretch:108%;transition:background-color .25s,border-color .25s,color .25s}.button:hover{border-color:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.button:hover{border-color:color-mix(in oklab, var(--color-warm) 50%, transparent)}}.button:hover{background:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.button:hover{background:color-mix(in oklab, var(--color-warm) 5%, transparent)}}.button[data-variant=primary]{border-color:var(--color-warm);background:var(--color-warm);color:var(--color-bg)}.button[data-variant=primary]:hover{background:#ffe6bd;border-color:#ffe6bd}.button:focus-visible{outline:2px solid var(--color-warm);outline-offset:3px;border-radius:6px}@property --project-stretch{syntax:"<percentage>";inherits:true;initial-value:110%}.project-page{--project-ease:cubic-bezier(.2, .7, .2, 1);z-index:1;font-family:var(--font-text);color:var(--color-warm-muted);font-stretch:108%;position:relative}.project-hero{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) min(52%,1200px);align-items:center;display:grid}.project-hero-back{padding:28px var(--gutter) 0;grid-area:1/1;align-self:start}.project-media{aspect-ratio:16/9;background:var(--tone);grid-area:1/2/3;position:relative;overflow:clip}@supports (color:color-mix(in lab, red, red)){.project-media{background:color-mix(in oklch, var(--tone) 10%, var(--color-bg))}}.project-media{-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-image:linear-gradient(90deg,#0000,#000 40%),linear-gradient(#000 72%,#0000);mask-image:linear-gradient(90deg,#0000,#000 40%),linear-gradient(#000 72%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.project-hero-copy{width:min(50%,660px);padding:28px 0 32px var(--gutter);grid-area:2/1/auto/-1;position:relative}.project-hero:not([data-image]) .project-hero-copy{width:min(100%,880px);padding-top:clamp(48px,8vw,112px)}.project-category{font-family:var(--font-data);color:var(--color-warm);font-size:13px;font-stretch:100%}@supports (color:color-mix(in lab, red, red)){.project-category{color:color-mix(in oklab, var(--color-warm) 60%, transparent)}}.project-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-warm);text-wrap:balance;margin-top:12px;font-size:clamp(40px,5vw,80px);font-weight:650;font-stretch:110%;line-height:.98}.project-summary{max-width:42ch;font-size:var(--text-body-lg);letter-spacing:.01em;margin-top:20px;line-height:1.5}.project-facts{font-size:var(--text-body-sm);gap:6px;margin-top:28px;line-height:1.5;display:grid}.project-facts div{grid-template-columns:7.5em minmax(0,1fr);gap:16px;display:grid}.project-facts dt{font-family:var(--font-data);color:var(--color-warm);font-size:13px;font-stretch:100%;line-height:1.7}@supports (color:color-mix(in lab, red, red)){.project-facts dt{color:color-mix(in oklab, var(--color-warm) 50%, transparent)}}.project-facts dd{color:var(--color-warm-muted)}.project-actions{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.project-back:focus-visible,.project-content a:focus-visible,.project-pager-link:focus-visible{outline:2px solid var(--color-warm);outline-offset:3px;border-radius:6px}.project-back{white-space:nowrap;font-size:var(--text-body-sm);color:var(--color-warm-muted);text-decoration:underline;-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm);padding-block:4px;display:inline-block}@supports (color:color-mix(in lab, red, red)){.project-back{-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 25%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 25%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 25%, transparent);text-decoration-color:color-mix(in oklab, var(--color-warm) 25%, transparent)}}.project-back{text-underline-offset:5px;transition:color .3s,text-decoration-color .3s}.project-back:hover{color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm)}.project-body{padding:0 var(--gutter);grid-template-columns:minmax(180px,260px) minmax(0,860px);column-gap:clamp(48px,6vw,112px);margin-top:clamp(56px,7vw,96px);display:grid}.project-aside{align-self:stretch}.project-main{min-width:0}.project-lede{max-width:60ch;font-size:var(--text-body-lg);letter-spacing:.01em;color:var(--color-warm-muted);text-wrap:pretty;line-height:1.6}.project-lede p+p{margin-top:1em}.project-content>h2{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-warm);text-wrap:balance;margin-top:clamp(64px,7vw,104px);scroll-margin-top:24px;font-size:clamp(22px,1.4vw + 12px,30px);font-weight:600;font-stretch:110%;line-height:1.1}.project-content>h2+*{margin-top:24px}.project-content>h2+.project-figure{margin-top:32px}.project-content>p,.project-content>ul{max-width:64ch;font-size:var(--text-body);letter-spacing:.01em;text-wrap:pretty;line-height:1.7}.project-content>p+p,.project-content>p+ul,.project-content>ul+p{margin-top:1em}.project-content>ul{padding-left:1.1em;list-style:outside}.project-content>ul>li+li{margin-top:.4em}.project-content>ul>li::marker{color:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.project-content>ul>li::marker{color:color-mix(in oklab, var(--color-warm) 35%, transparent)}}.project-content strong{color:var(--color-warm);font-weight:600}.project-content a{color:var(--color-warm);text-decoration:underline;-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.project-content a{-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 30%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 30%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-warm) 30%, transparent);text-decoration-color:color-mix(in oklab, var(--color-warm) 30%, transparent)}}.project-content a{text-underline-offset:5px;transition:text-decoration-color .3s}.project-content a:hover{-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);-webkit-text-decoration-color:var(--color-warm);text-decoration-color:var(--color-warm)}.project-contents{top:calc(var(--header-h) + 24px);max-height:calc(100svh - var(--header-h) - 48px);scrollbar-width:none;position:sticky;overflow-y:auto}.project-contents::-webkit-scrollbar{display:none}.project-contents-list{padding-left:18px;position:relative}.project-contents-list:before,.project-contents-list:after{content:"";position:absolute;top:0;left:0}.project-contents-list:before{background:var(--color-warm);width:1px;bottom:0}@supports (color:color-mix(in lab, red, red)){.project-contents-list:before{background:color-mix(in oklab, var(--color-warm) 12%, transparent)}}.project-contents-list:after{width:2px;height:var(--project-h,0);background:var(--color-warm);opacity:0;transform:translateY(var(--project-y,0));transition:transform .55s var(--project-ease), height .55s var(--project-ease), opacity .3s ease;border-radius:1px;left:-.5px}.project-contents-list[data-ready]:after{opacity:1}.project-contents-list li{padding:5px 0}.project-contents-list a{color:var(--color-warm);font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.project-contents-list a{color:color-mix(in oklab, var(--color-warm) 50%, transparent)}}.project-contents-list a{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;transition:color .3s}.project-contents-list a:hover{color:var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.project-contents-list a:hover{color:color-mix(in oklab, var(--color-warm) 82%, transparent)}}.project-contents-list a[aria-current]{color:var(--color-warm)}.project-contents-list a:focus-visible{outline:2px solid var(--color-warm);outline-offset:0;border-radius:4px}@media (pointer:coarse){.project-contents-list a{min-height:44px}}@media (prefers-reduced-motion:reduce){.project-contents-list:after{transition:opacity .3s}}.project-figure{min-width:0}.project-content>.project-figure{margin-block:40px 8px}.project-content>.project-figure+.project-figure{margin-top:clamp(40px,5vw,64px)}.project-frame{background:var(--tone);border-radius:4px;width:fit-content;max-width:100%;display:block}@supports (color:color-mix(in lab, red, red)){.project-frame{background:color-mix(in oklch, var(--tone) 8%, var(--color-bg))}}.project-frame{box-shadow:0 0 0 1px var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.project-frame{box-shadow:0 0 0 1px color-mix(in oklab, var(--color-warm) 8%, transparent)}}.project-frame{transition:box-shadow .3s}.project-frame img,.project-frame video{border-radius:4px;max-width:100%;height:auto;display:block}.project-frame img{opacity:0;width:auto;max-height:min(78svh,760px);filter:var(--figure-invert,) brightness(var(--figure-gain,1));transition:opacity .6s,filter .3s}.project-frame img[data-ready]{opacity:1}.project-invert{--figure-invert:invert(.93) hue-rotate(180deg);filter:var(--figure-invert)}.project-frame video{width:100%}.project-frame[data-sized]{width:min(100%, calc(var(--project-w) * 1px), calc(min(78svh, 760px) * var(--project-w) / var(--project-h)));aspect-ratio:var(--project-w) / var(--project-h)}.project-frame[data-sized] img,.project-frame[data-sized] video{width:100%;height:100%;max-height:none}.project-frame-button{cursor:zoom-in}.project-frame-button:hover{box-shadow:0 0 0 1px var(--color-warm)}@supports (color:color-mix(in lab, red, red)){.project-frame-button:hover{box-shadow:0 0 0 1px color-mix(in oklab, var(--color-warm) 28%, transparent)}}.project-frame-button:hover img{filter:var(--figure-invert,) brightness(calc(var(--figure-gain,1) + .08))}.project-video{position:relative}.project-video video:not([controls]){cursor:pointer}.project-video .project-play{cursor:pointer;gap:10px;padding:0 18px 0 16px;position:absolute;bottom:16px;left:16px}.project-frame-button:focus-visible{box-shadow:0 0 0 2px var(--color-warm);outline:none}.project-caption{max-width:64ch;font-family:var(--font-data);color:var(--color-warm);margin-top:12px;font-size:13px;line-height:1.5}@supports (color:color-mix(in lab, red, red)){.project-caption{color:color-mix(in oklab, var(--color-warm) 60%, transparent)}}.project-caption{text-wrap:pretty}.dialog.project-lightbox{font-family:var(--font-text);background:#0a0b0efa;place-items:center;padding:72px 48px 48px;font-stretch:108%}.project-lightbox[open]{display:grid}.project-lightbox-close{min-height:44px;font-size:var(--text-body-sm);color:var(--color-warm-muted);cursor:pointer;border-radius:6px;padding:0 16px;transition:color .25s;position:absolute;top:20px;right:24px}.project-lightbox-close:hover,.project-lightbox-close:focus-visible{color:var(--color-warm)}.project-lightbox-close:focus-visible{outline:2px solid var(--color-warm);outline-offset:0}.project-lightbox-figure{flex-direction:column;align-items:center;max-width:100%;min-height:0;max-height:100%;transition:scale .28s cubic-bezier(.2,.7,.2,1);display:flex}.project-lightbox:not([open]) .project-lightbox-figure{scale:.98}@starting-style{.project-lightbox[open] .project-lightbox-figure{scale:.98}}.project-lightbox-figure img{object-fit:contain;border-radius:4px;max-width:min(1600px,100%);max-height:calc(100svh - 180px);display:block}.project-lightbox-figure .project-caption{text-align:center}.project-pager{column-gap:var(--gutter);padding:0 var(--gutter) clamp(72px, 8vw, 120px);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(120px,12vw,176px);display:grid}.project-pager-link{min-width:0;color:var(--color-warm);border-radius:8px;flex-direction:column;align-self:start;display:flex}.project-pager-label{font-family:var(--font-data);color:var(--color-warm);font-size:13px;font-stretch:100%}@supports (color:color-mix(in lab, red, red)){.project-pager-label{color:color-mix(in oklab, var(--color-warm) 55%, transparent)}}.project-pager-title{font-family:var(--font-display);font-size:clamp(28px,1.6vw + 16px,40px);font-weight:650;font-stretch:var(--project-stretch);letter-spacing:-.025em;text-wrap:balance;transition:--project-stretch .5s var(--project-ease);margin-top:10px;line-height:1.02}.project-pager-summary{max-width:44ch;font-size:var(--text-body-sm);letter-spacing:.01em;color:var(--color-warm-muted);text-wrap:pretty;margin-top:12px;line-height:1.55}.project-pager-link:hover,.project-pager-link:focus-visible{--project-stretch:114%}@media (prefers-reduced-motion:reduce){.project-pager-link:hover,.project-pager-link:focus-visible{--project-stretch:110%}}@media (width<=999px){.project-body{grid-template-columns:minmax(0,1fr)}.project-aside{display:none}}@media (width<=899px){.project-hero{grid-template-columns:minmax(0,1fr)}.project-hero-back{padding:16px var(--gutter) 12px}.project-media{aspect-ratio:16/10;grid-area:2/1;-webkit-mask-image:linear-gradient(#000 45%,#0000 92%);mask-image:linear-gradient(#000 45%,#0000 92%)}.project-hero-copy{width:auto;padding:0 var(--gutter);grid-row:3;margin-top:-16px}.project-hero:not([data-image]) .project-hero-copy{margin-top:0;padding-top:40px}.project-actions .button{flex:auto;justify-content:center;padding-inline:12px}.project-actions .button[data-variant=primary]{flex-basis:100%}.project-body{margin-top:72px}.project-lede{font-size:var(--text-body);line-height:1.7}.project-content>h2{margin-top:64px}.project-pager{grid-template-columns:minmax(0,1fr);padding-bottom:72px}.project-pager-link{border-top:1px solid var(--color-warm);padding-block:24px}@supports (color:color-mix(in lab, red, red)){.project-pager-link{border-top:1px solid color-mix(in oklab, var(--color-warm) 12%, transparent)}}.project-pager-link{border-radius:0}.project-pager-link[data-side=prev] .project-pager-label:before{content:"← " / ""}.project-pager-link[data-side=next] .project-pager-label:after{content:" →" / ""}.project-pager-title{letter-spacing:-.015em;margin-top:8px;font-size:clamp(22px,1.4vw + 12px,30px);font-weight:600;line-height:1.1}.project-pager-summary{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;display:-webkit-box;overflow:hidden}.dialog.project-lightbox{padding:72px 16px 24px}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-normal:1.5;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#111317;--color-warm:#fff1e4;--color-warm-muted:#ece2d8bd;--font-display:"Hubot Sans", system-ui, sans-serif;--font-text:"Mona Sans", system-ui, sans-serif;--font-data:"B612", system-ui, sans-serif;--text-body-sm:clamp(14px, .16vw + 13px, 16px);--text-body:clamp(16px, .21vw + 14.4px, 18px);--text-body-lg:clamp(17px, .32vw + 14.5px, 20px)}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.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}.z-\[5\]{z-index:5}.col-span-full{grid-column:1/-1}.-mt-\[80svh\]{margin-top:-80svh}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-\[22px\]{margin-top:22px}.mb-\[clamp\(56px\,9vw\,120px\)\]{margin-bottom:clamp(56px,9vw,120px)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.max-w-\[12ch\]{max-width:12ch}.max-w-\[15ch\]{max-width:15ch}.max-w-\[54ch\]{max-width:54ch}.flex-1{flex:1}.shrink-0{flex-shrink:0}.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}.gap-1{gap:var(--spacing)}:where(.space-y-\[1\.1em\]>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(1.1em * var(--tw-space-y-reverse));margin-block-end:calc(1.1em * calc(1 - var(--tw-space-y-reverse)))}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-7{column-gap:calc(var(--spacing) * 7)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.bg-bg{background-color:var(--color-bg)}.px-\(--gutter\){padding-inline:var(--gutter)}.px-\[26px\]{padding-inline:26px}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pb-40{padding-bottom:calc(var(--spacing) * 40)}.pb-\[clamp\(48px\,6vw\,96px\)\]{padding-bottom:clamp(48px,6vw,96px)}.pb-\[max\(40px\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(40px, env(safe-area-inset-bottom))}.font-data{font-family:var(--font-data)}.font-display{font-family:var(--font-display)}.font-text{font-family:var(--font-text)}.text-\[13px\]{font-size:13px}.text-\[length\:clamp\(40px\,5\.6vw\,84px\)\]{font-size:clamp(40px,5.6vw,84px)}.text-\[length\:clamp\(40px\,12\.5vw\,60px\)\]{font-size:clamp(40px,12.5vw,60px)}.text-\[length\:clamp\(44px\,7\.4vw\,112px\)\]{font-size:clamp(44px,7.4vw,112px)}.text-\[length\:var\(--text-body\)\]{font-size:var(--text-body)}.text-\[length\:var\(--text-body-lg\)\]{font-size:var(--text-body-lg)}.leading-\[0\.95\]{--tw-leading:.95;line-height:.95}.leading-\[0\.98\]{--tw-leading:.98;line-height:.98}.leading-\[1\.4\]{--tw-leading:1.4;line-height:1.4}.leading-\[1\.6\]{--tw-leading:1.6;line-height:1.6}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.035em\]{--tw-tracking:-.035em;letter-spacing:-.035em}.tracking-\[0\.01em\]{--tw-tracking:.01em;letter-spacing:.01em}.\[text-wrap\:balance\]{text-wrap:balance}.\[text-wrap\:pretty\]{text-wrap:pretty}.text-\[rgb\(255_241_228\/0\.62\)\]{color:#fff1e49e}.text-warm{color:var(--color-warm)}.text-warm-muted{color:var(--color-warm-muted)}.text-warm\/50{color:#fff1e480}@supports (color:color-mix(in lab, red, red)){.text-warm\/50{color:color-mix(in oklab, var(--color-warm) 50%, transparent)}}.italic{font-style:italic}.font-stretch-108\%{font-stretch:108%}.font-stretch-110\%{font-stretch:110%}.font-stretch-112\%{font-stretch:112%}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.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)}.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,)}.invert{--tw-invert:invert(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,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.open\:flex:is([open],:popover-open,:open){display:flex}@media (hover:hover){.hover\:text-warm:hover{color:var(--color-warm)}}.aria-\[current\]\:text-warm[aria-current]{color:var(--color-warm)}@media not all and (width>=899px){.max-\[899px\]\:mt-3{margin-top:calc(var(--spacing) * 3)}}@media not all and (width>=48rem){.max-md\:pb-24{padding-bottom:calc(var(--spacing) * 24)}}@media (width>=900px){.min-\[900px\]\:col-start-2{grid-column-start:2}}.section-heading{font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-warm);margin-bottom:clamp(28px,4vw,48px);font-size:clamp(22px,1.4vw + 12px,30px);font-weight:600;font-stretch:110%;line-height:1.1}.tone{--tone-a:clamp(0%, calc(var(--tone-t) * 200%), 100%);--tone-b:clamp(0%, calc((var(--tone-t) - .5) * 200%), 100%);--tone:#d0806a}@supports (color:color-mix(in lab, red, red)){.tone{--tone:color-mix(in oklch, color-mix(in oklch, #d0806a, #6a5290 var(--tone-a)), #2c3a78 var(--tone-b))}}.tone-cast{background:var(--tone);mix-blend-mode:soft-light;opacity:.32;position:absolute;inset:0}.graded-img{object-fit:cover;opacity:0;width:100%;height:100%;filter:brightness(var(--gain,1)) saturate(var(--graded-saturation,.85));transition:opacity .8s,filter .5s;position:absolute;inset:0}.graded-img[data-ready]{opacity:1}}:root{--gutter:48px;--header-h:88px}@media (width<=700px){:root{--gutter:26px;--header-h:68px}}html{font-family:var(--font-text);background-color:var(--color-bg);color:var(--color-warm);scroll-behavior:smooth;-moz-osx-font-smoothing:grayscale;scroll-padding-top:var(--header-h);-webkit-font-smoothing:antialiased;line-height:1.6}body{background-color:var(--color-bg);color:var(--color-warm);overflow-x:hidden}:focus-visible{outline:2px solid var(--color-warm);outline-offset:2px;border-radius:4px}.skip-nav{z-index:100;background:var(--color-warm);color:var(--color-bg);border-radius:4px;padding:8px;font-weight:600;text-decoration:none;transition:transform .3s;position:absolute;top:0;left:6px;transform:translateY(calc(-100% - 4px))}.skip-nav:focus{outline:2px solid var(--color-warm);outline-offset:2px;transform:translateY(0%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@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-duration{syntax:"*";inherits:false}
