:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#181917;--paper-deep:#22231f;--surface:#20211e;--ink:#f1ece2;--ink-muted:#b4b3a9;--line:#383a33;--line-strong:#56574c;--rust:#c5aa87;--moss:#b0b998;--cream:#eee9df;--radius:6px;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:ui-monospace, "SFMono-Regular", Consolas, monospace;--container:min(100% - clamp(2.5rem, 9vw, 9rem), 78rem);--transition:.18s ease;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}::selection{color:var(--paper);background:var(--rust)}img{max-width:100%}button,input,select{font:inherit}button,summary{touch-action:manipulation}button:not(:disabled),select{cursor:pointer}.skip-link{z-index:100;border-radius:var(--radius);color:var(--paper);background:var(--ink);padding:.8rem 1rem;position:absolute;top:.5rem;left:1rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}a{color:inherit}:focus-visible{outline:2px solid var(--rust);outline-offset:4px}.page{width:var(--container);margin:0 auto}.eyebrow{color:var(--rust);font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:500;line-height:1.6}.button{border:1px solid var(--line-strong);border-radius:var(--radius);min-height:3rem;color:var(--ink);transition:background var(--transition), color var(--transition), border-color var(--transition);justify-content:center;align-items:center;gap:1.5rem;padding:.75rem 1.25rem;font-size:.8rem;text-decoration:none;display:inline-flex}.button:hover{border-color:var(--rust);background:var(--surface)}.button--solid{border-color:var(--rust);color:#24251f;background:var(--rust)}.button--solid:hover{color:#24251f;background:#dfc7a6;border-color:#dfc7a6}.text-link,.quiet-link{align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.text-link span{transition:transform var(--transition)}.text-link:hover span{transform:translate(3px)}.quiet-link{color:var(--ink-muted);font-family:var(--mono);font-size:.72rem;font-weight:400}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.site-header{z-index:10;border-bottom:1px solid var(--line);background:var(--paper);position:relative}.site-header__inner,.site-footer__inner{width:var(--container);justify-content:space-between;align-items:center;gap:1.5rem;margin:0 auto;display:flex}.site-header__inner{min-height:5.25rem}.site-mark{border-radius:50%;align-items:center;text-decoration:none;display:inline-flex}.site-avatar{border:1px solid var(--line-strong);background:var(--surface);object-fit:cover;object-position:center;border-radius:50%;width:2.75rem;height:2.75rem;display:block}.site-nav{align-items:center;gap:clamp(1.3rem,2.6vw,2.5rem);display:flex}.site-nav a{color:var(--ink-muted);transition:color var(--transition);padding:.7rem 0;font-size:.75rem;text-decoration:none;position:relative}.site-nav a:after{background:var(--rust);content:"";transform-origin:0;height:1px;transition:transform var(--transition);position:absolute;bottom:.2rem;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}.site-nav a:last-child{border-left:1px solid var(--line-strong);margin-left:.4rem;padding-left:1.8rem}.site-nav a:last-child:after{left:1.8rem}.menu-toggle{border:1px solid var(--line-strong);border-radius:var(--radius);min-width:4.5rem;min-height:2.75rem;color:var(--ink);font:.72rem var(--sans);background:0 0;padding:.6rem .8rem;display:none}.site-footer{border-top:1px solid var(--line);background:#141512}.site-footer__inner{color:var(--ink-muted);padding:2.5rem 0;font-size:.7rem}.site-footer p{gap:.55rem;margin:0;display:flex}.site-footer p:first-child{flex-direction:column}.site-footer strong{color:var(--ink);font:400 1.1rem var(--serif)}.site-footer a{color:var(--ink);text-decoration:none}.site-footer a:hover{text-underline-offset:4px;text-decoration:underline}@media (width<=650px){.site-header__inner{min-height:4.5rem}.menu-toggle{display:block}.site-nav{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.2rem;display:none;position:absolute;top:calc(100% + .5rem);left:1.25rem;right:1.25rem;box-shadow:0 15px 35px #0005}.site-nav--open{display:flex}.site-nav a,.site-nav a:last-child{border-left:0;margin:0;padding:1rem 0;font-size:.9rem}.site-nav a:last-child{border-top:1px solid var(--line)}.site-nav a:last-child:after{left:0}.site-footer__inner{flex-direction:column;align-items:flex-start;gap:1.5rem}}.hero{isolation:isolate;min-height:40rem;color:var(--ink);background:#292e28;position:relative}.hero__landscape{z-index:-2;object-fit:cover;object-position:50% 65%;width:100%;height:100%;position:absolute;inset:0}.hero:before{z-index:-1;background:linear-gradient(90deg, #141916d9 0%, #141916c7 calc((100% - var(--container)) / 2 + 26rem), #14191673 calc((100% - var(--container)) / 2 + 46rem), #14191600 100%), linear-gradient(0deg, #181917cc 0%, transparent 35%);content:"";position:absolute;inset:0}.hero__inner{width:var(--container);min-height:inherit;align-items:center;margin-inline:auto;padding-block:clamp(4rem,8vw,6rem);display:flex}.hero__main{max-width:38rem}.hero .eyebrow{color:#d3c4ac}.hero h1{font:400 clamp(5rem, 8.8vw, 8.2rem) / .93 var(--serif);letter-spacing:-.055em;margin:1.4rem 0 0}.hero__lede{color:#e1ded3;max-width:27rem;margin:1.8rem 0 0;font-size:clamp(1rem,1.25vw,1.13rem);line-height:1.8}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero .button:not(.button--solid){background:#181d1659;border-color:#a6a597}.hero .button:not(.button--solid):hover{background:#272d22}.hero__links{margin-top:1.4rem;font-size:.75rem}.hero__links a{color:#dedbce;text-underline-offset:4px}.hero__credit{right:max(1.25rem, calc((100% - var(--container)) / 2));color:#dedbce;text-underline-offset:4px;align-items:center;max-width:calc(100% - 2.5rem);min-height:2.75rem;padding:.35rem .2rem;font-size:.75rem;line-height:1.5;text-decoration-color:#dedbce99;display:inline-flex;position:absolute;bottom:.75rem}.hero__credit:hover{color:var(--ink);text-decoration-color:currentColor}.site-guide{width:var(--container);border-bottom:1px solid var(--line);grid-template-columns:.7fr 2fr;gap:clamp(2rem,6vw,6rem);margin:0 auto;padding:clamp(2.5rem,5vw,4rem) 0;display:grid}.site-guide__heading h2{font:400 clamp(1.8rem, 3vw, 2.6rem) / 1.05 var(--serif);letter-spacing:-.03em;margin:.5rem 0 0}.site-guide__list{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.site-guide__list a{border-left:1px solid var(--line);grid-template-columns:1.7rem 1fr;align-content:start;min-width:0;padding:.3rem 1.5rem;text-decoration:none;display:grid}.site-guide__list a:first-child{border-left:0;padding-left:0}.site-guide__list span{color:var(--rust);font:.6rem var(--mono);padding-top:.4rem}.site-guide__list strong{font:400 1.45rem var(--serif)}.site-guide__list p{color:var(--ink-muted);grid-column:2;margin:.65rem 0 0;font-size:.77rem;line-height:1.7}.site-guide__list a:hover strong{color:var(--rust)}.featured-work{width:var(--container);margin:0 auto;padding:clamp(4rem,8vw,7rem) 0}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(2.5rem,5vw,4rem);display:flex}.section-heading h2,.about-preview h2,.contact-cta h2{font:400 clamp(2.7rem, 4.5vw, 4.5rem) / 1.03 var(--serif);letter-spacing:-.045em;margin:.8rem 0 0}.section-heading>p{max-width:19rem;color:var(--ink-muted);margin:0 0 .2rem;font-size:.85rem;line-height:1.8}.featured-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3.5rem,7vw,6rem) 2.5rem;display:grid}.featured-project{min-width:0;color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.featured-project:nth-child(-n+2){grid-column:1/-1;grid-template-columns:minmax(0,1.6fr) minmax(16rem,.85fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.featured-project:nth-child(2){grid-template-columns:minmax(16rem,.85fr) minmax(0,1.6fr)}.featured-project:nth-child(2) .featured-project__image{grid-area:1/2}.featured-project:nth-child(2) .featured-project__content{grid-area:1/1}.featured-project__image{aspect-ratio:1.6;border-radius:var(--radius);background:#363c32;border:1px solid #484b3f;min-width:0;position:relative;overflow:hidden}.featured-project__image img{object-fit:contain;width:100%;height:100%;transition:transform .28s;display:block}.featured-project[data-project=rocky] .featured-project__image{aspect-ratio:1.45;background:#41483a}.featured-project[data-project=rocky] .featured-project__image>img:first-child{border:1px solid #7d8474;border-radius:4px;width:86%;height:auto;position:absolute;top:13%;left:7%;box-shadow:0 16px 35px #11170f50}.featured-project[data-project=rocky] img.featured-project__secondary{border:1px solid #707969;border-radius:4px;width:66%;height:auto;position:absolute;bottom:-5%;right:-8%;box-shadow:-10px -5px 35px #11170f4d}.featured-project[data-project=sidequest] .featured-project__image{aspect-ratio:1.5;background:#443b31}.featured-project[data-project=sidequest] .featured-project__image img{border:1px solid #8c7860;border-radius:12px;width:34%;height:auto;position:absolute;top:8%;left:16%;box-shadow:0 14px 30px #1c160e50}.featured-project[data-project=sidequest] img.featured-project__secondary{top:22%;left:54%}.featured-project[data-project=workout-journal] .featured-project__image{background:#343b36}.featured-project[data-project=workout-journal] .featured-project__image img{padding:1.8rem}.featured-project[data-project=password-manager] .featured-project__image{background:#302d28}.featured-project[data-project=password-manager] .featured-project__image img{padding:1.8rem}.featured-project__content{flex-direction:column;flex:1;min-width:0;padding-top:1.5rem;display:flex}.featured-project:nth-child(-n+2) .featured-project__content{padding-top:0}.featured-project__meta{color:var(--rust);letter-spacing:.1em;text-transform:uppercase;gap:1.1rem;margin:0;font-size:.62rem;line-height:1.5;display:flex}.featured-project__meta span:first-child{color:var(--ink-muted)}.featured-project h3{font:400 clamp(2.3rem, 3.7vw, 3.6rem) / 1.02 var(--serif);letter-spacing:-.045em;margin:1rem 0 0}.featured-project__content>p:not(.featured-project__meta){max-width:30rem;color:var(--ink-muted);margin:1.1rem 0 0;font-size:.9rem;line-height:1.85}.featured-project__content ul{color:var(--ink-muted);flex-wrap:wrap;gap:.5rem .8rem;margin:1.4rem 0 0;padding:0;font-size:.66rem;line-height:1.5;list-style:none;display:flex}.featured-project__content li+li:before{color:var(--line-strong);content:"/";margin-right:.8rem}.featured-project__action{color:var(--rust);margin-top:auto;padding-top:2rem;font-size:.78rem;font-weight:500;display:block}.featured-project:hover .featured-project__image img{transform:translateY(-3px)}.featured-project:hover .featured-project__action{text-underline-offset:5px;text-decoration:underline}.featured-work__all{border-bottom:1px solid var(--line-strong);margin-top:3.5rem;padding-bottom:.6rem;font-size:.8rem}.about-preview{width:var(--container);border-top:1px solid var(--line);grid-template-columns:.72fr 1.28fr;gap:1.5rem clamp(2rem,7vw,7rem);margin:0 auto;padding:clamp(4rem,8vw,7rem) 0;display:grid}.about-preview>p,.about-preview .text-link{grid-column:2}.about-preview h2{grid-area:1/1/3;max-width:16ch;margin-top:0}.about-preview>p{max-width:36rem;color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.85}.about-preview .text-link{margin-top:.5rem;font-size:.8rem}.contact-cta{width:var(--container);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:.72fr 1.28fr auto;align-items:center;gap:1rem clamp(2rem,5vw,5rem);margin:0 auto clamp(3rem,6vw,5rem);padding:clamp(2.5rem,5vw,4rem) 0;display:grid}.contact-cta h2{grid-area:1/1/3;margin:0;font-size:clamp(2.3rem,4vw,3.5rem)}.contact-cta p{max-width:30rem;color:var(--ink-muted);grid-column:2;margin:0;font-size:.9rem;line-height:1.8}.contact-cta .button{grid-area:1/3/span 3}@media (width>=1600px){.hero{min-height:44rem}}@media (width<=950px){.site-guide{grid-template-columns:1fr}.featured-project:nth-child(-n+2),.featured-project:nth-child(2){grid-template-columns:1.2fr 1fr;gap:2rem}.featured-project:nth-child(2) .featured-project__image,.featured-project:nth-child(2) .featured-project__content{grid-area:auto}}@media (width<=700px){.hero{min-height:36rem}.hero__inner{padding-block:4rem}.hero h1{font-size:clamp(4.5rem,16vw,6.5rem)}.hero__lede{max-width:25rem}.hero:before{background:linear-gradient(90deg,#141916e0,#14191699),linear-gradient(#0000 60%,#181917cc)}.hero__landscape{object-position:72% 50%}.site-guide{gap:1.8rem}.site-guide__list{grid-template-columns:1fr}.site-guide__list a,.site-guide__list a:first-child{border-top:1px solid var(--line);border-left:0;padding:1.1rem 0}.site-guide__list p{max-width:25rem}.section-heading{flex-direction:column;align-items:start;gap:1rem}.featured-projects{grid-template-columns:1fr}.featured-project:nth-child(-n+2),.featured-project:nth-child(2){gap:0;display:flex}.featured-project:nth-child(-n+2) .featured-project__content{padding-top:1.5rem}.about-preview,.contact-cta{grid-template-columns:1fr}.about-preview>*,.contact-cta>*{grid-area:auto/1!important}.contact-cta .button{justify-self:start;margin-top:1rem}}@media (width<=380px){.hero .eyebrow{max-width:25ch}.hero .button{gap:.8rem;padding-inline:1rem}}.apps-page{padding-bottom:clamp(4rem,8vw,7rem)}.apps-page__intro{max-width:50rem}.apps-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.app-card{--app-accent:var(--rust);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:22rem;transition:transform var(--transition), border-color var(--transition), background var(--transition);flex-direction:column;padding:clamp(1.35rem,3vw,2rem);display:flex;position:relative}.app-card[data-tone=moss]{--app-accent:var(--moss)}.app-card[data-tone=ochre]{--app-accent:#ceb07c}.app-card[data-tone=ink]{--app-accent:var(--ink-muted)}.app-card[data-tone=water]{--app-accent:#a1bbc3}.app-card:hover{border-color:var(--app-accent);background:var(--paper-deep)}.app-card__topline{justify-content:space-between;align-items:start;gap:1rem;display:flex}.app-card__visual{border:1px solid color-mix(in srgb, var(--app-accent) 72%, var(--line));border-radius:var(--radius);width:3.15rem;height:3.15rem;color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 9%, var(--paper));font:600 .9rem var(--mono);flex:none;place-items:center;display:grid}.app-card__topline>div:last-child{text-align:right;min-width:0}.app-card__topline p,.app-card__topline span,.app-card__availability{font:.66rem/1.45 var(--mono);letter-spacing:.04em;text-transform:uppercase;margin:0}.app-card__topline p{color:var(--app-accent)}.app-card__topline span,.app-card__availability{color:var(--ink-muted)}.app-card h2{font:400 clamp(2.1rem, 4vw, 3.25rem) / .98 var(--serif);letter-spacing:-.045em;margin:clamp(2rem,5vw,3rem) 0 0}.app-card__description{max-width:33rem;color:var(--ink-muted);margin:1rem 0 0;font-size:.96rem;line-height:1.65}.app-card__actions{flex-wrap:wrap;align-items:center;gap:.9rem 1.25rem;margin-top:auto;padding-top:2rem;display:flex}.app-card__actions .button{gap:.75rem}.app-card__actions .text-link{color:var(--ink-muted)}@media (width<=700px){.apps-directory{grid-template-columns:1fr}.app-card{min-height:0}}@media (width<=430px){.app-card__topline{flex-direction:column;align-items:start}.app-card__topline>div:last-child{text-align:left}.app-card__actions{flex-direction:column;align-items:stretch}.app-card__actions .button{width:100%}}.projects-page{padding-bottom:clamp(4rem,8vw,7rem)}.page-intro{max-width:50rem;padding:clamp(4rem,7vw,6.5rem) 0 clamp(3rem,6vw,5rem)}.page-intro h1{font:400 clamp(4rem, 8vw, 7.6rem)/1 var(--serif);letter-spacing:-.055em;margin:0}.page-intro>p:last-child{max-width:36rem;color:var(--ink-muted);margin:1.5rem 0 0;font-size:1.05rem;line-height:1.8}.projects-grid{gap:clamp(3.5rem,7vw,6rem);display:grid}.project-card{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-width:0;padding-top:clamp(2rem,4vw,3rem);display:grid;position:relative}.project-card:nth-child(2n){grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.project-card:nth-child(2n) .project-card__visual{grid-area:1/2}.project-card:nth-child(2n) .project-card__body{grid-area:1/1}.project-card__cover-link{z-index:2;border-radius:var(--radius);position:absolute;inset:0}.project-card__cover-link:focus-visible{outline:2px solid var(--rust);outline-offset:8px}.project-card__visual,.project-card__body{min-width:0}.project-card__topline{color:var(--rust);font:.62rem/1.6 var(--sans);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;gap:.65rem 1.2rem;display:flex}.status{color:var(--ink-muted)}.status[data-status=V1\ Complete]{color:var(--moss)}.project-card h2{font:400 clamp(2.6rem, 4.3vw, 4.3rem)/1.02 var(--serif);letter-spacing:-.045em;margin:1.2rem 0 0}.project-card__context{color:var(--rust);margin:1rem 0 0;font-size:.74rem;line-height:1.7}.project-card__description{color:var(--ink-muted);margin:1.2rem 0 0;font-size:.95rem;line-height:1.85}.tag-list{color:var(--ink-muted);font:.68rem/1.5 var(--sans);flex-wrap:wrap;gap:.5rem .8rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.tag-list li:before{color:var(--rust);content:"·";margin-right:.4rem}.project-card__card-action{border-bottom:1px solid var(--line-strong);color:var(--ink);justify-content:space-between;align-items:center;gap:2.5rem;margin:2rem 0 0;padding-bottom:.6rem;font-size:.8rem;display:inline-flex}.project-card__card-action span{transition:transform var(--transition)}.project-card:hover .project-card__card-action span{transform:translate(2px,-2px)}.project-card:hover .project-preview{border-color:var(--line-strong)}@media (width<=850px){.project-card,.project-card:nth-child(2n){grid-template-columns:1fr;gap:1.8rem}.project-card:nth-child(2n) .project-card__visual,.project-card:nth-child(2n) .project-card__body{grid-area:auto}.project-card__body{max-width:42rem}}.content-page{width:var(--container);margin:0 auto;padding:clamp(4rem,8vw,7rem) 0 clamp(4.5rem,9vw,8rem)}.content-page__intro{max-width:49rem}.content-page h1{font-family:var(--serif);letter-spacing:-.06em;margin:.5rem 0 0;font-size:clamp(4rem,8vw,7.5rem);font-weight:400;line-height:1}.content-page__lede{max-width:42rem;color:var(--ink-muted);margin:1.7rem 0 0;font-size:clamp(1.08rem,1.8vw,1.35rem);line-height:1.7}.detail-header{border-bottom:1px solid var(--line);grid-template-columns:1.25fr .75fr;gap:3rem;padding:clamp(3.5rem,7vw,6rem) 0 clamp(3rem,6vw,5rem);display:grid}.detail-header h1{font-family:var(--serif);letter-spacing:-.06em;margin:.5rem 0 0;font-size:clamp(4rem,9vw,8rem);font-weight:400;line-height:.86}.detail-header__summary{color:var(--ink-muted);align-self:end;font-size:1.08rem;line-height:1.7}.detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0 0;display:grid}.detail-meta div{border-top:1px solid var(--line);padding-top:.7rem}.detail-meta dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.detail-meta dd{margin:.45rem 0 0;font-size:.88rem}.detail-body{grid-template-columns:minmax(0,1fr) minmax(14rem,.45fr);gap:clamp(3rem,10vw,11rem);padding:clamp(3rem,7vw,6rem) 0;display:grid}.detail-copy{max-width:42rem}.detail-copy section+section{margin-top:3.5rem}.detail-copy h2,.detail-aside h2,.content-section h2{font-family:var(--serif);letter-spacing:-.035em;margin:0 0 1rem;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;line-height:1}.detail-copy p,.content-section p{color:var(--ink-muted);line-height:1.75}.milestones{gap:.8rem;padding:0;list-style:none;display:grid}.milestones li{border-top:1px solid var(--line);color:var(--ink-muted);padding:.9rem 0 .9rem 1.2rem;font-size:.94rem;line-height:1.55}.milestones li:before{color:var(--rust);content:"—";margin-left:-1.2rem;position:absolute}.detail-aside{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);align-self:start;padding:1.4rem}.detail-aside .tag-list{margin-top:0}.detail-aside .button{width:100%;margin-top:1.7rem}.back-link{font:.75rem var(--mono);text-decoration:none}.content-grid{grid-template-columns:.55fr 1.25fr;gap:clamp(2rem,9vw,9rem);margin-top:clamp(4rem,8vw,7rem);display:grid}.content-grid>.eyebrow{padding-top:.5rem}.content-grid--prose{grid-template-columns:minmax(0,1fr);max-width:48rem}.content-section+.content-section{margin-top:3rem}.tool-groups{gap:1.3rem;display:grid}.tool-groups h3{color:var(--rust);font:.7rem var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem}.tool-groups ul{color:var(--ink-muted);flex-wrap:wrap;gap:.45rem .75rem;margin:0;padding:0;list-style:none;display:flex}.tool-groups li:after{color:var(--line-strong);content:"/";margin-left:.75rem}.tool-groups li:last-child:after{display:none}.contact-links{border-top:1px solid var(--line);max-width:42rem;margin-top:2.5rem;display:grid}.contact-links a{border-bottom:1px solid var(--line);font-family:var(--serif);justify-content:space-between;align-items:center;padding:1rem 0;font-size:1.5rem;text-decoration:none;display:flex}.contact-links a:hover{color:var(--rust)}.contact-note{border-left:2px solid var(--rust);max-width:38rem;color:var(--ink-muted);border-radius:0 var(--radius) var(--radius) 0;background:var(--surface);margin-top:3rem;padding:1.4rem;line-height:1.65}@media (width<=700px){.detail-header,.detail-body,.content-grid{grid-template-columns:1fr;gap:2rem}.detail-header__summary{max-width:36rem}.detail-body{padding-top:3rem}.content-grid>.eyebrow{padding:0}}.case-study{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.case-hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding-bottom:clamp(3.5rem,7vw,6rem);display:grid}.case-hero h1{font-family:var(--serif);letter-spacing:-.07em;margin:.55rem 0 0;font-size:clamp(5rem,11vw,10rem);font-weight:400;line-height:.82}.case-hero__summary{max-width:43rem;color:var(--ink-muted);margin:1.7rem 0 0;font-size:clamp(1.1rem,1.8vw,1.4rem);line-height:1.65}.case-facts{align-content:end;gap:1rem;margin:0;display:grid}.case-facts div{border-top:1px solid var(--line);padding-top:.75rem}.case-facts dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.case-facts dd{color:var(--ink);margin:.42rem 0 0;font-size:.92rem;line-height:1.45}.case-section{border-bottom:1px solid var(--line);padding:clamp(3.5rem,8vw,7rem) 0}.case-section>h2,.case-section--split h2{max-width:15ch;font-family:var(--serif);letter-spacing:-.055em;margin:.55rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);font-weight:400;line-height:.93}.case-section--split{grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,9vw,10rem);display:grid}.case-prose{max-width:44rem}.case-prose p,.architecture-note,.stack-groups>p{color:var(--ink-muted);margin:0;font-size:1.02rem;line-height:1.75}.case-prose p+p{margin-top:1.25rem}.timeline{grid-template-columns:repeat(4,1fr);gap:1rem;margin:clamp(2rem,5vw,4rem) 0 0;padding:0;list-style:none;display:grid}.timeline li{border-top:2px solid var(--rust);background:#ebe0d052;min-height:12rem;padding:1.1rem 1rem}.timeline__date{color:var(--rust);font:.68rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:0}.timeline li>p:last-child{color:var(--ink-muted);margin:1rem 0 0;font-size:.9rem;line-height:1.55}.contribution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,5vw,4rem);display:grid}.contribution-grid article{border:1px solid var(--line-strong);background:#fffdf76b;padding:1.4rem}.contribution-grid h3,.challenge-list h3,.stack-groups h3,.two-lists h3{font-family:var(--serif);letter-spacing:-.035em;margin:1.8rem 0 0;font-size:clamp(1.55rem,2.5vw,2.1rem);font-weight:400;line-height:1}.contribution-grid article>p:last-child,.challenge-list p{color:var(--ink-muted);margin:1rem 0 0;font-size:.94rem;line-height:1.65}.architecture{border:1px solid var(--line-strong);text-align:center;background:#ebe0d06b;justify-items:center;gap:.42rem;padding:clamp(1.2rem,3vw,2rem);display:grid}.architecture div{border:1px solid var(--line-strong);background:var(--paper);width:min(100%,29rem);padding:.75rem 1rem;font-size:.88rem}.architecture div:nth-of-type(2){border-color:var(--rust)}.architecture .architecture__server{text-align:left;padding:1rem}.architecture__server>span{color:var(--ink);font:inherit}.architecture__server ul{border-top:1px solid var(--line);color:var(--ink-muted);font:.78rem/1.4 var(--mono);gap:.35rem;margin:.8rem 0 0;padding:.8rem 0 0 1.1rem;display:grid}.architecture span{color:var(--rust);font-family:var(--mono)}.architecture-note{margin-top:1rem;font-size:.9rem}.challenge-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin-top:clamp(2rem,5vw,4rem);display:grid}.challenge-list article{border-top:1px solid var(--line);padding:1.4rem 0}.challenge-list h3{margin:0;font-size:1.55rem}.stack-groups{gap:2rem;display:grid}.stack-groups h3{margin:0 0 .9rem;font-size:1.45rem}.stack-groups>p{border-top:1px solid var(--line);padding-top:1.2rem;font-size:.9rem}.two-lists{gap:2.5rem;display:grid}.two-lists h3{margin:0 0 1rem;font-size:1.5rem}.two-lists ul,.future-work ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.two-lists li,.future-work li{color:var(--ink-muted);padding-left:1.15rem;font-size:.94rem;line-height:1.55;position:relative}.two-lists li:before,.future-work li:before{color:var(--rust);content:"—";position:absolute;left:0}.future-work{padding-bottom:2rem}.future-work ul{max-width:42rem;margin-top:2rem}.case-back{margin:2rem 0 0}.project-evolution>h2{max-width:none}.project-evolution__intro{max-width:45rem;color:var(--ink-muted);margin:1.3rem 0 0;font-size:1rem;line-height:1.7}.project-evolution__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,4rem) clamp(1.2rem,3vw,2rem);margin-top:clamp(2.3rem,5vw,4rem);display:grid}.evolution-comparison{min-width:0}.evolution-comparison__heading{min-height:8.4rem;padding-bottom:1.1rem}.evolution-comparison h3,.gallery-pair h3{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(1.65rem,2.7vw,2.25rem);font-weight:400;line-height:1}.evolution-comparison__heading p{color:var(--ink-muted);margin:.75rem 0 0;font-size:.9rem;line-height:1.55}.before-after{aspect-ratio:16/9;border:1px solid var(--line-strong);background:var(--paper-deep);touch-action:pan-y;max-width:100%;position:relative;overflow:hidden}.before-after__image{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.before-after__image--before{clip-path:inset(0 calc(100% - var(--comparison-position)) 0 0);z-index:2}.before-after__image img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.before-after__label{z-index:3;color:var(--ink);font:.62rem var(--mono);letter-spacing:.07em;text-transform:uppercase;background:#f4eee3e6;border:1px solid #23201c99;padding:.28rem .45rem;position:absolute;top:.7rem}.before-after__label--before{left:.7rem}.before-after__label--after{right:.7rem}.before-after__divider{top:0;bottom:0;left:var(--comparison-position);z-index:4;background:var(--ink);pointer-events:none;width:1px;position:absolute;transform:translate(-50%)}.before-after__handle{border:1px solid var(--ink);background:var(--paper);width:2.3rem;height:2.3rem;color:var(--ink);border-radius:50%;place-items:center;font-size:1.15rem;line-height:1;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.before-after__range{z-index:5;appearance:none;cursor:col-resize;opacity:0;background:0 0;width:100%;height:100%;margin:0;position:absolute;inset:0}.before-after__range:focus-visible{opacity:1;outline:2px solid var(--rust);outline-offset:-3px}.before-after__range:focus-visible::-webkit-slider-thumb{appearance:none;border:1px solid var(--ink);background:var(--paper);border-radius:50%;width:2.3rem;height:2.3rem}.rocky-gallery{margin-top:clamp(2.5rem,5vw,4rem)}.rocky-gallery summary{border:1px solid var(--ink);color:var(--ink);cursor:pointer;font:.72rem var(--mono);letter-spacing:.06em;text-transform:uppercase;background:0 0;justify-content:center;align-items:center;padding:.72rem 1rem;list-style:none;display:inline-flex}.rocky-gallery summary::-webkit-details-marker{display:none}.rocky-gallery summary:after{content:"+";margin-left:.55rem}.rocky-gallery[open] summary:after{content:"−"}.rocky-gallery summary:focus-visible{outline:2px solid var(--rust);outline-offset:3px}.rocky-gallery__content{border-top:1px solid var(--line);margin-top:1.25rem;padding-top:1.25rem}.rocky-gallery__content>p{color:var(--ink-muted);margin:0;font-size:.94rem;line-height:1.55}.rocky-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.25rem;margin-top:2rem;display:grid}.gallery-pair{min-width:0}.gallery-pair__images{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.9rem;display:grid}.gallery-pair figure{min-width:0;margin:0}.gallery-pair img{aspect-ratio:16/9;border:1px solid var(--line);background:var(--paper-deep);object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;display:block}.gallery-pair figcaption{color:var(--rust);font:.62rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-top:.45rem}@media (width<=800px){.timeline{grid-template-columns:repeat(2,1fr)}.case-section--split{grid-template-columns:1fr}.case-section>h2,.case-section--split h2{max-width:18ch}.project-evolution__grid,.rocky-gallery__grid{grid-template-columns:1fr}}@media (width<=580px){.case-hero,.contribution-grid,.challenge-list,.timeline{grid-template-columns:1fr}.case-hero{gap:2.5rem}.timeline li{min-height:auto}.case-section{padding:3.5rem 0}.evolution-comparison__heading{min-height:auto}.before-after__label{top:.45rem}.before-after__label--before{left:.45rem}.before-after__label--after{right:.45rem}}.sidequest-project{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.sidequest-project__hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.sidequest-project__hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4.5rem,10vw,9rem);font-weight:400;line-height:.84}.sidequest-project__subtitle{color:var(--rust);font:.72rem/1.55 var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:1.25rem 0 0}.sidequest-project__summary{max-width:44rem;color:var(--ink-muted);margin:1.2rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.sidequest-project__facts{align-content:end;gap:1rem;margin:0;display:grid}.sidequest-project__facts div{border-top:1px solid var(--line);padding-top:.75rem}.sidequest-project__facts dt,.sidequest-project__info dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.sidequest-project__facts dd,.sidequest-project__info dd{margin:.42rem 0 0;font-size:.92rem;line-height:1.5}.sidequest-project__section{border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,6rem) 0}.sidequest-project__section>h2,.sidequest-project__split h2,.sidequest-project__status h2{max-width:18ch;font-family:var(--serif);letter-spacing:-.055em;margin:.55rem 0 0;font-size:clamp(2.35rem,4.7vw,4.7rem);font-weight:400;line-height:.94}.sidequest-project__split{grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,9vw,10rem);display:grid}.sidequest-project__prose{max-width:44rem;margin-top:clamp(1.5rem,3vw,2.4rem)}.sidequest-project__split .sidequest-project__prose{margin-top:0}.sidequest-project__prose p,.sidequest-project__status>p{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.75}.sidequest-project__prose p+p{margin-top:1.15rem}.sidequest-project__flow{gap:0;margin:clamp(2rem,4vw,3rem) 0 0;padding:0;list-style:none;display:grid}.sidequest-project__flow li{border-top:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr);gap:1rem;padding:1.25rem 0;display:grid}.sidequest-project__flow li>span{color:var(--rust);font:.7rem var(--mono)}.sidequest-project__flow h3,.sidequest-project__card-grid h3,.sidequest-project__technical-list h3{font-family:var(--serif);margin:0;font-size:1.45rem;font-weight:400;line-height:1.05}.sidequest-project__flow p,.sidequest-project__card-grid p,.sidequest-project__technical-list p{max-width:43rem;color:var(--ink-muted);margin:.65rem 0 0;font-size:.9rem;line-height:1.6}.sidequest-project__card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.sidequest-project__card-grid article{border:1px solid var(--line-strong);background:#fffdf76b;padding:1.25rem}.sidequest-project__technical-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.sidequest-project__technical-list article{border-top:1px solid var(--line);padding:1.2rem 0}.sidequest-project__status{grid-template-columns:.72fr 1.28fr;align-items:end;gap:clamp(2rem,9vw,10rem);display:grid}.sidequest-project__screenshots{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.sidequest-project__screenshots figure{min-width:0;margin:0}.sidequest-project__screenshot-frame{border:1px solid var(--line-strong);background:var(--paper-deep);display:block;overflow:hidden}.sidequest-project__screenshots img{aspect-ratio:9/19.55;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;display:block}.sidequest-project__screenshots figcaption{color:var(--rust);font:.66rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-top:.65rem}.sidequest-project__info{border:1px solid var(--line-strong);background:var(--paper-deep);grid-template-columns:.55fr 1.45fr;gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,4vw,3rem);display:grid}.sidequest-project__info h2{font-family:var(--serif);letter-spacing:-.05em;margin:.55rem 0 0;font-size:clamp(2.2rem,4vw,3.8rem);font-weight:400;line-height:.95}.sidequest-project__info dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:0;display:grid}.sidequest-project__info dl div{border-top:1px solid var(--line);padding-top:.7rem}.sidequest-project__back{margin:2rem 0 0}@media (width<=800px){.sidequest-project__hero,.sidequest-project__split,.sidequest-project__status,.sidequest-project__info{grid-template-columns:1fr}.sidequest-project__facts{grid-template-columns:repeat(3,minmax(0,1fr))}.sidequest-project__split .sidequest-project__prose{margin-top:1.5rem}.sidequest-project__screenshots{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=580px){.sidequest-project__facts,.sidequest-project__card-grid,.sidequest-project__technical-list,.sidequest-project__info dl{grid-template-columns:1fr}.sidequest-project__screenshots{grid-template-columns:repeat(2,minmax(0,1fr))}.sidequest-project__flow li{grid-template-columns:2.5rem minmax(0,1fr)}}@media (width<=380px){.sidequest-project__screenshots{grid-template-columns:1fr}.sidequest-project__screenshots figure{width:min(100%,17rem);margin-inline:auto}}body:has(.sidequest-product-shell){background:#1c1d18}body:has(.sidequest-product-shell):before{display:none}body:has(.sidequest-product-shell) .site-header{display:none}body:has(.sidequest-product-shell) .site-footer{display:none}.sidequest-product-shell{--sq-ink:#f4e6cb;--sq-paper:#1c1d18;--sq-card:#2b2c24;--sq-accent:#d49e7c;--sq-accent-deep:#c18a68;--sq-moss:#b0b998;--sq-ochre:#cfb384;--sq-line:#62624e;--sq-muted:#c8bfae;--sq-shadow:#08060358;--sq-fraunces:"Fraunces", Georgia, serif;--sq-sans:"Nunito Sans", Arial, sans-serif;--sq-mono:"DM Mono", monospace;--sq-width:min(100% - clamp(2.25rem, 7vw, 7rem), 72rem);min-height:100svh;color:var(--sq-ink);background:var(--sq-paper);font-family:var(--sq-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;overflow:hidden}.sidequest-product-shell a:focus-visible{outline:2px solid var(--sq-accent);outline-offset:3px}.sidequest-launch__header{z-index:3;border-bottom:1px solid color-mix(in srgb, var(--sq-line) 62%, transparent);background:color-mix(in srgb, var(--sq-paper) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative}.sidequest-launch__nav-inner{width:var(--sq-width);justify-content:space-between;align-items:center;gap:2rem;min-height:4.7rem;margin:0 auto;display:flex}.sidequest-launch__wordmark{color:var(--sq-ink);font:650 clamp(1.8rem, 4vw, 2.25rem) / .9 var(--sq-fraunces);letter-spacing:-.075em;text-decoration:none}.sidequest-launch__wordmark span{color:var(--sq-ochre);font:.85rem var(--sq-mono);margin-left:.35rem;display:inline-block;transform:translateY(-.5rem)rotate(12deg)}.sidequest-launch__nav-inner nav{align-items:center;gap:clamp(1rem,3vw,2rem);display:flex}.sidequest-launch__nav-inner nav a{min-height:2.75rem;color:var(--sq-muted);align-items:center;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.sidequest-launch__nav-inner nav a:hover{color:var(--sq-ink)}.sidequest-launch__nav-inner .sidequest-launch__nav-cta{border:1px solid var(--sq-accent-deep);color:#25251e;background:var(--sq-accent);min-height:2.75rem;box-shadow:2px 3px 0 var(--sq-accent-deep);border-radius:2px;padding:0 1rem}.sidequest-launch{z-index:1;width:var(--sq-width);margin:0 auto;position:relative}.sidequest-launch__hero{grid-template-columns:minmax(0,.95fr) minmax(20rem,.8fr);align-items:center;gap:clamp(3rem,8vw,7rem);min-height:min(43rem,100svh - 4.7rem);padding:clamp(4.5rem,9vw,7rem) 0;display:grid}.sidequest-launch__hero-copy{max-width:35rem}.sidequest-launch__margin-note{color:var(--sq-moss);font:500 .72rem var(--sq-mono);margin:0 0 1.6rem .25rem;transform:rotate(-1deg)}.sidequest-launch__margin-note:before{color:var(--sq-accent);content:"↗ ";font-size:.95rem}.sidequest-launch__welcome-copy{border-left:2px solid color-mix(in srgb, var(--sq-accent) 68%, transparent);padding-left:1.25rem;position:relative}.sidequest-launch__welcome-copy:after{border:1px solid var(--sq-accent);background:var(--sq-paper);content:"";border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:-.5rem;left:-.32rem}.sidequest-launch__eyebrow,.sidequest-launch__activity-type{color:var(--sq-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.65rem;font-weight:700;line-height:1.35}.sidequest-launch__hero h1,.sidequest-launch__section-heading h2,.sidequest-launch__why h2,.sidequest-launch__filters h2,.sidequest-launch__cta h2{font-family:var(--sq-fraunces);letter-spacing:-.065em;margin:0;font-weight:600;line-height:.98}.sidequest-launch__hero h1{max-width:31rem;font-size:clamp(3.5rem,7vw,5.6rem)}.sidequest-launch__welcome-copy>p:last-child{max-width:31rem;color:var(--sq-muted);margin:1.4rem 0 0;font-size:1rem;line-height:1.62}.sidequest-launch__actions{width:min(100%,23rem);margin:2rem 0 0 1.25rem}.sidequest-launch__button{border-radius:2px;justify-content:space-between;align-items:center;min-height:3.5rem;padding:.9rem 1.15rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform .14s,box-shadow .14s,background-color .14s;display:flex}.sidequest-launch__button--primary{border:1px solid var(--sq-accent-deep);color:#25251e;background:var(--sq-accent);box-shadow:3px 4px 0 var(--sq-accent-deep)}.sidequest-launch__button--primary:hover{color:#25251e;box-shadow:4px 5px 0 var(--sq-accent-deep);transform:translate(-1px,-1px)}.sidequest-launch__button--primary:active{box-shadow:1px 1px 0 var(--sq-accent-deep);transform:translate(2px,3px)}.sidequest-launch__text-button{border-bottom:1px solid var(--sq-moss);color:var(--sq-moss);margin:1.45rem auto 0;padding-bottom:.25rem;font-size:.82rem;font-weight:700;text-decoration:none;display:table;transform:rotate(-.4deg)}.sidequest-launch__activity-card,.sidequest-launch__why-card{border:1px solid var(--sq-line);background:var(--sq-card);box-shadow:5px 6px 0 var(--sq-shadow), inset 0 0 0 3px color-mix(in srgb, var(--sq-card) 84%, var(--sq-line));border-radius:1px;position:relative}.sidequest-launch__activity-card{padding:clamp(1.5rem,3vw,2.25rem)}.sidequest-launch__activity-card:before,.sidequest-launch__why-card:before{background:color-mix(in srgb, var(--sq-ochre) 38%, transparent);opacity:.72;content:"";width:3.65rem;height:.9rem;position:absolute;top:-.45rem;left:15%;transform:rotate(-2deg)}.sidequest-launch__activity-card:after{color:var(--sq-moss);opacity:.72;content:"✦";font-size:.95rem;position:absolute;bottom:.75rem;right:1rem}.sidequest-launch__card-top{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem;display:flex}.sidequest-launch__stamp{border:1px solid var(--sq-accent-deep);color:var(--sq-accent);font:500 .58rem / 1 var(--sq-mono);letter-spacing:.075em;text-transform:uppercase;padding:.35rem .55rem .3rem;display:inline-block;transform:rotate(-1.5deg)}.sidequest-launch__heart{color:var(--sq-ink);font-size:1.5rem;line-height:1}.sidequest-launch__activity-type{color:var(--sq-moss);font-size:.58rem}.sidequest-launch__activity-card h2,.sidequest-launch__activity-card h3{font:600 clamp(2rem, 4vw, 3.2rem) / .99 var(--sq-fraunces);letter-spacing:-.06em;margin:0 0 1rem}.sidequest-launch__activity-card h3{font-size:clamp(1.8rem,3vw,2.55rem)}.sidequest-launch__activity-card>p:not(.sidequest-launch__activity-type){color:var(--sq-muted);margin:0;font-size:.95rem;line-height:1.58}.sidequest-launch__doodle-divider{color:var(--sq-ochre);align-items:center;gap:.5rem;margin:1.45rem 0 1.15rem;display:flex}.sidequest-launch__doodle-divider:before,.sidequest-launch__doodle-divider i{opacity:.7;content:"";background:currentColor;height:1px;display:block}.sidequest-launch__doodle-divider:before{width:2.4rem;transform:rotate(-1deg)}.sidequest-launch__doodle-divider i{width:4.5rem;transform:rotate(1deg)}.sidequest-launch__doodle-divider span{font-size:.75rem;transform:rotate(12deg)}.sidequest-launch__meta{flex-wrap:wrap;gap:.45rem;margin:0 0 .6rem;display:flex}.sidequest-launch__meta span{border-bottom:1px solid var(--sq-line);color:var(--sq-muted);padding-bottom:.25rem;font-size:.68rem;font-weight:700}.sidequest-launch__meta span:not(:last-child):after{color:var(--sq-ochre);content:"·";margin-left:.45rem}.sidequest-launch__section{border-top:1px solid color-mix(in srgb, var(--sq-line) 65%, transparent);padding:clamp(4.5rem,9vw,7rem) 0;scroll-margin-top:5rem}.sidequest-launch__section-heading{max-width:46rem;margin-bottom:clamp(2.5rem,5vw,3.75rem)}.sidequest-launch__section-heading h2,.sidequest-launch__why h2,.sidequest-launch__filters h2,.sidequest-launch__cta h2{font-size:clamp(2.8rem,6vw,4.5rem)}.sidequest-launch__section-heading>p:last-child,.sidequest-launch__filters-copy>p:last-child{max-width:38rem;color:var(--sq-muted);margin:1.1rem 0 0;font-size:1rem;line-height:1.65}.sidequest-launch__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.sidequest-launch__steps li{border:1px solid var(--sq-line);background:var(--sq-card);min-width:0;box-shadow:2px 3px 0 var(--sq-shadow);border-radius:1px;padding:1.5rem;position:relative}.sidequest-launch__steps li>span{color:var(--sq-accent);font:500 .65rem var(--sq-mono);letter-spacing:.1em}.sidequest-launch__steps h3{font:600 1.65rem / 1.1 var(--sq-fraunces);margin:2.5rem 0 .65rem}.sidequest-launch__steps p{color:var(--sq-muted);margin:0;font-size:.9rem;line-height:1.6}.sidequest-launch__why,.sidequest-launch__filters{grid-template-columns:minmax(0,.95fr) minmax(0,.85fr);align-items:center;gap:clamp(3rem,8vw,7rem);display:grid}.sidequest-launch__why-card{padding:clamp(1.6rem,4vw,2.5rem)}.sidequest-launch__why-card p{color:var(--sq-muted);font:500 clamp(1.1rem, 2vw, 1.35rem) / 1.65 var(--sq-fraunces);margin:0}.sidequest-launch__why-card p+p{color:var(--sq-ink);margin-top:1.25rem}.sidequest-launch__examples{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2rem);display:grid}.sidequest-launch__examples .sidequest-launch__activity-card{flex-direction:column;min-height:29rem;transition:transform .14s,box-shadow .14s;display:flex}.sidequest-launch__examples .sidequest-launch__activity-card:hover{box-shadow:7px 8px 0 var(--sq-shadow), inset 0 0 0 3px color-mix(in srgb, var(--sq-card) 84%, var(--sq-line));transform:translate(-1px,-1px)}.sidequest-launch__examples .sidequest-launch__meta{margin-top:auto}.sidequest-launch__filter-groups{gap:1.25rem;display:grid}.sidequest-launch__filter-groups>div{border-bottom:1px solid var(--sq-line);padding-bottom:1.25rem}.sidequest-launch__filter-groups h3{margin:0 0 .65rem;font-size:.85rem;font-weight:700}.sidequest-launch__filter-groups ul{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.sidequest-launch__filter-groups li{border:1px solid var(--sq-line);color:var(--sq-ink);background:var(--sq-card);border-radius:1px;padding:.5rem .65rem;font-size:.75rem;font-weight:700}.sidequest-launch__filter-groups .sidequest-launch__chip--selected{border-color:var(--sq-ink);color:var(--sq-paper);background:var(--sq-ink)}.sidequest-launch__section-heading--centered{text-align:center;margin-left:auto;margin-right:auto}.sidequest-launch__section-heading--centered>p:last-child{margin-left:auto;margin-right:auto}.sidequest-launch__preview{border:1px solid var(--sq-line);background:var(--sq-card);max-width:57rem;box-shadow:5px 6px 0 var(--sq-shadow);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(1.5rem,5vw,4rem);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.sidequest-launch__preview figure{text-align:center;min-width:0;margin:0}.sidequest-launch__preview-supporting{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,2vw,1.5rem);display:grid}.sidequest-launch__phone-frame{border:1px solid var(--sq-line);background:var(--sq-paper);max-width:19rem;box-shadow:3px 4px 0 var(--sq-shadow);border-radius:2px;margin:0 auto;padding:.45rem}.sidequest-launch__preview-supporting .sidequest-launch__phone-frame{max-width:12.5rem}.sidequest-launch__phone-frame img{border:1px solid color-mix(in srgb, var(--sq-line) 60%, transparent);-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.sidequest-launch__preview figcaption{color:var(--sq-muted);font:.62rem var(--sq-mono);letter-spacing:.07em;text-transform:uppercase;margin-top:.8rem}.sidequest-launch__cta{text-align:center;max-width:48rem;margin:0 auto;padding:clamp(5rem,11vw,8rem) 0}.sidequest-launch__cta>p:not(.sidequest-launch__eyebrow){color:var(--sq-muted);font:500 1.35rem var(--sq-fraunces);margin:1rem 0 2rem}.sidequest-launch__cta .sidequest-launch__button{width:min(100%,22rem);margin:0 auto}.sidequest-launch__footer{z-index:1;border-top:1px solid color-mix(in srgb, var(--sq-line) 65%, transparent);position:relative}.sidequest-launch__footer>div{width:var(--sq-width);justify-content:space-between;align-items:center;gap:1.5rem;min-height:5rem;margin:0 auto;display:flex}.sidequest-launch__footer a{color:var(--sq-muted);font-size:.78rem;font-weight:700;text-decoration:none}.sidequest-launch__footer a:hover{color:var(--sq-ink)}@media (width<=850px){.sidequest-launch__hero{grid-template-columns:1fr;min-height:0}.sidequest-launch__hero-copy{max-width:39rem}.sidequest-launch__activity-card{width:min(100%,34rem)}.sidequest-launch__why,.sidequest-launch__filters{grid-template-columns:1fr;gap:2.5rem}}@media (width<=700px){.sidequest-launch__nav-inner nav a:not(.sidequest-launch__nav-cta){display:none}.sidequest-launch__hero{padding:4rem 0 5rem}.sidequest-launch__steps,.sidequest-launch__examples{grid-template-columns:1fr}.sidequest-launch__examples .sidequest-launch__activity-card{width:100%;min-height:0}.sidequest-launch__preview{grid-template-columns:1fr;gap:2.5rem}}@media (width<=500px){.sidequest-product-shell{--sq-width:calc(100% - 2rem)}.sidequest-launch__nav-inner{min-height:4.25rem}.sidequest-launch__wordmark{font-size:1.9rem}.sidequest-launch__nav-inner .sidequest-launch__nav-cta{min-height:2.75rem;padding:0 .8rem}.sidequest-launch__hero{gap:3.25rem;padding-top:3.25rem}.sidequest-launch__hero h1{text-wrap:balance;font-size:clamp(3.25rem,16vw,4.3rem)}.sidequest-launch__welcome-copy{padding-left:1rem}.sidequest-launch__actions{width:calc(100% - 1rem);margin-left:1rem}.sidequest-launch__activity-card{width:100%;padding:1.5rem 1.25rem}.sidequest-launch__activity-card h2,.sidequest-launch__activity-card h3{font-size:clamp(2.05rem,10vw,2.8rem)}.sidequest-launch__meta{grid-template-columns:1fr;gap:.55rem;display:grid}.sidequest-launch__meta span:not(:last-child):after{content:none}.sidequest-launch__section{padding:4.5rem 0}.sidequest-launch__section-heading h2,.sidequest-launch__why h2,.sidequest-launch__filters h2,.sidequest-launch__cta h2{font-size:clamp(2.75rem,14vw,3.75rem)}.sidequest-launch__steps li{padding:1.35rem}.sidequest-launch__preview{width:calc(100% + .5rem);margin-left:-.25rem;padding:1rem}.sidequest-launch__preview-supporting{gap:.65rem}.sidequest-launch__footer>div{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.4rem 0}}@media (width<=360px){.sidequest-launch__wordmark{font-size:1.7rem}.sidequest-launch__nav-inner .sidequest-launch__nav-cta{font-size:.72rem}.sidequest-launch__preview-supporting{grid-template-columns:1fr;gap:2rem}}@media (prefers-reduced-motion:reduce){.sidequest-product-shell *,.sidequest-product-shell :before,.sidequest-product-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.onetask-case-study{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.onetask-hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.onetask-hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4.5rem,9vw,8.5rem);font-weight:400;line-height:.84}.onetask-hero>div>p:not(.eyebrow){max-width:41rem;color:var(--ink-muted);margin:1.5rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,5vw,4rem);display:grid}.feature-grid article{border:1px solid var(--line-strong);background:#fffdf76b;padding:1.35rem}.feature-grid h3{font-family:var(--serif);margin:0;font-size:1.45rem;font-weight:400;line-height:1}.feature-grid p{color:var(--ink-muted);margin:.85rem 0 0;font-size:.9rem;line-height:1.55}.terminal{background:#24211e;border:1px solid #3d3934;overflow:hidden;box-shadow:0 12px 24px #2a211926}.terminal__bar{background:#342f2a;align-items:center;gap:.4rem;min-height:2.25rem;padding:0 .75rem;display:flex}.terminal__bar span{background:#ac8061;border-radius:50%;width:.55rem;height:.55rem}.terminal__bar span:nth-child(2){background:#c8a465}.terminal__bar span:nth-child(3){background:#789071}.terminal__bar strong{color:#d7ccbb;font:.65rem var(--mono);margin-left:.35rem}.terminal pre{color:#eee6da;font:clamp(.7rem, 1.5vw, .84rem)/1.55 var(--mono);white-space:pre;margin:0;padding:1.15rem;overflow-x:auto}.command-flow{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.command-flow li{border-top:1px solid var(--line);color:var(--ink-muted);grid-template-columns:minmax(7rem,.35fr) 1fr;gap:1rem;padding:.85rem 0;font-size:.92rem;line-height:1.55;display:grid}.command-flow code{color:var(--rust);font:.76rem var(--mono)}.timeline--five{grid-template-columns:repeat(5,1fr)}.status-groups{gap:1.6rem;display:grid}.status-groups h3{color:var(--rust);font:.7rem var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .7rem}.status-groups ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.status-groups li{color:var(--ink-muted);padding-left:1.1rem;font-size:.92rem;line-height:1.55;position:relative}.status-groups li:before{color:var(--rust);content:"—";position:absolute;left:0}.onetask-cta{border:1px solid var(--line-strong);background:var(--paper-deep);margin-top:clamp(3.5rem,7vw,6rem);padding:clamp(2rem,5vw,4rem)}.onetask-cta h2{font-family:var(--serif);letter-spacing:-.05em;margin:.5rem 0 0;font-size:clamp(2.4rem,5vw,4.5rem);font-weight:400;line-height:.95}.onetask-cta>p:not(.eyebrow){max-width:40rem;color:var(--ink-muted);margin:1rem 0 1.6rem;line-height:1.65}@media (width<=800px){.onetask-hero,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.onetask-hero>div:first-child{grid-column:1/-1}.timeline--five{grid-template-columns:repeat(2,1fr)}}@media (width<=580px){.onetask-hero,.feature-grid,.timeline--five{grid-template-columns:1fr}.command-flow li{grid-template-columns:1fr;gap:.35rem}.terminal pre{padding:.9rem}}.password-manager{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.password-manager__hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.password-manager__hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4rem,9vw,8.5rem);font-weight:400;line-height:.84}.password-manager__subtitle{color:var(--rust);font:.72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:1.25rem 0 0}.password-manager__summary{max-width:44rem;color:var(--ink-muted);margin:1.3rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.password-manager__facts{align-content:end;gap:1rem;margin:0;display:grid}.password-manager__facts div{border-top:1px solid var(--line);padding-top:.75rem}.password-manager__facts dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.password-manager__facts dd{margin:.42rem 0 0;font-size:.92rem;line-height:1.5}.password-manager__section,.password-manager__screenshots{border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,6rem) 0}.password-manager__screenshots{grid-template-columns:minmax(11rem,.55fr) minmax(0,1.45fr);align-items:center;column-gap:clamp(2rem,7vw,7rem);display:grid}.password-manager__screenshots>.eyebrow{grid-area:1/1}.password-manager__screenshots>h2{grid-area:2/1}.password-manager__section>h2,.password-manager__split h2,.password-manager__screenshots>h2{max-width:18ch;font-family:var(--serif);letter-spacing:-.055em;margin:.55rem 0 0;font-size:clamp(2.35rem,4.7vw,4.7rem);font-weight:400;line-height:.94}.password-manager__split{grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,9vw,10rem);display:grid}.password-manager__prose{max-width:44rem;margin-top:clamp(1.5rem,3vw,2.4rem)}.password-manager__split .password-manager__prose{margin-top:0}.password-manager__prose p{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.75}.password-manager__prose p+p{margin-top:1.15rem}.password-manager__prose code{color:var(--rust);font:.85em var(--mono)}.password-manager__prose strong{color:var(--ink);font-weight:500}.password-manager__architecture{border:1px solid var(--line-strong);text-align:center;background:#ebe0d06b;flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;margin-top:clamp(2rem,4vw,3rem);padding:clamp(1.3rem,3vw,2rem);display:flex}.password-manager__architecture div{border:1px solid var(--line-strong);background:var(--paper);padding:.7rem .9rem;font-size:.82rem}.password-manager__architecture div:nth-of-type(3){border-color:var(--rust)}.password-manager__architecture span{color:var(--rust);font:1.1rem var(--mono)}.password-manager__feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.password-manager__feature-grid article{border:1px solid var(--line-strong);background:#fffdf76b;align-items:end;min-height:6.8rem;padding:1.1rem;display:grid}.password-manager__feature-grid h3{font-family:var(--serif);margin:0;font-size:1.35rem;font-weight:400;line-height:1.05}.password-manager__detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.password-manager__detail-grid article{border-top:1px solid var(--line-strong);padding:1.1rem}.password-manager__detail-grid h3{color:var(--rust);font:.72rem var(--mono);letter-spacing:.06em;text-transform:uppercase;margin:0}.password-manager__detail-grid p{color:var(--ink-muted);margin:.7rem 0 0;font-size:.9rem;line-height:1.55}.password-manager__screenshot-placeholder{border:1px dashed var(--line-strong);text-align:center;background:#ebe0d03d;place-content:center;justify-items:center;gap:.8rem;min-height:clamp(16rem,38vw,28rem);margin-top:clamp(2rem,4vw,3rem);padding:2rem;display:grid}.password-manager__screenshot-placeholder span{color:var(--rust);font:.66rem var(--mono);letter-spacing:.07em;text-transform:uppercase}.password-manager__screenshot-placeholder strong{max-width:30rem;font-family:var(--serif);font-size:clamp(1.3rem,2.5vw,2rem);font-weight:400}.password-manager__screenshot-frame{border:1px solid var(--line-strong);background:#24211e;grid-area:1/2/3;justify-self:end;max-width:38rem;margin:0;overflow:hidden}.password-manager__screenshot-frame img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.password-manager__info{border:1px solid var(--line-strong);background:var(--paper-deep);padding:clamp(2rem,4vw,3rem)}.password-manager__info h2{font-family:var(--serif);letter-spacing:-.05em;margin:.55rem 0 0;font-size:clamp(2.2rem,4vw,3.8rem);font-weight:400;line-height:.95}.password-manager__info dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:2rem 0 0;display:grid}.password-manager__info dl div{border-top:1px solid var(--line);padding-top:.7rem}.password-manager__info dt{color:var(--rust);font:.66rem var(--mono);letter-spacing:.07em;text-transform:uppercase}.password-manager__info dd{margin:.4rem 0 0;font-size:.9rem;line-height:1.45}.password-manager__placeholder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.password-manager__placeholder-grid article{aspect-ratio:16/10;border:1px dashed var(--line-strong);text-align:center;background:#ebe0d03d;align-content:center;justify-items:center;gap:.7rem;padding:1rem;display:grid}.password-manager__placeholder-grid span{color:var(--rust);font:.64rem var(--mono);letter-spacing:.07em;text-transform:uppercase}.password-manager__placeholder-grid strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}.password-manager__back{margin:2rem 0 0}@media (width<=800px){.password-manager__hero,.password-manager__split{grid-template-columns:1fr}.password-manager__facts{grid-template-columns:repeat(3,minmax(0,1fr))}.password-manager__split .password-manager__prose{margin-top:1.5rem}.password-manager__feature-grid,.password-manager__placeholder-grid,.password-manager__detail-grid,.password-manager__info dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=580px){.password-manager__screenshots{display:block}.password-manager__screenshot-frame{margin-top:2rem}.password-manager__facts,.password-manager__feature-grid,.password-manager__placeholder-grid,.password-manager__detail-grid,.password-manager__info dl{grid-template-columns:1fr}.password-manager__architecture{flex-direction:column}.password-manager__architecture span{transform:rotate(90deg)}}.towtruck-case-study{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.towtruck-hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.towtruck-hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4.5rem,9vw,8.5rem);font-weight:400;line-height:.84}.towtruck-hero>div>p:not(.eyebrow){max-width:42rem;color:var(--ink-muted);margin:1.5rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.vision-flow{border:1px solid var(--line-strong);text-align:center;background:#ebe0d06b;justify-items:center;gap:.38rem;padding:clamp(1.2rem,3vw,2rem);display:grid}.vision-flow div{border:1px solid var(--line-strong);background:var(--paper);width:min(100%,27rem);padding:.66rem 1rem;font-size:.86rem}.vision-flow div:nth-of-type(3){border-color:var(--rust)}.vision-flow span{color:var(--rust);font-family:var(--mono)}.learning-timeline{gap:0;margin:clamp(2rem,5vw,4rem) 0 0;padding:0;list-style:none;display:grid}.learning-timeline li{border-top:1px solid var(--line);grid-template-columns:6rem minmax(0,1fr);gap:1.25rem;padding:1.4rem 0;display:grid}.learning-timeline h3{font-family:var(--serif);margin:0;font-size:clamp(1.55rem,2.5vw,2.1rem);font-weight:400;line-height:1}.learning-timeline li div>p{max-width:43rem;color:var(--ink-muted);margin:.8rem 0 0;line-height:1.65}.two-lists details{border-top:1px solid var(--line);padding-top:1.3rem}.two-lists summary{cursor:pointer;color:var(--rust);font:.72rem var(--mono);letter-spacing:.06em;text-transform:uppercase}.two-lists details .tag-list{margin-top:1rem}.towtruck-takeaway{border:1px solid var(--line-strong);background:var(--paper-deep);margin-top:clamp(3.5rem,7vw,6rem);padding:clamp(2rem,5vw,4rem)}.towtruck-takeaway h2{max-width:18ch;font-family:var(--serif);letter-spacing:-.05em;margin:.5rem 0 0;font-size:clamp(2.4rem,5vw,4.5rem);font-weight:400;line-height:.95}.towtruck-takeaway>p:not(.eyebrow){max-width:43rem;color:var(--ink-muted);margin:1rem 0 1.6rem;line-height:1.65}@media (width<=800px){.towtruck-hero{grid-template-columns:1fr}.learning-timeline li{grid-template-columns:4rem minmax(0,1fr)}}@media (width<=580px){.learning-timeline li{grid-template-columns:1fr;gap:.65rem}}.towtruck-screenshots{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:2rem;display:grid}.towtruck-screenshots figure{min-width:0;margin:0}.towtruck-screenshots figure:first-child{grid-column:1/-1}.towtruck-screenshots img{border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;height:auto;display:block}.towtruck-screenshots figcaption{color:var(--ink-muted);margin-top:.8rem;font-size:.88rem;line-height:1.6}@media (width<=700px){.towtruck-screenshots{grid-template-columns:minmax(0,1fr)}}.workout-journal{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.workout-journal__hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.workout-journal__hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4.2rem,9vw,8.5rem);font-weight:400;line-height:.84}.workout-journal__subtitle{color:var(--rust);font:.75rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:1.2rem 0 0}.workout-journal__status{border:1px solid var(--moss);color:var(--moss);font:.65rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:.9rem 0 0;padding:.35rem .5rem;display:inline-block}.workout-journal__summary{max-width:44rem;color:var(--ink-muted);margin:1.35rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.workout-journal__facts,.workout-journal__sidebar dl{align-content:end;gap:1rem;margin:0;display:grid}.workout-journal__facts div,.workout-journal__sidebar dl div{border-top:1px solid var(--line);padding-top:.75rem}.workout-journal__facts dt,.workout-journal__sidebar dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.workout-journal__facts dd,.workout-journal__sidebar dd{color:var(--ink);margin:.42rem 0 0;font-size:.92rem;line-height:1.5}.workout-journal__content{grid-template-columns:minmax(0,1fr) minmax(13rem,.26fr);gap:clamp(2.5rem,8vw,8rem);display:grid}.workout-journal__main{min-width:0}.workout-journal__section{border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,6rem) 0}.workout-journal__section h2{max-width:20ch;font-family:var(--serif);letter-spacing:-.055em;margin:.55rem 0 0;font-size:clamp(2.35rem,4.5vw,4.6rem);font-weight:400;line-height:.94}.workout-journal__prose{max-width:44rem;margin-top:clamp(1.5rem,3vw,2.4rem)}.workout-journal__prose p{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.75}.workout-journal__prose p+p{margin-top:1.15rem}.workout-journal__feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.workout-journal__feature-grid article{border:1px solid var(--line-strong);background:#fffdf76b;align-items:end;min-height:7.2rem;padding:1.1rem;display:grid}.workout-journal__feature-grid h3{font-family:var(--serif);margin:0;font-size:1.35rem;font-weight:400;line-height:1.05}.workout-journal__sidebar{border:1px solid var(--line-strong);background:#ebe0d052;align-self:start;margin-top:clamp(3.5rem,7vw,6rem);padding:1.25rem;position:sticky;top:2rem}.workout-journal__sidebar dl{margin-top:1.25rem}.workout-journal__screenshots{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.workout-journal__screenshots article{gap:.75rem;min-width:0;display:grid}.workout-journal__screenshots img{aspect-ratio:16/10;border:1px solid var(--line-strong);background:var(--paper-deep);object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;display:block}.workout-journal__screenshots strong{color:var(--rust);font-family:var(--serif);font-size:clamp(1.25rem,2.5vw,1.7rem);font-weight:400}@media (width<=800px){.workout-journal__hero,.workout-journal__content{grid-template-columns:1fr}.workout-journal__facts{grid-template-columns:repeat(3,minmax(0,1fr))}.workout-journal__sidebar{margin-top:0;position:static}.workout-journal__sidebar dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=580px){.workout-journal__facts,.workout-journal__feature-grid,.workout-journal__screenshots,.workout-journal__sidebar dl{grid-template-columns:1fr}.workout-journal__section h2{max-width:16ch}}.notes-project{--notes-accent:var(--moss);padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}.notes-project__hero{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:clamp(2.5rem,8vw,8rem);padding:2.3rem 0 clamp(3.5rem,7vw,6rem);display:grid}.notes-project__hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:.55rem 0 0;font-size:clamp(4.2rem,9vw,8.5rem);font-weight:400;line-height:.84}.notes-project__subtitle{color:var(--rust);font:.75rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:1.2rem 0 0}.notes-project__status{border:1px solid var(--notes-accent);color:var(--notes-accent);font:.65rem var(--mono);letter-spacing:.07em;text-transform:uppercase;margin:.9rem 0 0;padding:.35rem .5rem;display:inline-block}.notes-project__summary{max-width:44rem;color:var(--ink-muted);margin:1.35rem 0 0;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65}.notes-project__facts,.notes-project__sidebar dl{align-content:end;gap:1rem;margin:0;display:grid}.notes-project__facts div,.notes-project__sidebar dl div{border-top:1px solid var(--line);padding-top:.75rem}.notes-project__facts dt,.notes-project__sidebar dt{color:var(--rust);font:.68rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.notes-project__facts dd,.notes-project__sidebar dd{color:var(--ink);margin:.42rem 0 0;font-size:.92rem;line-height:1.5}.notes-project__layout{grid-template-columns:minmax(0,1fr) minmax(13rem,.26fr);gap:clamp(2.5rem,8vw,8rem);display:grid}.notes-project__main{min-width:0}.notes-project__section{border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,6rem) 0}.notes-project__section--last{border-bottom:0}.notes-project__section h2{max-width:20ch;font-family:var(--serif);letter-spacing:-.055em;margin:.55rem 0 0;font-size:clamp(2.35rem,4.5vw,4.6rem);font-weight:400;line-height:.94}.notes-project__prose{max-width:44rem;margin-top:clamp(1.5rem,3vw,2.4rem)}.notes-project__prose p{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.75}.notes-project__prose p+p{margin-top:1.15rem}.notes-project__feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.notes-project__feature-grid article{border:1px solid var(--line-strong);background:#fffdf76b;min-width:0;padding:1.25rem}.notes-project__feature-grid span,.notes-project__architecture div>span{color:var(--rust);font:.66rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.notes-project__feature-grid h3,.notes-project__screenshots h3{font-family:var(--serif);margin:1.6rem 0 0;font-size:clamp(1.45rem,2.5vw,1.85rem);font-weight:400;line-height:1.04}.notes-project__feature-grid p,.notes-project__screenshots p{color:var(--ink-muted);margin:.75rem 0 0;font-size:.9rem;line-height:1.65}.notes-project__architecture{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:grid}.notes-project__architecture>div{border:1px solid var(--line-strong);background:#ebe0d040;align-content:space-between;gap:.85rem;min-width:0;min-height:10rem;padding:1.1rem;display:grid}.notes-project__architecture>span{color:var(--notes-accent);font:1rem var(--mono)}.notes-project__architecture strong{font-family:var(--serif);font-size:1.35rem;font-weight:400;line-height:1.1}.notes-project__architecture small{color:var(--ink-muted);font-size:.76rem;line-height:1.5}.notes-project__screenshots{grid-template-columns:minmax(0,1fr);gap:clamp(2rem,5vw,3.5rem);margin-top:clamp(2rem,4vw,3rem);display:grid}.notes-project__screenshots article{min-width:0}.notes-project__screenshots img{border:1px solid var(--line-strong);background:var(--paper-deep);object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.notes-project__screenshots h3{margin-top:1rem}.notes-project__sidebar{border:1px solid var(--line-strong);background:#ebe0d052;align-self:start;margin-top:clamp(3.5rem,7vw,6rem);padding:1.25rem;position:sticky;top:2rem}.notes-project__sidebar dl{margin-top:1.25rem}.notes-project__private-note{border-top:1px solid var(--line);color:var(--ink-muted);margin:1.5rem 0 0;padding-top:1rem;font-size:.77rem;line-height:1.6}@media (width<=900px){.notes-project__architecture{grid-template-columns:1fr}.notes-project__architecture>span{justify-self:center;transform:rotate(90deg)}}@media (width<=800px){.notes-project__hero,.notes-project__layout{grid-template-columns:1fr}.notes-project__facts{grid-template-columns:repeat(3,minmax(0,1fr))}.notes-project__sidebar{margin-top:0;position:static}.notes-project__sidebar dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.notes-project__feature-grid{grid-template-columns:1fr}}@media (width<=480px){.notes-project__facts,.notes-project__sidebar dl{grid-template-columns:1fr}.notes-project__section h2{max-width:16ch}}.private-library{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#1a140f;--paper-deep:#130f0c;--surface:#241c16;--ink:#f0e5cf;--ink-muted:#c4b69e;--rust:#c6a46a;--moss:#8d9e7b;--line:#574531;--line-strong:#8c7350;isolation:isolate;color:var(--ink);background:var(--paper-deep);position:relative;overflow:clip}.private-library:before,.private-library:after{z-index:-1;pointer-events:none;content:"";position:absolute;inset:0}.private-library:before{background:repeating-linear-gradient(2deg,#b78a5412 0,#b78a5400 1px,#0000 1px 7px),repeating-linear-gradient(92deg,#07050300 0,#07050324 2px,#0000 3px 9rem),linear-gradient(90deg,#17110e,#251b13 35%,#211a13 70%,#17120e);box-shadow:inset 0 1.5rem 4rem #08060480,inset 0 -2rem 4rem #08060480}.private-library:after{opacity:1;background:radial-gradient(60rem 44rem at calc(100% - 5rem) 0,#e4a34d38,#0000 75%),radial-gradient(45rem 42rem at 10% 60%,#a56b251b,#0000 75%);transition:opacity .45s}.private-library[data-lights=off]:after{opacity:0}.private-library .books-page{padding:clamp(3rem,5vw,4.25rem) 0 clamp(4rem,7vw,7rem);position:relative}.private-library .books-intro{min-height:10.5rem;padding-right:13rem}.private-library .books-intro h1{font:400 clamp(4rem, 7vw, 6.75rem)/1 var(--serif);letter-spacing:-.055em;text-shadow:0 3px 16px #09070455;margin:0}.private-library .books-intro>p{max-width:32rem;color:var(--ink-muted);margin:1.5rem 0 0;font-size:1.05rem;line-height:1.75}.private-library .library-light{width:11rem;height:17rem;position:absolute;top:0;right:.5rem}.private-library .library-light__fixture{pointer-events:none;width:100%;height:7rem;position:relative}.private-library .library-light__stem{background:linear-gradient(90deg,#71522d,#c2a16a 50%,#4b371f);width:4px;height:3.7rem;position:absolute;top:0;left:calc(50% - 2px);box-shadow:3px 0 8px #0008}.private-library .library-light__shade{z-index:1;background:linear-gradient(100deg,#15231a 5%,#3e5038 45%,#223627 75%,#132217);border:1px solid #9d8152;border-bottom:4px solid #af8b50;border-radius:80% 80% 12% 12%;width:8.6rem;height:3.4rem;position:absolute;top:3.5rem;left:1.2rem;box-shadow:inset 0 2px 2px #b1b77a27,0 10px 18px #08060380}.private-library .library-light__bulb{opacity:.95;background:#f1c780;border-radius:50%;width:7rem;height:.6rem;transition:opacity .45s;position:absolute;top:6.6rem;left:2rem;box-shadow:0 6px 28px 8px #f7b75650}.private-library[data-lights=off] .library-light__bulb{opacity:.12}.private-library .library-light__chain{z-index:2;color:#d6b780;touch-action:manipulation;background:0 0;border:0;border-radius:4px;flex-direction:column;justify-content:flex-start;align-items:center;width:4.5rem;min-height:9rem;padding:0 0 .75rem;display:flex;position:absolute;top:6.8rem;right:-.15rem}.private-library .library-light__chain-assembly{transform-origin:top;flex-direction:column;align-items:center;display:flex}.private-library .library-light__links{filter:drop-shadow(2px 2px 1px #0009);background:repeating-linear-gradient(#c5a371 0 2px,#5b432a 2px 4px,#0000 4px 5px);width:3px;height:5rem}.private-library .library-light__pull{background:linear-gradient(90deg,#584025,#c5a06a 45%,#61462a);border:1px solid #c1a06b;border-radius:45% 45% 50% 50%;width:10px;height:20px;box-shadow:2px 3px 6px #0008}.private-library .library-light__label{font:.58rem/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-top:.7rem}.private-library .library-light__chain:hover .library-light__pull{border-color:#f3d5a2}.private-library .chain-is-pulled{animation:.45s ease-out library-chain-pull}@keyframes library-chain-pull{0%{transform:translateY(0)rotate(0)}30%{transform:translateY(8px)rotate(-2deg)}65%{transform:translateY(-2px)rotate(1.5deg)}to{transform:translateY(0)rotate(0)}}.private-library .library-light__help{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.private-library .books-range{border-top:1px solid var(--line-strong);justify-content:space-between;align-items:end;gap:1.5rem;margin-top:1rem;padding-top:1rem;display:flex}.private-library .reading-journal h2{font:400 clamp(1.75rem, 2.5vw, 2rem)/1.15 var(--serif);margin:0}.private-library .reading-journal p{color:var(--rust);font:.67rem/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin:.6rem 0 0}.private-library .year-picker{align-items:center;gap:.8rem;display:flex}.private-library .year-picker label,.private-library .book-controls label{color:var(--ink-muted);font:.73rem/1.5 var(--sans)}.private-library :is(select,input:not([type=checkbox])){border:1px solid var(--line-strong);min-width:0;max-width:100%;min-height:44px;color:var(--ink);font:.83rem var(--sans);background:#191812;border-radius:3px;padding:.65rem .8rem}.private-library input::placeholder{color:#a99c87}.private-library .book-stats{isolation:isolate;background:linear-gradient(110deg,#be97500c,#0000 70%),repeating-linear-gradient(0deg,#ffffff02 0 1px,#0000 1px 4px),#1b271f;border:1px solid #6e6245;border-radius:3px;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:1.5rem;display:grid;position:relative;box-shadow:inset 0 1px #cfb27c12,inset 0 0 24px #060e0840,0 6px 15px #08060330}.private-library .book-stats>div{border-right:1px solid #6e62454d;flex-direction:column;justify-content:center;min-width:0;min-height:6.5rem;padding:1.15rem 1.5rem;display:flex}.private-library .book-stats>div:last-child{border-right:0}.private-library .book-stats strong{font:400 clamp(2.1rem, 4vw, 3rem)/1 var(--serif);font-variant-numeric:lining-nums;order:-1}.private-library .book-stats span,.private-library .book-stats small{color:var(--ink-muted);font:.73rem/1.5 var(--sans);margin-top:.7rem}.private-library .book-stats small{margin-top:.2rem}.private-library .reading-goal{color:var(--ink-muted);grid-template-columns:minmax(12rem,1fr) minmax(10rem,1fr);align-items:center;gap:1.5rem;margin-top:1.25rem;font-size:.78rem;display:grid}.private-library .reading-goal>div{justify-content:space-between;gap:1rem;display:flex}.private-library .reading-goal__label{color:var(--rust)}.private-library .reading-goal progress{accent-color:#c4a365;background:#482b26;border:0;border-radius:0;width:100%;height:5px;overflow:hidden}.private-library progress::-webkit-progress-bar{background:#482b26}.private-library progress::-webkit-progress-value{background:linear-gradient(90deg,#84653d,#d5b773)}.private-library progress::-moz-progress-bar{background:#c4a365}.private-library .library{margin-top:clamp(2.75rem,4vw,3.5rem)}.private-library .library__heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.private-library .library__heading h2,.private-library .nightstand h2{font:400 clamp(2.2rem, 4vw, 3.5rem)/1.1 var(--serif);letter-spacing:-.035em;margin:0}.private-library .library-count{color:var(--rust);font:.75rem/1.5 var(--sans);margin:0}.private-library .library-filters{border-block:1px solid var(--line);margin-top:1rem}.private-library .library-filters>summary{min-height:3rem;color:var(--ink-muted);font:.82rem/1.5 var(--sans);cursor:pointer;justify-content:space-between;align-items:center;padding:.8rem 0;list-style:none;display:flex}.private-library .library-filters>summary:after{color:var(--rust);content:"+";font-size:1.2rem}.private-library .library-filters[open]>summary:after{content:"−"}.private-library summary::-webkit-details-marker{display:none}.private-library .book-controls{flex-wrap:wrap;align-items:end;gap:1rem;padding:.5rem 0 1.5rem;display:flex}.private-library .book-controls label{gap:.45rem;display:grid}.private-library .book-controls>label:first-child{flex:16rem}.private-library .book-controls button,.private-library .more-filters summary{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);font:.78rem/1.5 var(--sans);cursor:pointer;background:#261c16;border-radius:3px;padding:.7rem .9rem}.private-library .book-controls button:hover{background:#3c2b20}.private-library .favorite-filter{align-items:center;gap:.6rem;min-height:44px;display:flex!important}.private-library .favorite-filter input{accent-color:#c5a46e;width:1rem;height:1rem}.private-library .more-filters summary{list-style:none}.private-library .more-filters[open]{border:1px solid var(--line);background:#191812;flex-basis:100%;grid-template-columns:auto minmax(10rem,1fr) minmax(10rem,1fr);align-items:center;gap:1.25rem;padding:1rem;display:grid}.private-library .more-filters[open] summary{background:0 0;border:0;min-height:44px;padding:0}.private-library .book-grid{border:1px solid #5f432c;background:repeating-linear-gradient(90deg,#ffffff02 0 1px,#0000 1px 5px),linear-gradient(90deg,#121b15,#1b251c 48%,#121b15);border-inline:.8rem solid #38261a;border-radius:3px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem 0;margin-top:1.5rem;padding:0 1rem;display:grid;box-shadow:inset 0 1rem 2rem #0005,inset 0 0 0 2px #8d64462b,0 14px 35px #05030235}.private-library .book-card{isolation:isolate;min-width:0;box-shadow:none;background:0 0;border:0;padding:2.5rem 1.4rem 2rem;position:relative}.private-library .book-card:before{z-index:-1;opacity:1;pointer-events:none;content:"";background:radial-gradient(at 50% 0,#e8bd6916,#0000 70%);transition:opacity .45s;position:absolute;inset:0}.private-library[data-lights=off] .book-card:before{opacity:0}.private-library .book-card:after{z-index:-1;pointer-events:none;content:"";background:linear-gradient(#725032,#4d3420 20%,#5d4029 35%,#271b12 85%);border-top:1px solid #9d78484d;height:.65rem;position:absolute;top:19.5rem;left:-1rem;right:-1rem;box-shadow:0 8px 12px #0009,inset 0 -1px 1px #b4854b22}.private-library .book-card:hover{box-shadow:none;transform:none}.private-library .book-card__trigger{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:stretch;gap:2rem;padding:0;display:flex}.private-library .book-cover{width:11.333rem;max-width:100%;height:17rem;color:var(--ink);font:1.3rem/1.2 var(--serif);background:#384333;border:0;border-radius:2px 4px 4px 2px;flex-direction:column;justify-content:space-between;align-self:center;padding:1rem;transition:transform .22s;display:flex;position:relative;box-shadow:8px 10px 13px #03060390,-2px 0 2px #d6b37c18}.private-library .book-cover small{color:var(--ink-muted);font:.7rem var(--sans)}.private-library .book-cover:after{border-radius:inherit;pointer-events:none;content:"";background:linear-gradient(90deg,#0005,#0000 3%,#ffffff18 4%,#0000 8% 94%,#0003);position:absolute;inset:0}.private-library .book-cover img{border-radius:inherit;object-fit:contain;filter:brightness();width:100%;height:100%;transition:filter .45s;position:absolute;inset:0}.private-library[data-lights=off] .book-cover img{filter:brightness(.88)}.private-library .book-card__trigger:hover .book-cover{transform:translateY(-4px)}.private-library .book-card__copy{min-width:0}.private-library .book-card__meta,.private-library .book-card__rating{color:var(--rust);font:.65rem/1.8 var(--sans);letter-spacing:.075em;text-transform:uppercase;margin:0}.private-library .book-card__meta span{color:#d0a09a;margin-left:.6rem;display:inline-block}.private-library .book-card__title{font:400 clamp(1.5rem, 2.2vw, 1.9rem)/1.14 var(--serif);letter-spacing:-.025em;margin:.65rem 0 0}.private-library .book-card__author{color:var(--ink-muted);margin:.55rem 0 .8rem;font-size:.86rem;line-height:1.5}.private-library .book-card__cue{color:var(--ink-muted);font:.73rem/1.5 var(--sans);margin-top:1rem;display:inline-block}.private-library .book-card__trigger:hover .book-card__cue{color:var(--ink)}.private-library .book-card--expanded{grid-column:1/-1}.private-library .book-card--expanded .book-card__trigger{grid-template-columns:11.333rem minmax(0,1fr);align-items:center;gap:3rem;display:grid}.private-library .book-card--expanded .book-cover{justify-self:center}.private-library .book-details{border-top:1px solid var(--line);grid-template-columns:7rem minmax(0,1fr);gap:2rem;margin-top:2rem;padding-top:2rem;display:grid}.private-library .book-details__cover{width:100%}.private-library .book-details__cover img{width:100%;height:auto;display:block;box-shadow:5px 7px 15px #0006}.private-library .book-details h4{font:400 clamp(1.7rem, 3vw, 2.4rem)/1.15 var(--serif);margin:0}.private-library .book-details__review{max-width:65ch;color:var(--ink-muted);line-height:1.85}.private-library .book-details dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0;display:grid}.private-library .book-details dt{color:var(--rust);font:.64rem var(--sans);letter-spacing:.08em;text-transform:uppercase}.private-library .book-details dd{color:var(--ink-muted);overflow-wrap:anywhere;margin:.45rem 0 0;font-size:.8rem;line-height:1.5}.private-library .book-details__tags{color:var(--ink-muted);font-size:.75rem;line-height:1.6}.private-library .book-details .text-link{color:var(--rust)}.private-library .books-empty{color:var(--ink-muted);grid-column:1/-1;margin:0;padding:4rem 1.5rem;line-height:1.7}.private-library .nightstand{border:1px solid var(--line);background:#211b16;grid-template-columns:.7fr 1.3fr;gap:2.5rem;margin-top:3rem;padding:2rem;display:grid;box-shadow:inset 0 0 30px #0004}.private-library .nightstand ul{border-bottom:7px solid #573b25;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:1.5rem;margin:0;padding:0 0 .75rem;list-style:none;display:grid}.private-library .nightstand__spine{aspect-ratio:2/3;background:#293327;place-items:center;display:grid;box-shadow:6px 6px 10px #0006}.private-library .nightstand__spine img{object-fit:contain;width:100%;height:100%}.private-library .nightstand li p{gap:.25rem;margin:1rem 0 0;font-size:.85rem;line-height:1.4;display:grid}.private-library .nightstand li p span{color:var(--ink-muted);font-size:.75rem}@media (width<=1050px){.private-library .book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.private-library .book-stats>div{padding:1.25rem}}@media (width<=700px){.private-library .books-intro{min-height:12rem;padding-right:6rem}.private-library .books-intro h1{font-size:clamp(3.1rem,8vw,4.3rem)}.private-library .books-intro>p{font-size:.9rem}.private-library .library-light{width:6.5rem;height:14.5rem;right:0}.private-library .library-light__stem{height:2.5rem}.private-library .library-light__shade{width:5.7rem;height:2.6rem;top:2.3rem;left:.4rem}.private-library .library-light__bulb{width:4.9rem;top:4.6rem;left:.8rem}.private-library .library-light__chain{width:3.75rem;top:4.9rem;right:-.8rem}.private-library .library-light__links{height:4.2rem}.private-library .library-light__label{font-size:.52rem}.private-library .books-range{flex-direction:column;align-items:start;gap:1.25rem;margin-top:1rem}.private-library .year-picker{justify-content:space-between;width:100%}.private-library .book-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.private-library .book-stats>div{border-bottom:1px solid #6e62454d;min-height:6.7rem;padding:1rem}.private-library .book-stats>div:nth-child(3){border-right:0}.private-library .book-stats>div:last-child{grid-column:2/-1}.private-library .book-stats>div:nth-child(n+4){border-bottom:0}.private-library .book-stats strong{font-size:2rem}.private-library .book-stats span{font-size:.64rem}.private-library .reading-goal{grid-template-columns:1fr;gap:.7rem}.private-library .book-grid{border-inline-width:.5rem;padding-inline:.5rem}.private-library .book-card{padding-inline:1.15rem}.private-library .book-card--expanded .book-card__trigger{gap:1.5rem}.private-library .book-details{grid-template-columns:5rem minmax(0,1fr);gap:1.25rem}.private-library .book-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}.private-library .nightstand{grid-template-columns:1fr;padding:1.5rem}}@media (width<=540px){.private-library .book-grid{grid-template-columns:1fr}.private-library .book-cover{width:12rem;height:18rem}.private-library .book-card:after{top:20.5rem}.private-library .book-card__title{font-size:1.9rem}.private-library .book-card--expanded .book-card__trigger{display:flex}.private-library .book-details{grid-template-columns:1fr}.private-library .book-details__cover{width:5rem}.private-library .book-controls>label,.private-library .book-controls select,.private-library .more-filters,.private-library .more-filters label{width:100%}.private-library .more-filters[open]{grid-template-columns:1fr}}.private-library .book-stats:before{z-index:-1;opacity:1;pointer-events:none;content:"";background:linear-gradient(110deg,#e3ac4d15,#0000 75%);transition:opacity .45s;position:absolute;inset:0}.private-library[data-lights=off] .book-stats:before{opacity:0}@media (prefers-reduced-motion:reduce){.private-library:after,.private-library *,.private-library :before,.private-library :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.private-library .book-card__trigger:hover .book-cover{transform:none}}.project-reading{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#eee9df;--paper-deep:#e4ddd0;--surface:#f5f1e9;--ink:#292c25;--ink-muted:#5d6055;--line:#d0cbbd;--line-strong:#aaa797;--rust:#785b3c;--moss:#566348;color:var(--ink);background:var(--paper);overflow:clip}.project-reading main>header{--paper:#20231d;--paper-deep:#2b2f26;--surface:#2b2f26;--ink:#f1ece2;--ink-muted:#c1c2b6;--line:#4b5143;--line-strong:#606851;--rust:#c5aa87;--moss:#b0b998;--notes-accent:var(--moss);color:var(--ink);background:var(--paper);box-shadow:0 0 0 100vmax var(--paper);clip-path:inset(-100vmax -100vmax 0);border-bottom:0;padding-top:2.5rem;position:relative}.project-reading main>.back-link{z-index:1;color:#c5aa87;position:relative}.project-reading main>header h1{letter-spacing:-.05em;overflow-wrap:anywhere;font-size:clamp(3.4rem,8vw,7.5rem);line-height:1}.project-reading h2{letter-spacing:-.04em;line-height:1.06}.project-reading :is(.case-section--split,.sidequest-project__split,.password-manager__split){column-gap:clamp(2rem,7vw,7rem)}.project-reading :is(.case-prose,.sidequest-project__prose,.password-manager__prose,.notes-project__prose,.workout-journal__prose){max-width:42rem}.project-reading :is(.contribution-grid article,.feature-grid article,.sidequest-project__card-grid article,.workout-journal__feature-grid article,.notes-project__feature-grid article,.password-manager__feature-grid article){border-color:var(--line);border-radius:var(--radius);background:var(--surface)}.project-reading :is(.terminal,.before-after,.gallery-pair img,.sidequest-project__screenshot-frame,.password-manager__screenshot-frame,.notes-project__screenshot-frame,.workout-journal__screenshots img,.architecture,.password-manager__architecture,.towtruck-pipeline){border-radius:var(--radius)}.project-reading :is(.notes-project__sidebar,.workout-journal__sidebar,.sidequest-project__info,.password-manager__info){border-color:var(--line);border-radius:var(--radius);background:var(--paper-deep)}.project-reading .before-after__label{color:#292c25}.project-reading :is(.case-back,.sidequest-project__back,.password-manager__back) a{text-underline-offset:5px}.project-reading .button--solid{color:#f5f1e9;background:#565e49;border-color:#565e49}.project-reading .button--solid:hover{background:#414c36;border-color:#414c36}.project-reading main>header .button--solid{color:#24251f;background:#c5aa87;border-color:#c5aa87}.project-reading main>header .button--solid:hover{background:#dfc7a6}.books-page:before,.books-page:after{content:none}.book-stats,.nightstand,.book-card{border-color:var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:none}.nightstand{background:#2d2c23;padding:clamp(1.5rem,4vw,3rem)}.book-card{padding:1.3rem}.book-card:hover{border-color:var(--rust);box-shadow:none;transform:none}.book-cover{color:#292c25;border-radius:3px}.book-cover small{color:#4c5146}.book-card:has(.book-details){grid-column:1/-1}.book-details{grid-template-columns:7rem minmax(0,1fr);gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem}.book-details dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.book-details h3{margin-top:.6rem}.books-page :is(select,input,button),.more-filters summary{border-radius:4px;min-height:2.75rem}.books-page input[type=checkbox]{min-height:1rem;accent-color:var(--rust)}.book-controls{align-items:end;gap:1rem}.book-controls>label{min-width:0}.more-filters[open]{background:var(--surface)}.library-filters>summary{padding-block:1.2rem}.more-filters>summary:after{content:" +"}.more-filters[open]>summary:after{content:" −"}.books-page :is(.nightstand__spine,.book-cover) img{display:block}:is(.page-intro,.books-intro) h1{line-height:1}.content-page__intro h1{max-width:13ch;font-size:clamp(3.1rem,7vw,6.5rem)}.content-grid{border-top:1px solid var(--line);padding-top:clamp(2rem,5vw,4rem)}.contact-links a{overflow-wrap:anywhere;gap:1rem;min-width:0;padding-block:1.4rem;font-size:clamp(1.05rem,3vw,1.5rem)}@media (width>=1050px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}}@media (width<=800px){.project-reading main>header{grid-template-columns:1fr;gap:2.5rem}.project-reading main>header h1{max-width:15ch}}@media (width<=580px){.book-details{grid-template-columns:1fr}.book-details__cover{width:6rem}.book-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}.project-reading main>header h1{font-size:clamp(3rem,12vw,4.5rem)}.project-card__topline{flex-wrap:wrap}.project-card__topline .status{text-align:left}}.project-preview{aspect-ratio:1.5;border-radius:var(--radius);width:100%;min-width:0;transition:border-color var(--transition);background:#383e32;border:1px solid #515344;place-items:center;padding:clamp(1rem,3vw,2.5rem);display:grid;position:relative;overflow:hidden}.project-preview__picture{display:contents}.project-preview__primary{object-fit:contain;border-radius:3px;width:100%;min-height:0;max-height:100%;display:block;box-shadow:0 18px 35px #10170e30}.project-preview__secondary{border:1px solid #636756;border-radius:4px;width:58%;position:absolute;bottom:-6%;right:-5%;box-shadow:0 12px 30px #10170e40}.project-preview[data-project=sidequest]{background:#443b31}.project-preview[data-project=sidequest] img{border:1px solid #8c7860;border-radius:10px;width:34%;height:auto;max-height:none;position:absolute;top:8%;left:14%}.project-preview[data-project=sidequest] .project-preview__secondary{top:21%;bottom:auto;left:53%}.project-preview[data-project=rocky] .project-preview__primary,.project-preview[data-project=notes-app] .project-preview__primary,.project-preview[data-project=workout-journal] .project-preview__primary{border:1px solid #787c6a;width:88%;height:auto;position:absolute;top:12%;left:6%}.project-preview[data-project=notes-app]{background:#3e3d34}.project-preview[data-project=password-manager],.project-preview[data-project=onetask-cli]{background:#302d28}.project-preview__terminal{color:#eee8da;background:#20231f;border:1px solid #6c6558;border-radius:4px;width:100%;min-width:0;box-shadow:0 14px 32px #1114}.project-preview__terminal>p{color:#c3b08e;font:.7rem var(--mono);background:#292e25;border-bottom:1px solid #494c40;margin:0;padding:.7rem 1rem}.project-preview__terminal pre{font:clamp(.56rem, 1.1vw, .75rem)/1.8 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:1.2rem;overflow-x:auto}.project-preview[data-project=onetask-cli],.project-preview[data-project=towtruck-alert]{aspect-ratio:auto;min-height:24rem}.project-preview[data-project=towtruck-alert]{background:#303933}.project-preview__workflow{color:#eee8da;width:100%}.project-preview__workflow>p{color:#d1c6af;text-align:center;margin:0 0 1.4rem;font-size:.72rem}.project-preview__workflow ol{counter-reset:pipeline;grid-template-columns:1fr 1fr;gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.project-preview__workflow li{counter-increment:pipeline;background:#252c26;border:1px solid #606b59;border-radius:3px;align-items:center;gap:.8rem;min-height:3.5rem;padding:.75rem;font-size:.75rem;line-height:1.5;display:flex}.project-preview__workflow li:before{color:#b3be9e;font:.6rem var(--mono);content:counter(pipeline, decimal-leading-zero)}.case-opening{margin-top:clamp(2.5rem,5vw,4rem)}.case-opening .project-preview{aspect-ratio:2;padding:clamp(1.5rem,5vw,4rem)}.case-opening .project-preview[data-project=sidequest] img{width:22%;left:26%}.case-opening .project-preview[data-project=sidequest] .project-preview__secondary{left:53%}.case-opening .project-preview__secondary{width:43%;bottom:-5%;right:4%}.case-opening .project-preview[data-project=rocky] .project-preview__primary,.case-opening .project-preview[data-project=notes-app] .project-preview__primary,.case-opening .project-preview[data-project=workout-journal] .project-preview__primary{width:78%;top:10%;left:5%}.case-opening .project-preview__terminal{max-width:47rem}.case-opening .project-preview__terminal pre{font-size:.8rem}.case-opening .project-preview__workflow{max-width:48rem}.case-opening .project-preview__workflow ol{grid-template-columns:repeat(4,minmax(0,1fr))}.case-index{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.4rem 1.4rem;margin-top:1rem;padding:1.5rem 0;display:flex}.case-index a{min-height:2.4rem;color:var(--ink-muted);text-underline-offset:5px;align-items:center;font-size:.75rem;text-decoration:none;display:inline-flex}.case-index a:hover,.case-index a:focus-visible{color:var(--rust);text-decoration:underline}.project-reading section[id],.project-reading h2[id]{scroll-margin-top:2rem}@media (width<=700px){.case-opening .project-preview{aspect-ratio:1.5;padding:1.2rem}.case-opening .project-preview[data-project=sidequest] img{width:34%;left:14%}.case-opening .project-preview__secondary{width:58%;right:-5%}.case-opening .project-preview__workflow ol{grid-template-columns:1fr 1fr}.case-opening .project-preview[data-project=onetask-cli],.case-opening .project-preview[data-project=towtruck-alert]{aspect-ratio:auto}.case-opening .project-preview__terminal pre{font-size:.62rem}.project-preview__workflow li{min-height:2.7rem;font-size:.65rem}.case-index{gap:.1rem 1rem}}.project-preview[data-project=towtruck-alert],.case-opening .project-preview[data-project=towtruck-alert]{aspect-ratio:294/161;min-height:0;padding:clamp(.6rem,1.5vw,1.2rem)}.project-preview__playback{z-index:3;color:#f3eee3;min-height:44px;font:.75rem var(--sans);cursor:pointer;background:#1b211c;border:1px solid #b6b6a4;border-radius:4px;padding:.55rem .85rem;position:absolute;bottom:1.25rem;right:1.25rem}.project-preview__playback:hover{background:#303933}.project-preview__playback:focus-visible{outline-offset:3px;outline:2px solid #f3eee3}.apps-directory{align-items:start;gap:3.5rem 2rem}.app-card{background:0 0;border:0;border-radius:0;min-height:0;padding:0}.app-card:hover{background:0 0}.app-card__preview{border-radius:var(--radius);min-width:0;overflow:hidden}.app-card__preview .project-preview{aspect-ratio:1.55}.app-card__body{border-bottom:1px solid var(--line);flex-direction:column;flex:1;min-width:0;padding:1.5rem 0 2rem;display:flex}.app-card__topline{justify-content:flex-start;align-items:flex-start;gap:1rem}.app-card__topline>div:last-child{text-align:left}.app-card__topline p{font-family:var(--sans);letter-spacing:.09em;margin-bottom:.35rem}.app-card__topline span{font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:.75rem}.app-card h2{margin-top:1.1rem;font-size:clamp(2.25rem,3.4vw,3.25rem);line-height:1.05}.app-card__description{line-height:1.85}.app-card__actions{padding-top:1.7rem}.app-card--text-only{align-self:stretch;margin-top:.5rem}.app-card--text-only .app-card__body{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:2rem}.app-card__books{aspect-ratio:1.55;border-radius:var(--radius);background:#3b382e;border:1px solid #665d49;justify-content:center;align-items:center;gap:6%;padding:2.5rem 1rem;display:flex}.app-card__books img{object-fit:contain;width:23%;max-height:100%;display:block;box-shadow:8px 12px 18px #19170f40}.project-reading h2{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.1}.project-reading :is(.case-prose p,.sidequest-project__prose p,.password-manager__prose p,.notes-project__prose p,.workout-journal__prose p){font-size:1.02rem;line-height:1.85}.project-reading :is(.case-section,.sidequest-project__section,.password-manager__section,.notes-project__section,.workout-journal__section){padding-block:clamp(3rem,6vw,5rem)}.project-reading :is(.notes-project__sidebar,.workout-journal__sidebar){padding:1.5rem}.project-reading :is(.gallery-pair img,.notes-project__screenshots img,.workout-journal__screenshots img){border-radius:var(--radius);box-shadow:0 10px 25px #30281c0a}.project-reading .workout-journal__screenshots{grid-template-columns:1fr;gap:2.5rem}.project-reading .workout-journal__screenshots img{aspect-ratio:auto;height:auto}.project-reading .project-evolution__grid{gap:3rem 2rem}.project-reading .evolution-comparison__heading{min-height:7rem}.project-reading .rocky-gallery summary{border-radius:var(--radius);font-family:var(--sans);text-transform:none;font-size:.8rem}.project-reading .terminal{box-shadow:0 12px 25px #2e291d15}.project-reading :is(.sidequest-project__info,.password-manager__info){margin-top:2.5rem}.about-page .content-page__intro{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(3rem,7vw,7rem);max-width:none;display:grid}.about-page__introduction{min-width:0}.about-page .content-page__intro h1{font-size:clamp(4rem,7.5vw,7rem);line-height:1.02}.about-page .content-page__lede{max-width:30rem;font-size:1.12rem}.about-page__photo{aspect-ratio:4/4.5;border:1px solid var(--line-strong);border-radius:var(--radius);max-height:30rem;margin:0;overflow:hidden}.about-page__photo img{object-fit:cover;object-position:50% 60%;width:100%;height:100%;display:block}.about-page :is(.about-story,.about-current,.about-tools,.about-outside){margin-top:clamp(4rem,8vw,7rem)}.about-page :is(.about-story,.about-exploring,.about-kent,.about-outside) p{max-width:58ch;color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.85}.about-page :is(.about-story,.about-exploring,.about-kent) p+p{margin-top:1.2rem}.about-page :is(.about-story,.about-exploring,.about-outside) h2{font:400 clamp(2.5rem, 4.3vw, 4.2rem)/1.08 var(--serif);letter-spacing:-.04em;text-wrap:balance;margin:0}.about-page .about-story{border-top:1px solid var(--line-strong);max-width:66rem;margin-inline:auto;padding-top:clamp(2.5rem,5vw,4.5rem)}.about-page .about-story h2{max-width:26ch}.about-page .about-story__columns{grid-template-columns:1fr 1fr;gap:2rem clamp(2rem,6vw,6rem);margin-top:clamp(2rem,4vw,3rem);display:grid}.about-page .about-current{grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr);align-items:start;gap:clamp(3rem,7vw,7rem);display:grid}.about-page .about-exploring h2{font-size:clamp(2.5rem,3.6vw,3.5rem)}.about-page .about-exploring .about-exploring__lead{max-width:34ch;color:var(--ink);font:400 clamp(1.5rem, 2.2vw, 2rem)/1.5 var(--serif);letter-spacing:-.015em;margin-top:1.8rem}.about-page .about-exploring>p:last-child{max-width:51ch;margin-top:1.5rem}.about-page .about-kent{border-left:1px solid var(--line-strong);padding:.4rem 0 .3rem 2rem}.about-page .about-kent h2{color:var(--rust);font:400 clamp(1.8rem, 2.4vw, 2.3rem)/1.15 var(--serif);letter-spacing:-.025em;margin:0 0 1.4rem}.about-page .about-kent p{font-size:.94rem;line-height:1.8}.about-page .about-tools{border-block:1px solid var(--line);padding-block:clamp(2rem,4vw,3rem)}.about-page .about-tools h2{font:400 clamp(1.7rem, 2.5vw, 2.25rem)/1.2 var(--serif);letter-spacing:-.025em;margin:0 0 2rem}.about-page .tool-groups{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:2rem clamp(2rem,4vw,4rem)}.about-page .tool-groups h3{font:500 .7rem/1.5 var(--sans);letter-spacing:.09em;margin-bottom:.85rem}.about-page .tool-groups ul{font-size:.95rem;line-height:1.8}.about-page .about-outside{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:3rem clamp(3rem,8vw,8rem);display:grid}.about-page .about-outside__copy>p{max-width:41ch;margin-top:1.8rem}.about-page .about-reading{min-width:0;max-width:30rem}.about-page .about-reading__covers{border-bottom:1px solid var(--line-strong);align-items:end;gap:clamp(.75rem,2vw,1.5rem);padding-bottom:1.5rem;display:flex}.about-page .about-reading__covers img{aspect-ratio:2/3;object-fit:contain;object-position:bottom;border-radius:2px;width:calc(33.3333% - clamp(.75rem,2vw,1.5rem)/1.5);height:auto;max-height:14rem;display:block;box-shadow:4px 8px 16px #0003}.about-page .about-reading>p{margin-top:1.2rem;font-size:.82rem}.about-page .about-reading>a{min-height:2.75rem;color:var(--rust);text-underline-offset:5px;margin-top:.25rem;font-size:.85rem;text-decoration:underline;text-decoration-thickness:1px}.contact-page{min-height:calc(100svh - 13rem)}.contact-page .content-page__intro{grid-template-columns:1fr 1fr;align-items:end;gap:4rem;max-width:none;display:grid}.contact-page .content-page__lede{max-width:32rem;margin:0}.contact-page .content-grid{border:0;max-width:46rem;margin-top:4rem;padding-top:0}.contact-page .contact-links{margin-top:0}.contact-page .contact-links a{padding-block:1.6rem;font-size:clamp(2rem,4vw,3rem)}.contact-page .contact-links .contact-link--email{font-size:clamp(1.35rem,3vw,2.3rem)}.contact-page .contact-links a>span:last-child{border:1px solid var(--line-strong);width:3rem;height:3rem;font:1.4rem var(--sans);transition:border-color var(--transition);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.contact-page .contact-links a:hover>span:last-child{border-color:var(--rust)}.contact-page .contact-note{background:0 0;border:0;margin-top:1.5rem;padding:0;font-size:.9rem}.books-forward{min-height:calc(100svh - 13rem)}@media (width<=900px){.about-page .about-current{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2.5rem}.about-page .content-page__intro{grid-template-columns:1.1fr .9fr;gap:2.5rem}.contact-page .content-page__intro{gap:2rem}}@media (width<=700px){.apps-directory{gap:3rem}.app-card__books{padding:2rem 1rem}.app-card--text-only .app-card__body{padding:1.5rem}.about-page .content-page__intro,.contact-page .content-page__intro{grid-template-columns:1fr}.about-page__photo{aspect-ratio:16/10;max-height:22rem}.about-page :is(.about-story__columns,.about-current,.tool-groups,.about-outside){grid-template-columns:minmax(0,1fr)}.about-page .about-story__columns{gap:1.2rem}.about-page .about-current{gap:2.75rem}.about-page .about-kent{padding-left:1.25rem}.about-page .about-outside{gap:2.5rem}.about-page .about-reading{width:100%;max-width:26rem}.about-page .about-reading__covers img{max-height:12rem}.about-page .content-page__intro h1{font-size:clamp(3.5rem,14vw,5rem)}.project-reading .evolution-comparison__heading{min-height:0}.project-reading .project-evolution__grid{grid-template-columns:1fr}.contact-page .content-grid{margin-top:3rem}}@media (prefers-reduced-motion:reduce){.project-card__card-action span{transform:none}}
