.t-ObYq_pageHead{padding:clamp(3rem,7vw,6rem) 0 clamp(2rem,4vw,3.25rem)}.t-ObYq_eyebrow{margin:0}.t-ObYq_title{color:var(--fg);font-family:var(--type-page-title-family);font-size:var(--type-page-title-size);font-weight:var(--type-page-title-weight);letter-spacing:var(--type-page-title-tracking);line-height:var(--type-page-title-leading);margin:1rem 0 0}.t-ObYq_lead{color:var(--fg-muted);font-family:var(--type-lead-text-family);font-size:var(--type-lead-text-size);font-style:var(--type-lead-text-style);font-weight:var(--type-lead-text-weight);letter-spacing:var(--type-lead-text-tracking);line-height:var(--type-lead-text-leading);margin:1.5rem 0 0}.t-ObYq_timeline{padding:clamp(2.5rem,5vw,4rem) 0 clamp(3rem,6vw,5rem)}.t-ObYq_tl{border-left:1px solid var(--line-strong);padding-left:clamp(1.75rem,5vw,3.5rem);position:relative}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.t-ObYq_tl:after{background:var(--accent);content:"";inset-block:0;transform-origin:top;width:1px;animation:linear both t-ObYq_tl-draw;animation-timeline:view();animation-range:contain;position:absolute;left:-1px}@keyframes t-ObYq_tl-draw{0%{scale:1 0}to{scale:1}}}}.t-ObYq_tlEntry{padding-bottom:clamp(2.75rem,6vw,4.5rem);position:relative}.t-ObYq_tlEntry[data-shown]:before{background:var(--accent);border-color:var(--accent)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.t-ObYq_tl:after{background:var(--accent);content:"";inset-block:0;transform-origin:top;width:1px;animation:linear both t-ObYq_tl-draw;animation-timeline:view();animation-range:contain;position:absolute;left:-1px}@keyframes t-ObYq_tl-draw{0%{scale:1 0}to{scale:1}}}}.t-ObYq_tlEntry:last-child{padding-bottom:0}.t-ObYq_tlEntry:before{background:var(--bg);border:2px solid var(--line-strong);content:"";height:12px;transition:background-color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);border-radius:50%;width:12px;position:absolute;top:6px;left:calc(-1*clamp(1.75rem,5vw,3.5rem) - 6.5px)}.t-ObYq_tlEntryNow:before{background:var(--accent);border-color:var(--accent)}.t-ObYq_tlEntryNow:after{border:1px solid var(--accent);content:"";opacity:.35;border-radius:50%;width:22px;height:22px;position:absolute;top:1px;left:calc(-1*clamp(1.75rem,5vw,3.5rem) - 11.5px)}.t-ObYq_tlDates{color:var(--accent);font-family:var(--type-mono-label-family);font-size:var(--type-mono-label-size);letter-spacing:var(--type-mono-label-tracking);margin:0 0 var(--space-2)}.t-ObYq_tlRole{color:var(--fg);font-family:var(--font-serif);font-size:clamp(1.6rem,1.2rem + 1.4vw,2.25rem);font-weight:var(--weight-medium);letter-spacing:-.01em;margin:0;line-height:1.1}.t-ObYq_tlPrevTitle{margin-top:var(--space-4)}.t-ObYq_tlPrevTitle .t-ObYq_tlRole{font-size:clamp(1.25rem,1rem + 1vw,1.6rem)}.t-ObYq_tlCompany{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-semibold);margin:6px 0 0}.t-ObYq_tlLocation{font-weight:var(--weight-regular);color:var(--fg-faint)}.t-ObYq_tlProgression{color:var(--fg-faint);font-family:var(--font-sans);font-size:var(--text-base);margin:4px 0 0;font-style:italic}.t-ObYq_tlOverview{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-md);margin:var(--space-4) 0 0;text-wrap:pretty;max-width:68ch;line-height:1.65}.t-ObYq_tlLabel{color:var(--fg-faint);font-family:var(--type-eyebrow-family);font-size:var(--type-eyebrow-size);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-tracking);line-height:var(--type-eyebrow-leading);margin:var(--space-5) 0 var(--space-3);text-transform:uppercase;width:100%}.t-ObYq_tlInitiatives{gap:var(--space-5) var(--space-6);margin:var(--space-5) 0 0;grid-template-columns:1fr 1fr;padding:0;list-style:none;display:grid}.t-ObYq_tlInitiatives li{border-top:1px solid var(--line);padding-top:var(--space-3);margin:0}.t-ObYq_tlInitiatives h4{color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-semibold);margin:0 0 4px}.t-ObYq_tlInitiatives p{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-base);margin:0;line-height:1.55}.t-ObYq_tlAchievements{gap:var(--space-3);margin:var(--space-5) 0 0;padding:0;list-style:none;display:grid}.t-ObYq_tlAchievements li{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-base);gap:var(--space-3);max-width:72ch;margin:0;line-height:1.5;display:flex}.t-ObYq_tlAchievements li svg{color:var(--secondary);flex:none;margin-top:3px}.t-ObYq_tlAchievements b{color:var(--fg);font-weight:var(--weight-semibold)}.t-ObYq_tlTech{gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.t-ObYq_caseStudies{border-top:1px solid var(--line);padding:clamp(2.5rem,5vw,4rem) 0}.t-ObYq_sectionHead{margin-bottom:var(--space-7)}.t-ObYq_sectionHead h2{font-family:var(--type-section-heading-family);font-weight:var(--type-section-heading-weight);font-size:var(--type-section-heading-size);line-height:var(--type-section-heading-leading);letter-spacing:var(--type-section-heading-tracking);color:var(--fg);margin:.5rem 0 0}.t-ObYq_caseGrid{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.t-ObYq_caseCard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-6);color:inherit;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.t-ObYq_caseCard:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);color:inherit;transform:translateY(-2px)}.t-ObYq_caseCompany{font-family:var(--type-mono-label-family);font-size:var(--type-mono-label-size);letter-spacing:var(--type-mono-label-tracking);color:var(--accent)}.t-ObYq_caseTitle{font-family:var(--font-serif);font-weight:var(--weight-medium);letter-spacing:-.01em;color:var(--fg);margin:var(--space-3) 0 var(--space-5);font-size:clamp(1.35rem,1.1rem + 1vw,1.75rem);line-height:1.2}.t-ObYq_caseLink{align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--accent);margin-top:auto;display:inline-flex}.t-ObYq_caseLink svg{transition:transform var(--dur-base) var(--ease-spring)}.t-ObYq_caseCard:hover .t-ObYq_caseLink svg{transform:translate(3px)}.t-ObYq_projects{background:var(--bg-subtle);border-top:1px solid var(--line);padding:clamp(3rem,6vw,5rem) 0}.t-ObYq_appsGrid{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.t-ObYq_appCard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-5);flex-direction:column;display:flex}.t-ObYq_appName{font-family:var(--font-sans);font-weight:var(--weight-semibold);font-size:var(--text-md);color:var(--fg);margin:0}.t-ObYq_appDesc{font-family:var(--font-sans);font-size:var(--text-base);color:var(--fg-muted);margin:var(--space-3) 0 var(--space-4);line-height:1.55}.t-ObYq_appLinks{gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line);flex-wrap:wrap;margin-top:auto;display:flex}.t-ObYq_appLink{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--accent);text-decoration:none}.t-ObYq_appLink:hover{text-decoration:underline}.t-ObYq_projectsHead{margin-bottom:var(--space-7)}.t-ObYq_projectsHead h2{color:var(--fg);font-family:var(--type-section-heading-family);font-size:var(--type-section-heading-size);font-weight:var(--type-section-heading-weight);letter-spacing:var(--type-section-heading-tracking);line-height:var(--type-section-heading-leading);margin:.5rem 0 var(--space-4)}.t-ObYq_projectsHead p{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-md);margin:0;line-height:1.65}.t-ObYq_projGrid{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.t-ObYq_proj{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);color:inherit;cursor:pointer;padding:var(--space-5);transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.t-ObYq_proj:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);color:inherit;transform:translateY(-2px)}.t-ObYq_projTop{align-items:baseline;gap:var(--space-3);justify-content:space-between;display:flex}.t-ObYq_projName{color:var(--fg);font-family:var(--font-mono);font-size:var(--text-md)}.t-ObYq_projLink{color:var(--fg-faint);transition:color var(--dur-fast) var(--ease-out), transform var(--dur-base) var(--ease-spring);display:inline-flex}.t-ObYq_proj:hover .t-ObYq_projLink{color:var(--accent);transform:translate(2px,-2px)}.t-ObYq_projDesc{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-base);margin:var(--space-3) 0 var(--space-4);line-height:1.55}.t-ObYq_projTags{margin-bottom:var(--space-4);flex-wrap:wrap;gap:6px;display:flex}.t-ObYq_projTag{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-xs);color:var(--fg-muted);font-family:var(--font-mono);font-size:var(--text-xs);padding:2px 7px}.t-ObYq_projHighlights{border-top:1px solid var(--line);gap:var(--space-3);padding:var(--space-4) 0 0;margin:auto 0 0;list-style:none;display:grid}.t-ObYq_projHighlights li{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-base);gap:var(--space-3);margin:0;line-height:1.5;display:flex}.t-ObYq_projHighlights li:before{background:var(--highlight);content:"";border-radius:1px;flex:none;width:5px;height:5px;margin-top:.55em}.t-ObYq_workCta{text-align:center;padding:clamp(3.5rem,7vw,6rem) 0}.t-ObYq_workCta h2{color:var(--fg);font-family:var(--type-sub-heading-family);font-size:var(--type-sub-heading-size);font-weight:var(--type-sub-heading-weight);letter-spacing:var(--type-sub-heading-tracking);line-height:var(--type-sub-heading-leading);margin:0}.t-ObYq_workCta p{color:var(--fg-muted);font-family:var(--font-sans);font-size:var(--text-md);margin:var(--space-4) auto var(--space-6);max-width:48ch;line-height:1.6}.t-ObYq_workCtaActions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}@media (max-width:920px){.t-ObYq_tlInitiatives,.t-ObYq_projGrid,.t-ObYq_caseGrid,.t-ObYq_appsGrid{grid-template-columns:1fr}}@media (max-width:720px){.t-ObYq_workCtaActions{flex-direction:column;align-items:stretch}}
