/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ivory:#f2efe8;--ink:#111;--vermilion:#ef442f;--muted:#66645f;--line:#11111129;--fine-line:#11111117;--background:var(--ivory);--foreground:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{min-height:100%;margin:0}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}::selection{color:var(--ivory);background:var(--vermilion)}.site-canvas{background-color:var(--ivory);background-image:repeating-linear-gradient(to right, transparent 0, transparent calc((100vw - 7rem) / 12 - 1px), var(--fine-line) calc((100vw - 7rem) / 12 - 1px), var(--fine-line) calc((100vw - 7rem) / 12));background-position:3.5rem 0;min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid var(--ink);grid-template-columns:1fr auto 1fr;align-items:center;min-height:96px;margin-inline:3.5rem;display:grid}.wordmark{letter-spacing:-.03em;text-transform:uppercase;width:max-content;font-size:clamp(1rem,1.45vw,1.35rem);font-weight:590}.site-nav{align-items:center;gap:clamp(1.75rem,4vw,4.5rem);height:100%;font-size:.9rem;display:flex}.nav-link{height:100%;color:var(--muted);place-items:center;padding-inline:.25rem;transition:color .18s,transform .18s;display:grid;position:relative}.nav-link:after{background:var(--ink);content:"";transform-origin:100%;width:calc(100% - .5rem);height:1px;transition:transform .22s;position:absolute;bottom:21px;left:.25rem;transform:scaleX(0)}.nav-link:hover,.nav-link:focus-visible,.nav-link.is-active{color:var(--ink)}.nav-link:hover{transform:translateY(-1px)}.nav-link:hover:after,.nav-link:focus-visible:after,.nav-link.is-active:after{transform-origin:0;transform:scaleX(1)}.availability{align-items:center;gap:.75rem;margin:0;font-size:.88rem;display:flex}.header-meta{justify-self:end;align-items:center;gap:clamp(1.25rem,2.2vw,2.5rem);display:flex}.language-switch{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;align-items:center;gap:.4rem;font-size:.7rem;display:flex}.language-switch a{color:var(--muted);transition:color .18s}.language-switch a:hover,.language-switch a:focus-visible,.language-switch a.is-active{color:var(--ink)}.language-switch a.is-active{text-underline-offset:.3rem;text-decoration:underline}.status-dot{background:var(--vermilion);border-radius:50%;width:.64rem;height:.64rem;animation:3.2s ease-out infinite status-pulse;box-shadow:0 0 #ef442f5c}.hero{border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,1.03fr) minmax(31rem,.97fr);min-height:calc(100svh - 160px);padding:clamp(3.75rem,7vh,6rem) 3.5rem 2rem;display:grid}.hero-copy{z-index:2;flex-direction:column;align-items:flex-start;display:flex;position:relative}.eyebrow{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;margin:0 0 clamp(2rem,3.5vh,3.25rem);font-size:.68rem}.hero-title{letter-spacing:-.074em;max-width:12ch;margin:0;font-size:clamp(4.1rem,7.2vw,8.5rem);font-weight:390;line-height:.81}.hero-intro{letter-spacing:-.025em;max-width:32rem;margin:clamp(2.25rem,4vh,3.5rem) 0 0;font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.5}.arrow-link{border-bottom:1px solid var(--ink);letter-spacing:-.025em;justify-content:space-between;align-items:center;width:min(100%,21rem);padding:.9rem 0 .7rem;font-size:1.02rem;display:flex}.arrow{font-size:1.35rem;line-height:1;transition:transform .22s;transform:rotate(45deg)}.arrow-link:hover .arrow,.arrow-link:focus-visible .arrow{transform:rotate(45deg)translate(.22rem,-.22rem)}.hero-cta{margin-top:clamp(1.6rem,3vh,2.4rem)}.technical-field{align-self:stretch;min-width:0;margin:-1.4rem -1rem -1.4rem -4rem;position:relative}.technical-svg{width:100%;height:100%;min-height:34rem;color:var(--ink);overflow:visible}.diagram-line,.diagram-curve{fill:none;vector-effect:non-scaling-stroke;animation:1.15s cubic-bezier(.55,0,.1,1) both line-draw}.line-solid{stroke:var(--ink);stroke-width:1px}.line-dashed{stroke:#1111119e;stroke-width:1px;stroke-dasharray:6 7}.line-light{stroke:#11111142;stroke-width:1px}.diagram-curve:nth-of-type(6){animation-delay:.18s}.diagram-curve:nth-of-type(7){animation-delay:.28s}.point{fill:var(--ivory);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.point-core{fill:var(--vermilion);stroke:var(--vermilion)}.point-core-ring{fill:none;stroke:#ef442f40;stroke-width:1px;transform-box:fill-box;transform-origin:50%;animation:2.8s ease-out infinite orbit-pulse}.cross{fill:none;stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.diagram-label{fill:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:11px}.diagram-label .label-accent{fill:var(--vermilion)}.diagram-count{font-family:var(--font-geist-mono), monospace;flex-direction:column;align-items:center;gap:.8rem;font-size:.9rem;display:flex;position:absolute;bottom:5%;right:.4rem}.diagram-count:before{background:var(--ink);content:"";width:1px;height:6rem;margin-bottom:.8rem}.count-slash{color:var(--vermilion)}.hero-ledger{min-height:64px;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase;grid-template-columns:1fr 1fr auto;align-items:center;gap:2rem;padding-inline:3.5rem;font-size:.67rem;display:grid}.hero-ledger p{gap:1.75rem;margin:0;display:flex}.hero-ledger p span{color:var(--muted)}.ledger-index{justify-self:end}.site-footer{border-top:1px solid var(--ink);font-family:var(--font-geist-mono), monospace;letter-spacing:.03em;text-transform:uppercase;grid-template-columns:1fr 1fr auto;gap:2rem;padding:1.25rem 3.5rem 2rem;font-size:.66rem;line-height:1.5;display:grid}.site-footer p{margin:0}.section-kicker{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;margin:0;font-size:.67rem;display:flex}.home-works{border-bottom:1px solid var(--ink);padding:clamp(5.5rem,10vw,10rem) 3.5rem}.section-heading-row{grid-template-columns:1.35fr .65fr;align-items:end;gap:4rem;margin:2rem 0 clamp(4rem,8vw,7.5rem);display:grid}.section-heading-row h2,.section-title{letter-spacing:-.07em;margin:0;font-size:clamp(3.7rem,7.6vw,8rem);font-weight:390;line-height:.9}.section-heading-row p{max-width:31rem;margin:0 0 .6rem;font-size:1rem;line-height:1.55}.home-work-list{border-top:1px solid var(--ink)}.home-work-row{border-bottom:1px solid var(--ink);grid-template-columns:4.5rem minmax(0,1fr) 15rem 2rem;align-items:center;gap:2rem;min-height:116px;padding-inline:.5rem;transition:color .22s,background .22s,padding .22s;display:grid}.home-work-row:hover,.home-work-row:focus-visible{color:var(--ivory);background:var(--vermilion);padding-inline:1.35rem}.work-index,.work-type{font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase;font-size:.68rem}.work-name{letter-spacing:-.05em;font-size:clamp(1.55rem,3.2vw,3.25rem);font-weight:420}.work-arrow{justify-self:end;font-size:1.35rem}.home-statement{grid-template-columns:repeat(12,minmax(0,1fr));gap:2rem;padding:clamp(5.5rem,9vw,9rem) 3.5rem;display:grid}.home-statement>.section-kicker{grid-column:1/13}.home-statement h2{letter-spacing:-.068em;grid-column:1/9;max-width:12ch;margin:2rem 0 0;font-size:clamp(3.5rem,6.7vw,7rem);font-weight:390;line-height:.94}.statement-copy{grid-column:9/13;align-self:end;padding-top:14rem}.statement-copy>p{max-width:31rem;margin:0 0 2.5rem;font-size:1rem;line-height:1.65}.page-canvas{overflow:clip}.inner-hero{border-bottom:1px solid var(--ink);min-height:min(810px,100svh - 96px);padding:clamp(4rem,8vw,8rem) 3.5rem 4rem;position:relative}.inner-title{letter-spacing:-.078em;max-width:11ch;margin:0;font-size:clamp(4.5rem,9.6vw,10.5rem);font-weight:390;line-height:.82}.inner-intro{letter-spacing:-.03em;max-width:39rem;margin:clamp(3.5rem,7vw,7rem) 0 0 50%;font-size:clamp(1.15rem,1.7vw,1.65rem);line-height:1.45}.about-coordinate{width:max-content;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase;grid-template-columns:1rem auto;gap:.4rem 1rem;margin:clamp(2.5rem,5vw,5rem) 0 0 auto;font-size:.62rem;display:grid}.coord-mark{border:1px solid var(--ink);border-radius:50%;grid-row:1/4;align-self:center;width:.75rem;height:.75rem;position:relative}.coord-mark:after{background:var(--vermilion);content:"";border-radius:50%;width:.28rem;height:.28rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.about-profile{border-bottom:1px solid var(--ink);grid-template-columns:.78fr 1.22fr;min-height:760px;display:grid}.profile-mark{min-height:100%;color:var(--ivory);background:var(--ink);flex-direction:column;justify-content:space-between;padding:3.5rem;display:flex;position:relative}.profile-mark.has-photo{isolation:isolate;overflow:hidden}.profile-mark.has-photo:after{z-index:-1;content:"";background:linear-gradient(#11111114 35%,#111111d1),linear-gradient(90deg,#1111112e,#0000 45%);position:absolute;inset:0}.profile-photo-frame{z-index:-2;background:var(--ink);position:absolute;inset:0;overflow:hidden}.profile-photo-frame[data-aspect-ratio="1:1"],.profile-photo-frame[data-aspect-ratio="4:3"],.profile-photo-frame[data-aspect-ratio="16:9"]{width:100%;height:auto;top:50%;bottom:auto;transform:translateY(-50%)}.profile-photo-frame[data-aspect-ratio="3:4"],.profile-photo-frame[data-aspect-ratio="9:16"]{width:auto;height:100%;left:50%;right:auto;transform:translate(-50%)}.profile-photo{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.profile-photo-label{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1111112e;border:1px solid #f2efe8a6;align-self:flex-start;padding:.55rem .65rem;font-size:.62rem}.profile-mark>span{letter-spacing:-.11em;font-size:clamp(8rem,20vw,20rem);font-weight:350;line-height:.72}.profile-mark>.profile-photo-label{letter-spacing:.06em;font-size:.62rem;font-weight:400;line-height:1}.profile-mark p{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.68rem}.profile-copy{padding:clamp(4rem,7vw,7.5rem) 3.5rem}.profile-copy h2{letter-spacing:-.066em;max-width:13ch;margin:clamp(3rem,5vw,5rem) 0;font-size:clamp(3.3rem,5.8vw,6.3rem);font-weight:390;line-height:.94}.profile-columns{grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,5rem);display:grid}.profile-columns p{margin:0;line-height:1.7}.capabilities{border-bottom:1px solid var(--ink);padding:clamp(5.5rem,9vw,9rem) 3.5rem}.capabilities .section-title{max-width:9ch;margin:2.5rem 0 clamp(4rem,7vw,7rem)}.capability-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.capability-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);min-height:330px;padding:1.5rem}.capability-card>p:first-child{font-family:var(--font-geist-mono), monospace;margin:0 0 6rem;font-size:.68rem}.capability-card h3{letter-spacing:-.045em;margin:0 0 1.4rem;font-size:clamp(1.4rem,2.1vw,2rem);font-weight:480}.capability-card>p:last-child{color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.about-ledger{grid-template-columns:.5fr 1.5fr;gap:3rem;padding:clamp(5.5rem,9vw,9rem) 3.5rem;display:grid}.about-ledger>h2{letter-spacing:-.07em;grid-column:2;max-width:10ch;margin:0;font-size:clamp(3.7rem,7vw,7.5rem);font-weight:390;line-height:.92}.ledger-list{border-top:1px solid var(--ink);grid-column:2;margin-top:3rem}.ledger-list>div{border-bottom:1px solid var(--ink);grid-template-columns:.6fr 1.4fr;gap:2rem;min-height:112px;padding:1.25rem 0;display:grid}.ledger-list span{font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase;font-size:.67rem}.ledger-list p{margin:0;line-height:1.55}.ledger-actions{grid-column:2;grid-template-columns:repeat(2,minmax(0,21rem));gap:clamp(1.5rem,4vw,4rem);margin-top:2rem;display:grid}.cv-page{min-height:calc(100svh - 96px)}.cv-hero{border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,1.35fr) minmax(22rem,.65fr);align-items:end;gap:clamp(3rem,7vw,8rem);min-height:min(760px,100svh - 96px);padding:clamp(4rem,8vw,8rem) 3.5rem 4rem;display:grid}.cv-hero .eyebrow{grid-column:1/-1;align-self:start}.cv-hero .inner-title{max-width:10ch}.cv-hero-aside{gap:clamp(3rem,7vw,6rem);display:grid}.cv-intro{max-width:31rem;margin:0;font-size:1.08rem;line-height:1.65}.cv-status{border-top:1px solid var(--ink);padding-top:1rem}.cv-status span,.cv-entry-index,.cv-entry-period,.cv-entry-meta,.cv-fact span{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.67rem}.cv-status p{max-width:25rem;margin:1.15rem 0 0;line-height:1.5}.cv-section{border-bottom:1px solid var(--ink);grid-template-columns:minmax(14rem,.34fr) minmax(0,.66fr);gap:clamp(3rem,7vw,8rem);padding:clamp(4rem,7vw,7rem) 3.5rem;display:grid}.cv-section-heading{align-self:start;position:sticky;top:7.5rem}.cv-section-heading h2,.cv-fact-panel h2,.cv-closing h2{letter-spacing:-.065em;max-width:9ch;margin:clamp(2rem,4vw,4rem) 0 0;font-size:clamp(2.8rem,5vw,6rem);font-weight:390;line-height:.92}.cv-timeline{border-top:1px solid var(--ink)}.cv-entry{border-bottom:1px solid var(--ink);grid-template-columns:2.5rem minmax(7rem,.24fr) minmax(0,.76fr);gap:clamp(1rem,3vw,3rem);padding:1.5rem 0 clamp(3.5rem,6vw,6rem);display:grid}.cv-entry:last-child{border-bottom:0}.cv-entry-index,.cv-entry-period{margin:.2rem 0 0}.cv-entry-index{color:var(--vermilion)}.cv-entry-body h3{letter-spacing:-.055em;max-width:15ch;margin:0;font-size:clamp(2rem,3.7vw,4.4rem);font-weight:410;line-height:.96}.cv-entry-meta{color:var(--muted);flex-wrap:wrap;gap:.7rem 1.4rem;margin:1.5rem 0 0;display:flex}.cv-entry-organization{color:var(--ink);letter-spacing:.075em;font-size:.74rem;font-weight:720}.cv-entry-location:before{color:var(--vermilion);content:"•";margin-right:1.4rem}.cv-entry-description{max-width:48rem;margin:2rem 0 0;font-size:1.02rem;line-height:1.7}.cv-fact-panels{border-bottom:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cv-fact-panel{min-height:42rem;padding:clamp(3.5rem,7vw,7rem) 3.5rem}.cv-fact-panel+.cv-fact-panel{border-left:1px solid var(--ink)}.cv-fact-panel-dark{color:var(--ivory);background:var(--ink)}.cv-fact-list{border-top:1px solid;margin-top:clamp(3rem,7vw,7rem)}.cv-fact{border-bottom:1px solid;grid-template-columns:minmax(7rem,.34fr) minmax(0,.66fr);align-items:baseline;gap:1.5rem;padding:1.3rem 0;display:grid}.cv-fact p{margin:0;line-height:1.5}.cv-closing{border-bottom:1px solid var(--ink);grid-template-columns:minmax(18rem,.42fr) minmax(0,.58fr);gap:clamp(4rem,8vw,10rem);padding:clamp(4rem,8vw,8rem) 3.5rem;display:grid}.cv-closing .cv-fact-list{margin-top:4rem}.cv-interests>p:not(.section-kicker){white-space:pre-line;max-width:38rem;margin:3rem 0;font-size:1.08rem;line-height:1.7}.cv-interests{border-left:1px solid var(--ink);padding-left:clamp(1.5rem,3vw,3rem);position:relative}.cv-interests:before{background:var(--vermilion);content:"";width:7px;height:7px;position:absolute;top:.15rem;left:-4px}.contact-hero{border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,1.45fr) minmax(20rem,.55fr);align-items:end;gap:clamp(2rem,6vw,7rem);min-height:min(720px,100svh - 96px);padding:clamp(4rem,8vw,8rem) 3.5rem 4rem;display:grid}.contact-hero .eyebrow{grid-column:1/-1;align-self:start}.contact-hero .inner-title{max-width:10ch}.contact-hero .inner-intro{margin:0 0 .7rem}.contact-sections{border-bottom:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-panel{min-height:34rem;padding:clamp(3rem,6vw,6rem) 3.5rem}.contact-panel+.contact-panel{border-left:1px solid var(--ink)}.contact-panel-accent{color:var(--ivory);background:var(--ink)}.contact-panel h2{letter-spacing:-.065em;max-width:12ch;margin:clamp(2rem,5vw,4rem) 0;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:400;line-height:.92}.contact-list{border-top:1px solid}.contact-row{border-bottom:1px solid;grid-template-columns:minmax(7rem,.35fr) minmax(0,.65fr);align-items:baseline;gap:1rem;padding:1.25rem 0;display:grid}.contact-row span{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.67rem}.contact-row p,.contact-row a,.contact-empty{margin:0;line-height:1.55}.contact-row a{text-underline-offset:.28rem;text-decoration:underline;text-decoration-thickness:1px}.contact-empty{color:var(--muted)}.contact-closing{border-bottom:1px solid var(--ink);grid-template-columns:.35fr minmax(0,1.05fr) minmax(20rem,.6fr);align-items:start;gap:clamp(2rem,5vw,6rem);padding:clamp(4rem,8vw,8rem) 3.5rem;display:grid}.contact-closing h2{letter-spacing:-.07em;max-width:13ch;margin:0;font-size:clamp(3rem,6vw,7rem);font-weight:390;line-height:.88}.contact-closing>p:last-child{margin:.5rem 0 0;font-size:1.05rem;line-height:1.65}.works-hero{border-bottom:1px solid var(--ink);grid-template-columns:1.5fr .5fr;align-items:end;gap:4rem;min-height:min(720px,100svh - 96px);padding:clamp(4rem,8vw,8rem) 3.5rem 4rem;display:grid}.works-intro{max-width:32rem;margin:0 0 .7rem;font-size:1.05rem;line-height:1.65}.project-list{border-bottom:1px solid var(--ink)}.project-row{border-bottom:1px solid var(--ink);grid-template-columns:10rem minmax(0,1fr) minmax(24rem,.86fr);gap:clamp(2rem,5vw,6rem);min-height:560px;padding:clamp(3.5rem,6vw,6rem) 3.5rem;scroll-margin-top:2rem;display:grid}.project-row:last-child{border-bottom:0}.project-meta{font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:.9rem;font-size:.64rem;display:flex}.project-meta p{margin:0}.project-meta .project-number{font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.07em;margin-bottom:auto;font-size:clamp(3.2rem,5vw,5.4rem);font-weight:390}.project-body{flex-direction:column;display:flex}.project-body h2{letter-spacing:-.068em;max-width:12ch;margin:0;font-size:clamp(3.2rem,5.3vw,5.9rem);font-weight:390;line-height:.92}.project-body>p{max-width:38rem;margin:auto 0 3rem;font-size:1.02rem;line-height:1.7}.project-body ul{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.project-body li{border:1px solid var(--ink);font-family:var(--font-geist-mono), monospace;letter-spacing:.03em;text-transform:uppercase;padding:.5rem .75rem;font-size:.62rem}.project-visual{border:1px solid var(--ink);background:linear-gradient(var(--fine-line) 1px, transparent 1px), linear-gradient(90deg, var(--fine-line) 1px, transparent 1px);background-size:12.5% 12.5%;min-height:430px;position:relative;overflow:hidden}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:.75rem;min-width:0;display:grid}.project-gallery figure{border:1px solid var(--ink);background:var(--ink);min-width:0;margin:0}.project-gallery figure:first-child{grid-column:1/-1}.project-gallery.is-single figure:first-child{height:100%;min-height:430px}.project-gallery.is-single figure:first-child.has-custom-ratio{height:auto;min-height:0}.project-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.project-gallery figure:first-child img{aspect-ratio:5/4}.project-gallery.is-single figure:first-child img{aspect-ratio:auto;height:calc(100% - 42px);min-height:387px}.project-gallery.is-single figure:first-child img:not([data-aspect-ratio=auto]){height:auto;min-height:0}.project-gallery figcaption{min-height:42px;color:var(--ivory);font-family:var(--font-geist-mono), monospace;letter-spacing:.03em;text-transform:uppercase;grid-template-columns:auto 1fr;gap:.65rem;padding:.65rem .75rem;font-size:.58rem;line-height:1.35;display:grid;overflow:hidden}.project-gallery figcaption span{color:var(--vermilion)}.visual-axis{background:var(--ink);position:absolute}.axis-x{width:80%;height:1px;top:60%;left:10%}.axis-y{width:1px;height:80%;top:10%;left:58%}.visual-orbit{border:1px solid var(--ink);border-radius:50%;position:absolute}.orbit-one{width:72%;height:48%;top:18%;left:16%;transform:rotate(-28deg)}.orbit-two{opacity:.55;border-style:dashed;width:55%;height:38%;top:32%;left:34%;transform:rotate(35deg)}.visual-node{border:1px solid var(--ink);background:var(--ivory);border-radius:50%;width:.8rem;height:.8rem;position:absolute}.node-one{top:22%;left:42%}.node-two{border-color:var(--vermilion);background:var(--vermilion);top:58%;left:57%}.node-three{bottom:16%;right:14%}.visual-code{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;font-size:.58rem;position:absolute;bottom:1rem;right:1rem}.visual-energy{background-color:var(--ink);color:var(--ivory);background-image:linear-gradient(#f2efe817 1px,#0000 1px),linear-gradient(90deg,#f2efe817 1px,#0000 1px)}.visual-energy .visual-axis,.visual-energy .node-two{background:var(--vermilion)}.visual-energy .visual-orbit,.visual-energy .visual-node{border-color:var(--ivory)}.visual-energy .visual-node{background:var(--ink)}.visual-energy .node-two{border-color:var(--vermilion)}.visual-poster .orbit-one{border-width:8px;border-color:var(--vermilion);border-radius:0;width:44%;height:113%;top:-8%;left:18%;transform:rotate(17deg)}.visual-poster .orbit-two{border-width:2px;border-radius:0;width:24%;height:65%;top:18%;left:52%;transform:none}.visual-atlas .orbit-one{border-radius:0;width:64%;height:64%;top:15%;left:14%;transform:none}.visual-atlas .orbit-two{border-radius:0;width:64%;height:64%;top:26%;left:25%;transform:none}.works-end{grid-template-columns:.5fr 1.3fr .7fr;align-items:end;gap:3rem;padding:clamp(6rem,11vw,11rem) 3.5rem;display:grid}.works-end>p:first-child{font-family:var(--font-geist-mono), monospace;align-self:start;margin:0;font-size:.67rem}.works-end h2{letter-spacing:-.068em;max-width:10ch;margin:0;font-size:clamp(3.5rem,6.5vw,7rem);font-weight:390;line-height:.94}.works-end>p:last-child{max-width:28rem;margin:0 0 .6rem;line-height:1.65}.reveal{opacity:0;animation:.72s cubic-bezier(.22,.8,.2,1) forwards reveal-in;transform:translateY(18px)}.reveal-1{animation-delay:80ms}.reveal-2{animation-delay:.15s}.reveal-3{animation-delay:.28s}.reveal-4{animation-delay:.36s}@keyframes reveal-in{to{opacity:1;transform:translateY(0)}}@keyframes line-draw{0%{stroke-dasharray:0 1400}to{stroke-dasharray:1400 0}}@keyframes status-pulse{45%{box-shadow:0 0 #ef442f4d}72%{box-shadow:0 0 0 .5rem #ef442f00}}@keyframes orbit-pulse{0%,45%{opacity:.2;transform:scale(.8)}72%,to{opacity:0;transform:scale(1.65)}}@media (width<=1050px){.site-canvas{background-image:repeating-linear-gradient(to right, transparent 0, transparent calc((100vw - 3rem) / 6 - 1px), var(--fine-line) calc((100vw - 3rem) / 6 - 1px), var(--fine-line) calc((100vw - 3rem) / 6));background-position:1.5rem 0}.site-header{margin-inline:1.5rem}.availability{font-size:0}.hero{grid-template-columns:minmax(0,1.1fr) minmax(23rem,.9fr);padding-inline:1.5rem}.hero-title{font-size:clamp(4rem,8.6vw,6.5rem)}.technical-field{margin-left:-2rem}.hero-ledger,.site-footer,.home-works,.home-statement,.inner-hero,.profile-mark,.profile-copy,.capabilities,.about-ledger,.cv-hero,.cv-section,.cv-fact-panel,.cv-closing,.works-hero,.contact-hero,.contact-panel,.contact-closing,.project-row,.works-end{padding-inline:1.5rem}.project-row{grid-template-columns:7rem minmax(0,1fr)}.project-visual{grid-column:2;min-height:360px}.project-gallery{grid-column:2}.contact-closing{grid-template-columns:7rem minmax(0,1fr)}.contact-closing>p:last-child{grid-column:2}.cv-section{grid-template-columns:minmax(12rem,.3fr) minmax(0,.7fr)}}@media (width<=760px){.arrow,.work-arrow,.text-arrow{font-variant-emoji:text}.site-header{grid-template-columns:1fr auto;row-gap:.8rem;min-height:0;padding-block:1rem .85rem}.site-nav{grid-area:2/1/auto/-1;justify-self:start;gap:1.15rem;height:2rem;font-size:.78rem}.header-meta{grid-area:1/2}.availability{display:none}.nav-link:after{bottom:-.2rem}.hero{grid-template-columns:1fr;min-height:auto;padding-top:3rem}.hero-copy{min-height:38rem}.hero-title{font-size:clamp(3.5rem,16.8vw,5.7rem);line-height:.85}.hero-intro{max-width:23rem}.technical-field{opacity:.74;height:25rem;margin:-6rem -1rem -1rem 15%}.technical-svg{min-height:25rem}.diagram-count{display:none}.hero-ledger{grid-template-columns:1fr auto;gap:1rem;min-height:72px}.hero-ledger p:nth-child(2){display:none}.site-footer{grid-template-columns:1fr}.section-heading-row{grid-template-columns:1fr;gap:1.75rem}.home-work-row{grid-template-columns:2.5rem 1fr auto;gap:1rem;min-height:94px}.work-type{display:none}.home-statement{display:block}.home-statement h2{margin-top:2.5rem}.statement-copy{padding-top:4rem}.inner-hero{min-height:680px;padding-top:4rem}.inner-title{font-size:clamp(4rem,17vw,7rem);line-height:.84}.inner-intro{margin-top:5rem;margin-left:0}.about-coordinate{margin-top:2.5rem;margin-left:0}.about-profile{grid-template-columns:1fr}.profile-mark{min-height:440px}.profile-columns,.capability-grid{grid-template-columns:1fr 1fr}.about-ledger{grid-template-columns:1fr}.about-ledger>h2,.ledger-list,.ledger-actions{grid-column:1}.cv-hero{grid-template-columns:1fr;min-height:auto}.cv-hero-aside{margin-top:2rem}.cv-section{grid-template-columns:1fr}.cv-section-heading{position:static}.cv-section-heading h2{margin-bottom:3rem}.cv-entry{grid-template-columns:2.5rem minmax(6.5rem,.25fr) minmax(0,.75fr)}.cv-fact-panels,.cv-closing{grid-template-columns:1fr}.cv-fact-panel{min-height:auto}.cv-fact-panel+.cv-fact-panel{border-top:1px solid var(--ink);border-left:0}.works-hero{grid-template-columns:1fr;min-height:720px}.project-row{grid-template-columns:1fr;gap:3rem}.project-meta{grid-template-columns:1fr auto;display:grid}.project-meta .project-number{grid-row:1/3;margin:0}.project-body>p{margin:3rem 0}.project-visual{grid-column:1;min-height:340px}.project-gallery{grid-column:1}.works-end{grid-template-columns:1fr}.contact-hero{grid-template-columns:1fr;min-height:auto}.contact-sections{grid-template-columns:1fr}.contact-panel{min-height:auto}.contact-panel+.contact-panel{border-top:1px solid var(--ink);border-left:0}.contact-closing{grid-template-columns:1fr}.contact-closing>p:last-child{grid-column:1}}@media (width<=440px){.site-header,.hero,.hero-ledger,.site-footer,.home-works,.home-statement,.inner-hero,.profile-mark,.profile-copy,.capabilities,.about-ledger,.cv-hero,.cv-section,.cv-fact-panel,.cv-closing,.works-hero,.project-row,.works-end{margin-inline:0;padding-left:1rem;padding-right:1rem}.contact-hero,.contact-panel,.contact-closing{padding-left:1rem;padding-right:1rem}.wordmark{max-width:7rem;font-size:.9rem;line-height:.95}.site-nav{gap:.6rem;font-size:.72rem}.hero-copy{min-height:35rem}.technical-field{margin-left:6%}.about-coordinate{margin-left:0}.profile-columns,.capability-grid{grid-template-columns:1fr}.cv-entry{grid-template-columns:2.25rem 1fr;gap:1rem}.cv-entry-body{grid-column:1/-1;padding-top:1rem}.cv-entry-meta{gap:.5rem;display:grid}.cv-entry-location:before{display:none}.cv-fact{grid-template-columns:1fr;gap:.65rem}.capability-card{min-height:260px}.capability-card>p:first-child{margin-bottom:4rem}.ledger-list>div{grid-template-columns:1fr;gap:1rem}.ledger-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.editor-shell{background:linear-gradient(var(--fine-line) 1px, transparent 1px), linear-gradient(90deg, var(--fine-line) 1px, transparent 1px), var(--ivory);background-size:5rem 5rem;min-height:100vh}.editor-toolbar{z-index:20;border-bottom:1px solid var(--ink);background:var(--ivory);justify-content:space-between;align-items:center;gap:2rem;min-height:96px;padding:1rem 2rem;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.editor-toolbar{background:color-mix(in srgb, var(--ivory) 94%, transparent)}}.editor-toolbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.editor-kicker{font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .35rem;font-size:.64rem}.editor-toolbar h1{letter-spacing:-.06em;margin:0;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:440}.editor-toolbar-actions{align-items:center;gap:.75rem;display:flex}.editor-language-switch{border:1px solid var(--ink);align-items:center;min-height:44px;font-size:.76rem;display:flex}.editor-language-switch>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;padding:0 .75rem;font-size:.62rem}.editor-language-switch button{border:0;border-left:1px solid var(--ink);color:var(--muted);font:inherit;cursor:pointer;background:0 0;align-self:stretch;padding:0 .8rem}.editor-language-switch button.is-active{color:var(--ivory);background:var(--ink)}.editor-sync-button{border:1px solid var(--ink);min-height:44px;color:var(--ivory);background:var(--vermilion);font:inherit;cursor:pointer;padding:0 1rem;font-size:.76rem;transition:color .18s,background .18s}.editor-sync-button:hover,.editor-sync-button:focus-visible{color:var(--ivory);background:var(--ink)}.editor-sync-button:disabled{cursor:wait;opacity:.58}.save-message{max-width:19rem;color:var(--muted);align-items:center;gap:.65rem;margin:0 .8rem 0 0;font-size:.78rem;line-height:1.3;display:flex}.save-message>span{background:#5e8c61;border-radius:50%;flex:none;width:.55rem;height:.55rem}.save-message.save-dirty>span{background:#d28b31}.save-message.save-saving>span{background:var(--vermilion);animation:1.4s ease-out infinite status-pulse}.save-message.save-error{color:#9f2e21}.editor-contact-list{border:1px solid var(--ink);background:var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:1.5rem 0 4rem;display:grid}.editor-contact-list .editor-mini-card{background:var(--ivory);min-height:auto}.editor-cv-collection{margin:1.5rem 0 4rem}.editor-cv-collection .editor-project-heading{align-items:end;margin-bottom:1rem}.editor-cv-collection .editor-project-heading h3{letter-spacing:-.035em;margin:0 0 .45rem;font-size:1.4rem;font-weight:480}.editor-cv-collection .editor-project-heading p{color:var(--muted);margin:0;font-size:.84rem}.editor-cv-entry-list{gap:1rem;display:grid}.cv-card-mark{border-right:1px solid var(--ink);color:var(--vermilion);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;align-self:stretch;place-items:center;font-size:.62rem;display:grid}.editor-cv-facts{margin-bottom:0}.editor-cv-card-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.editor-cv-card-actions button{border:1px solid var(--line);min-height:34px;font:inherit;cursor:pointer;background:0 0;padding:.45rem .65rem;font-size:.72rem}.editor-cv-card-actions button:last-child{color:#9f2e21;margin-left:auto}.editor-cv-card-actions button:disabled{opacity:.3;cursor:default}.save-message.save-error>span{background:#9f2e21}.editor-save-button,.editor-secondary-button,.editor-add-button{border:1px solid var(--ink);min-height:44px;font:inherit;cursor:pointer;border-radius:0;padding:.78rem 1rem;font-size:.8rem}.editor-save-button{color:var(--ivory);background:var(--ink)}.editor-save-button:disabled{color:var(--muted);border-color:var(--line);cursor:default;background:0 0}.editor-secondary-button{background:var(--ivory);place-items:center;display:grid}.editor-body{grid-template-columns:15rem minmax(0,1fr);min-height:calc(100vh - 96px);display:grid}.editor-sidebar{border-right:1px solid var(--ink);background:var(--ivory);flex-direction:column;align-self:start;height:calc(100vh - 96px);padding:2rem 1.25rem 1.5rem;display:flex;position:sticky;top:96px}.editor-sidebar>p{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin:0 0 1.2rem .75rem;font-size:.63rem}.editor-sidebar nav{gap:.25rem;display:grid}.editor-sidebar nav button{min-height:46px;color:var(--muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:2rem 1fr;align-items:center;gap:.5rem;padding:.5rem .75rem;display:grid}.editor-sidebar nav button:hover,.editor-sidebar nav button.is-active{color:var(--ivory);background:var(--ink)}.editor-sidebar nav span{font-family:var(--font-geist-mono), monospace;font-size:.62rem}.editor-account{border-top:1px solid var(--line);overflow-wrap:anywhere;gap:.35rem;margin-top:auto;padding:1rem .75rem 0;display:grid}.editor-account span,.editor-account a{color:var(--muted);font-size:.7rem}.editor-account strong{font-size:.8rem;font-weight:520}.editor-account a{text-underline-offset:.18rem;width:max-content;margin-top:.35rem;text-decoration:underline}.editor-workspace{width:min(100%,78rem);margin-inline:auto;padding:clamp(2.5rem,5vw,5rem)}.editor-section-heading{border-top:1px solid var(--ink);grid-template-columns:3rem minmax(0,1fr);gap:1rem;margin:0 0 2rem;padding-top:1.4rem;display:grid}.editor-section-heading:not(:first-child){margin-top:clamp(4rem,7vw,7rem)}.editor-section-heading>span{font-family:var(--font-geist-mono), monospace;font-size:.67rem}.editor-section-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:.95}.editor-section-heading p{max-width:34rem;color:var(--muted);margin:.8rem 0 0;line-height:1.55}.editor-hero-preview{border:1px solid var(--ink);min-height:390px;color:var(--ivory);background:linear-gradient(#f2efe814 1px, transparent 1px), linear-gradient(90deg, #f2efe814 1px, transparent 1px), var(--ink);background-size:4rem 4rem;margin-bottom:2rem;padding:clamp(2rem,4vw,4rem)}.editor-hero-preview>p{color:var(--vermilion);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 2rem;font-size:.65rem}.editor-hero-preview h2{white-space:pre-line;letter-spacing:-.075em;max-width:11ch;margin:0;font-size:clamp(3.1rem,7vw,7.4rem);font-weight:370;line-height:.84}.editor-hero-preview>span{color:#f2efe8b8;max-width:36rem;margin-top:2.5rem;line-height:1.55;display:block}.editor-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.editor-field{align-content:start;gap:.55rem;display:grid}.editor-field>span{font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase;font-size:.65rem}.editor-field input,.editor-field textarea,.editor-field select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#ffffff73;border-radius:0;outline:0;font-size:.95rem;line-height:1.5}.editor-field input,.editor-field select{min-height:48px;padding:.75rem .85rem}.editor-field textarea{resize:vertical;min-height:112px;padding:.85rem}.editor-field input:focus,.editor-field textarea:focus,.editor-field select:focus{border-color:var(--vermilion);box-shadow:0 0 0 2px #ef442f1f}.editor-field small{color:var(--muted);font-size:.68rem;line-height:1.4}.editor-image-manager{border:1px solid var(--ink);background:#f2efe8b8;margin:0 0 2rem}.editor-image-heading{border-bottom:1px solid var(--ink);justify-content:space-between;gap:1.5rem;padding:1.1rem 1.25rem;display:flex}.editor-image-heading h3{margin:0;font-size:1rem;font-weight:540}.editor-image-heading p{max-width:46rem;color:var(--muted);margin:.45rem 0 0;font-size:.76rem;line-height:1.5}.editor-image-heading>span{font-family:var(--font-geist-mono), monospace;flex:none;font-size:.66rem}.editor-image-list{background:var(--ink);gap:1px;display:grid}.editor-image-card{background:var(--ivory);grid-template-columns:minmax(9rem,.44fr) minmax(0,1.56fr);gap:1rem;padding:1rem;display:grid}.editor-image-preview{border:1px solid var(--ink);background:var(--ink);align-self:start;place-items:center;width:100%;min-height:150px;max-height:280px;display:grid;overflow:hidden}.editor-image-preview img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:150px;max-height:280px;display:block}.editor-image-card-fields{flex-direction:column;min-width:0;display:flex}.editor-image-format-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:.85rem;display:grid}.editor-image-format-hint{color:var(--muted);margin:.65rem 0 0;font-size:.68rem;line-height:1.45}.editor-image-actions{flex-wrap:wrap;gap:.45rem;margin-top:auto;padding-top:.75rem;display:flex}.editor-image-actions button,.editor-dropzone button{border:1px solid var(--ink);min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;padding:.5rem .7rem;font-size:.72rem}.editor-image-actions button:disabled,.editor-dropzone button:disabled{opacity:.35;cursor:default}.editor-image-actions .editor-image-remove{color:#9f2e21;border-color:#9f2e2173;margin-left:auto}.editor-dropzone{border:1px dashed var(--muted);text-align:center;justify-items:center;gap:.55rem;margin:1rem;padding:2.25rem 1rem;transition:color .16s,border-color .16s,background .16s;display:grid}.editor-dropzone.is-dragging{color:var(--vermilion);border-color:var(--vermilion);background:#ef442f12}.editor-dropzone input{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.editor-dropzone p,.editor-dropzone span,.editor-dropzone small{margin:0}.editor-dropzone p{font-size:1.05rem;font-weight:520}.editor-dropzone span,.editor-dropzone small,.editor-upload-message{color:var(--muted);font-size:.68rem}.editor-upload-message{margin:-.2rem 1rem 1rem;line-height:1.45}.editor-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.editor-mini-card{border:1px solid var(--ink);padding:1.25rem}.editor-mini-card>span{color:var(--vermilion);font-family:var(--font-geist-mono), monospace;margin-bottom:2rem;font-size:.68rem;display:block}.editor-mini-card .editor-field+.editor-field{margin-top:1rem}.editor-ledger{border-top:1px solid var(--ink);margin-top:1rem}.editor-ledger>div{border-bottom:1px solid var(--ink);grid-template-columns:.45fr 1.55fr;gap:1rem;padding:1rem 0;display:grid}.editor-project-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.editor-project-heading .editor-section-heading{flex:1;margin-bottom:2rem}.editor-add-button{background:0 0;margin-bottom:2rem}.editor-add-button:hover{color:var(--ivory);background:var(--vermilion)}.editor-project-list{gap:1rem;display:grid}.editor-project-card{border:1px solid var(--ink);background:var(--ivory);transition:opacity .16s,transform .16s,box-shadow .16s}.editor-project-card:hover{box-shadow:.55rem .55rem 0 var(--ink);transform:translate(-.25rem,-.25rem)}.editor-project-card.is-dragging{opacity:.45}.project-card-toolbar{border-bottom:1px solid var(--ink);grid-template-columns:2.5rem 1fr auto;align-items:center;gap:.75rem;min-height:56px;padding:.5rem .75rem;display:grid}.project-card-toolbar button{border:1px solid var(--line);min-width:34px;min-height:34px;color:var(--ink);font:inherit;cursor:pointer;background:0 0}.project-card-toolbar button:disabled{opacity:.3;cursor:default}.project-card-toolbar>div{gap:.4rem;display:flex}.project-card-toolbar .drag-handle{cursor:grab;border:0;font-size:1.3rem}.project-card-toolbar .project-delete{color:#9f2e21;padding-inline:.7rem}.editor-project-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.25rem;display:grid}.editor-project-card>.editor-image-manager{margin:1.25rem 1.25rem 0}.editor-help-card{border:1px solid var(--ink);max-width:49rem;color:var(--ivory);background:var(--ink);margin-top:3rem;padding:clamp(2rem,4vw,4rem)}.editor-help-card h2{letter-spacing:-.07em;margin:3rem 0 1.5rem;font-size:clamp(2.6rem,5vw,5.5rem);font-weight:380;line-height:.9}.editor-help-card>p:not(.editor-kicker){color:#f2efe8b8;max-width:38rem;line-height:1.65}.editor-help-card kbd{font-family:var(--font-geist-mono), monospace;border:1px solid #f2efe86b;padding:.12rem .35rem}.editor-denied{background:var(--ivory);place-content:center;min-height:100vh;padding:2rem;display:grid}.editor-denied h1{letter-spacing:-.075em;max-width:12ch;margin:2rem 0;font-size:clamp(3rem,8vw,8rem);font-weight:380;line-height:.88}.editor-denied a{border-bottom:1px solid var(--ink);width:max-content}@media (width<=960px){.editor-toolbar{align-items:flex-start;position:static}.editor-toolbar-actions{flex-wrap:wrap;justify-content:flex-end}.editor-language-switch,.editor-sync-button{order:-1}.save-message{justify-content:flex-end;width:100%;max-width:none}.editor-body{grid-template-columns:1fr}.editor-sidebar{z-index:10;border-right:0;border-bottom:1px solid var(--ink);height:auto;padding:.75rem 1rem;display:block;position:static}.editor-sidebar>p,.editor-account{display:none}.editor-sidebar nav{grid-template-columns:repeat(6,1fr);display:grid}.editor-sidebar nav button{text-align:center;display:block}.editor-sidebar nav button span{display:none}}@media (width<=680px){.editor-toolbar{padding:1rem;display:block}.editor-toolbar-actions{grid-template-columns:1fr 1fr;margin-top:1rem;display:grid}.editor-language-switch,.editor-sync-button{grid-column:1/3}.save-message{grid-column:1/3;justify-content:flex-start}.editor-body{min-height:auto}.editor-sidebar{overflow-x:auto}.editor-sidebar nav{width:44rem}.editor-workspace{padding:2rem 1rem 4rem}.editor-section-heading{grid-template-columns:2rem minmax(0,1fr)}.editor-form-grid,.editor-card-grid,.editor-contact-list,.editor-project-fields,.editor-ledger>div,.editor-image-card{grid-template-columns:1fr}.editor-image-preview{width:min(100%,24rem)}.editor-image-format-grid{grid-template-columns:1fr}.editor-image-actions .editor-image-remove{margin-left:0}.editor-hero-preview{min-height:330px;padding:1.5rem}.editor-project-heading{display:block}.editor-add-button{width:100%}.project-card-toolbar{grid-template-columns:2.5rem 1fr}.project-card-toolbar>div{grid-column:1/3}.editor-project-card:hover{box-shadow:none;transform:none}}
