*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.left-1\/2{left:50%}.right-3{right:.75rem}.top-1\/2{top:50%}.top-3{top:.75rem}.z-50{z-index:50}.-ml-0{margin-left:-0px}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.aspect-square{aspect-ratio:1 / 1}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-4{height:1rem}.h-48{height:12rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[240px\]{height:240px}.h-\[250px\]{height:250px}.h-full{height:100%}.w-10{width:2.5rem}.w-4{width:1rem}.w-48{width:12rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.shrink-0{flex-shrink:0}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.border{border-width:1px}.border-0{border-width:0px}.border-border,.border-input{border-color:var(--border)}.bg-background{background-color:var(--bg)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-card{background-color:var(--bg-panel)}.bg-destructive{background-color:var(--red)}.bg-muted{background-color:var(--bg-panel)}.bg-primary{background-color:var(--copper)}.bg-secondary{background-color:var(--bg-panel-hover)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-0{padding-left:0}.pl-4{padding-left:1rem}.pt-0{padding-top:0}.pt-4{padding-top:1rem}.font-display{font-family:Fraunces,Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.leading-none{line-height:1}.text-card-foreground{color:var(--text)}.text-destructive-foreground{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:var(--text-muted)}.text-primary{color:var(--copper)}.text-primary-foreground{--tw-text-opacity: 1;color:rgb(18 16 13 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:var(--text)}.text-white\/90{color:#ffffffe6}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: var(--bg)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}:root{--bg: #0b0d10;--bg-panel: #14171c;--bg-panel-hover: #191d24;--border: #262b33;--border-soft: #1c2028;--text: #ece9e2;--text-muted: #9198a3;--text-faint: #5a6070;--copper: #c98a54;--copper-dim: #8c6239;--copper-glow: rgba(201, 138, 84, .35);--teal: #5fbfa6;--teal-glow: rgba(95, 191, 166, .45);--red: #c9645a;--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--max-width: 1080px;--radius: 10px;--radius-sm: 6px}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(circle at 15% 0%,rgba(201,138,84,.07),transparent 45%),radial-gradient(circle at 85% 15%,rgba(95,191,166,.05),transparent 40%);background-attachment:fixed}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p{margin:0}::-moz-selection{background:var(--copper-glow);color:var(--text)}::selection{background:var(--copper-glow);color:var(--text)}:focus-visible{outline:2px solid var(--copper);outline-offset:3px}main{max-width:var(--max-width);margin:0 auto;padding:0 32px}.section{padding:96px 0;border-top:1px solid var(--border-soft)}.section-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--copper);margin-bottom:28px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal-visible{opacity:1;transform:translateY(0)}.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 32px;max-width:var(--max-width);margin:0 auto;background:#0b0d1000;border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}.nav-scrolled{background:#0b0d10d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-soft)}.nav-mark{font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:.04em;color:var(--copper)}.nav-links{display:flex;gap:28px;font-size:14px;color:var(--text-muted)}.nav-links a{transition:color .2s ease}.nav-links a:hover{color:var(--text)}.nav-cta{font-family:var(--font-mono);font-size:13px;padding:8px 16px;border:1px solid var(--border);border-radius:999px;color:var(--text);transition:border-color .2s ease,background .2s ease}.nav-cta:hover{border-color:var(--copper);background:var(--bg-panel)}@media (max-width: 720px){.nav-links{display:none}}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding:72px 0 96px}.eyebrow{font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;color:var(--text-faint);margin-bottom:20px}.hero-name{font-family:var(--font-display);font-weight:500;font-size:clamp(40px,5.4vw,64px);line-height:1.06;letter-spacing:-.01em;color:var(--text);margin-bottom:22px}.hero-tagline{font-size:18px;color:var(--text-muted);max-width:46ch;margin-bottom:28px}.hero-meta{display:flex;align-items:center;gap:16px;margin-bottom:32px;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12.5px;color:var(--text);background:var(--bg-panel);border:1px solid var(--border);padding:7px 12px;border-radius:999px}.hero-location{font-size:13px;color:var(--text-faint)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.hero-contact{display:flex;gap:22px;flex-wrap:wrap;font-size:13.5px;color:var(--text-faint)}.hero-contact a{display:inline-flex;align-items:center;gap:7px;transition:color .2s ease}.hero-contact a:hover{color:var(--copper)}.btn{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:500;padding:11px 18px;border-radius:999px;border:1px solid transparent;transition:transform .2s ease,border-color .2s ease,background .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--copper);color:#12100d}.btn-primary:hover{background:#d69a63}.btn-ghost{border-color:var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--copper-dim);background:var(--bg-panel)}@media (max-width: 860px){.hero{grid-template-columns:1fr;padding-top:48px}}.farm{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;max-width:380px;margin-left:auto}.farm-header{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:12px;color:var(--text-faint);margin-bottom:16px}.farm-title:before{content:"● ";color:var(--copper-dim)}.farm-count{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted)}.farm-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:16px}.farm-cell{aspect-ratio:1;border-radius:4px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);transition:background .6s ease,border-color .6s ease,box-shadow .6s ease}.farm-cell-idle{background:#0f1216}.farm-cell-idle .farm-cell-dot{background:var(--text-faint)}.farm-cell-online{background:#5fbfa614;border-color:#5fbfa659;box-shadow:0 0 10px #5fbfa61f}.farm-cell-online .farm-cell-dot{background:var(--teal);box-shadow:0 0 6px var(--teal-glow)}.farm-cell-testing{background:#c98a541a;border-color:#c98a5466;box-shadow:0 0 10px #c98a5426}.farm-cell-testing .farm-cell-dot{background:var(--copper);box-shadow:0 0 6px var(--copper-glow);animation:pulse 1.2s ease-in-out infinite}.farm-cell-dot{width:6px;height:6px;border-radius:50%;transition:background .6s ease}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}@media (prefers-reduced-motion: reduce){.farm-cell-testing .farm-cell-dot{animation:none}}.farm-log{display:flex;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);border-top:1px solid var(--border-soft);padding-top:12px;min-height:18px;overflow:hidden}.farm-log-caret{color:var(--copper)}.farm-log-text{animation:fadeSlide .5s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes fadeSlide{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.farm-log-text{animation:none}}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.dot-online{background:var(--teal);box-shadow:0 0 6px var(--teal-glow)}.profile-photo{position:relative;display:inline-block;margin-bottom:24px}.profile-photo-trigger{position:relative;display:block;border-radius:50%;background:none;border:none;padding:0;cursor:pointer}.profile-photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:50%;background:#0b0d10b8;color:var(--text);font-size:11px;font-family:var(--font-mono);opacity:0;transition:opacity .2s ease}.profile-photo-trigger:hover .profile-photo-overlay,.profile-photo-trigger:focus-visible .profile-photo-overlay{opacity:1}.profile-photo-remove{position:absolute;top:-4px;right:-4px;width:22px;height:22px;border-radius:50%;background:var(--bg-panel);border:1px solid var(--border);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,color .2s ease}.profile-photo-remove:hover{border-color:var(--red);color:var(--red)}.profile-photo-error{margin-top:8px;font-size:12.5px;color:var(--red);max-width:220px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.events-intro{color:var(--text-muted);max-width:62ch;margin-bottom:32px;font-size:15px}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.event-card{overflow:hidden;display:flex;flex-direction:column;transition:border-color .25s ease}.event-card:hover{border-color:var(--copper-dim)}.event-card-photo{position:relative;aspect-ratio:4 / 3;background:var(--bg);border-bottom:1px solid var(--border-soft)}.event-card-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.015),rgba(255,255,255,.015) 10px,transparent 10px,transparent 20px);border:none;color:var(--text-faint);font-family:var(--font-mono);font-size:12px;cursor:pointer;transition:color .2s ease}.event-card-placeholder:hover{color:var(--copper)}.event-card-image-trigger{width:100%;height:100%;border:none;padding:0;cursor:pointer;position:relative;display:block}.event-card-image-trigger img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.event-card-image-hover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:6px;background:#0b0d108c;color:var(--text);font-family:var(--font-mono);font-size:12px;opacity:0;transition:opacity .2s ease}.event-card-image-trigger:hover .event-card-image-hover{opacity:1}.event-card-remove{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:#0b0d10bf;border:1px solid var(--border);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,color .2s ease}.event-card-remove:hover{border-color:var(--red);color:var(--red)}.event-card-lightbox-image{width:100%;max-height:78vh;-o-object-fit:contain;object-fit:contain;border-radius:calc(var(--radius) - 4px)}.event-card-date{font-family:var(--font-mono);font-size:11.5px;color:var(--copper)}.event-card-text{font-size:13.5px;color:var(--text-muted);line-height:1.6}@media (max-width: 860px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 620px){.events-grid{grid-template-columns:1fr}}.about-text{font-size:19px;line-height:1.75;color:var(--text-muted);max-width:70ch}.timeline{display:flex;flex-direction:column;gap:64px}.timeline-node{display:grid;grid-template-columns:28px 1fr;gap:28px}.timeline-marker{display:flex;flex-direction:column;align-items:center}.timeline-dot{width:11px;height:11px;border-radius:50%;background:var(--copper);box-shadow:0 0 8px var(--copper-glow);flex-shrink:0;margin-top:6px}.timeline-line{flex:1;width:1px;background:var(--border);margin-top:10px}.timeline-period{font-family:var(--font-mono);font-size:12.5px;color:var(--copper);letter-spacing:.03em}.timeline-role{font-family:var(--font-display);font-size:26px;font-weight:500;color:var(--text);margin-top:6px}.timeline-company{font-size:15px;color:var(--text-muted);margin-top:4px}.timeline-location{color:var(--text-faint)}.timeline-intro{margin-top:14px;color:var(--text-muted);max-width:62ch}.stack-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.tag{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);background:var(--bg-panel);border:1px solid var(--border);padding:5px 10px;border-radius:5px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}.project{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px;transition:border-color .25s ease,background .25s ease}.project:hover{border-color:var(--copper-dim);background:var(--bg-panel-hover)}.project-name{font-family:var(--font-display);font-size:18px;font-weight:500;color:var(--text);margin-bottom:6px}.project-summary{font-size:13.5px;color:var(--text-faint);margin-bottom:14px}.project-bullets{display:flex;flex-direction:column;gap:9px}.project-bullets li{font-size:14px;color:var(--text-muted);padding-left:16px;position:relative}.project-bullets li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--copper-dim)}@media (max-width: 760px){.project-grid{grid-template-columns:1fr}.timeline-node{grid-template-columns:18px 1fr;gap:18px}}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px 48px}.skill-category{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.04em;color:var(--text-faint);margin-bottom:14px;text-transform:uppercase}@media (max-width: 720px){.skills-grid{grid-template-columns:1fr}}.edu-card{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:32px}.edu-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--border-soft);margin-bottom:24px;flex-wrap:wrap}.edu-degree{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--text)}.edu-school{color:var(--text-muted);margin-top:6px;font-size:14.5px}.edu-gpa{text-align:right;display:flex;flex-direction:column;align-items:flex-end}.edu-gpa-number{font-family:var(--font-display);font-size:32px;color:var(--copper);line-height:1}.edu-gpa-label{font-family:var(--font-mono);font-size:11.5px;color:var(--text-faint);margin-top:6px}.edu-body{display:grid;grid-template-columns:1.3fr 1fr;gap:32px}.edu-subhead{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);margin-bottom:12px}.edu-activities{display:flex;flex-direction:column;gap:10px}.edu-activities li{font-size:14px;color:var(--text-muted);padding-left:16px;position:relative}.edu-activities li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--teal)}@media (max-width: 720px){.edu-body{grid-template-columns:1fr;gap:24px}}.awards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.award-card{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:22px;transition:border-color .25s ease,transform .25s ease}.award-card:hover{border-color:var(--copper-dim);transform:translateY(-2px)}.award-date{font-family:var(--font-mono);font-size:11.5px;color:var(--copper)}.award-title{font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--text);margin-top:10px}.award-org{font-size:13px;color:var(--text-faint);margin-top:4px}.award-detail{font-size:13.5px;color:var(--text-muted);margin-top:12px;line-height:1.55}@media (max-width: 860px){.awards-grid{grid-template-columns:1fr}}.footer{max-width:var(--max-width);margin:0 auto;padding:96px 32px 48px;border-top:1px solid var(--border-soft)}.footer-heading{font-family:var(--font-display);font-size:clamp(28px,4vw,40px);font-weight:500;color:var(--text);max-width:20ch}.footer-sub{color:var(--text-muted);margin:18px 0 28px;max-width:50ch}.footer-links{display:flex;gap:28px;flex-wrap:wrap;margin:40px 0 32px;font-size:14px;color:var(--text-muted)}.footer-links a{display:inline-flex;align-items:center;gap:7px;transition:color .2s ease}.footer-links a:hover{color:var(--copper)}.footer-copy{font-family:var(--font-mono);font-size:12px;color:var(--text-faint);padding-top:24px;border-top:1px solid var(--border-soft)}.hover\:bg-accent:hover{background-color:var(--teal)}.hover\:text-accent-foreground:hover{--tw-text-opacity: 1;color:rgb(11 21 18 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: var(--copper)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
