.hero-module__qbw09W__hero{width:calc(100% - 2 * var(--spacing-gutter));max-width:calc(var(--max-width-page) - 2 * var(--spacing-gutter));background-color:var(--hero-tint,var(--color-grey-100));border-radius:var(--radius-frame);margin:0 auto;position:relative;overflow:hidden}.hero-module__qbw09W__plain{background-color:#0000;background-image:none;border-radius:0;overflow:visible}
.hero-content-module__IvTjyW__heroInner{z-index:2;padding:var(--spacing-hero-pad-top) clamp(24px, 4vw, 56px) 0;position:relative}.hero-content-module__IvTjyW__heroContent{text-align:left;width:100%;position:relative}.hero-content-module__IvTjyW__heroContentCenter{text-align:center;margin:0 auto}.hero-content-module__IvTjyW__heroContentCenter .hero-content-module__IvTjyW__heroEyebrowRow{justify-content:center}.hero-content-module__IvTjyW__heroEyebrowRow{font-family:var(--font-mono);letter-spacing:.06em;margin-bottom:var(--spacing-hero-eyebrow-gap);flex-wrap:wrap;justify-content:flex-start;gap:18px 40px;display:flex}.hero-content-module__IvTjyW__heroLineBreak{display:none}@media (min-width:761px){.hero-content-module__IvTjyW__heroLineBreak{display:block}}.hero-content-module__IvTjyW__heroEyebrow{font-size:var(--font-size-base);letter-spacing:.1em;color:var(--color-muted);font-weight:400}.hero-content-module__IvTjyW__heroTitle{font-family:var(--font-headline);font-weight:400;font-size:var(--font-size-hero);letter-spacing:-.02em;width:100%;color:var(--color-text-primary);margin:0;line-height:1.08}.hero-content-module__IvTjyW__heroSubtitle{font-family:var(--font-mono);font-size:var(--font-size-label);color:var(--color-muted);letter-spacing:.04em;margin:var(--space-md) 0 0}.hero-content-module__IvTjyW__heroRule{background:var(--color-line);width:40px;height:1px;margin:28px 0 0}.hero-content-module__IvTjyW__heroContentCenter .hero-content-module__IvTjyW__heroRule{margin-left:auto;margin-right:auto}
.roles-section-module__4itvJG__root{margin-top:88px}.roles-section-module__4itvJG__title{font-family:var(--font-headline);color:var(--color-text-primary);margin:0 0 26px;font-size:clamp(26px,3vw,32px);font-weight:400;line-height:1.1}.roles-section-module__4itvJG__roleList{margin:0;padding:0;list-style:none}.roles-section-module__4itvJG__roleRow{gap:var(--space-md);grid-template-columns:40px 1fr 1fr 170px;align-items:center;padding:22px 0;display:grid}.roles-section-module__4itvJG__roleRow+.roles-section-module__4itvJG__roleRow{border-top:1px solid var(--color-line-soft)}.roles-section-module__4itvJG__roleIndex{border-radius:var(--radius-pill);width:28px;height:28px;font-family:var(--font-mono);background:var(--color-cs-sage-tint);color:var(--color-cs-sage-text);justify-content:center;align-items:center;font-size:12px;display:flex}.roles-section-module__4itvJG__roleRow:nth-child(6n+2) .roles-section-module__4itvJG__roleIndex{background:var(--color-cs-dusty-blue-tint);color:var(--color-cs-dusty-blue-text)}.roles-section-module__4itvJG__roleRow:nth-child(6n+3) .roles-section-module__4itvJG__roleIndex{background:var(--color-cs-lavender-tint);color:var(--color-cs-lavender-text)}.roles-section-module__4itvJG__roleRow:nth-child(6n+4) .roles-section-module__4itvJG__roleIndex{background:var(--color-cs-ochre-tint);color:var(--color-cs-ochre-text)}.roles-section-module__4itvJG__roleRow:nth-child(6n+5) .roles-section-module__4itvJG__roleIndex{background:var(--color-cs-coral-tint);color:var(--color-cs-coral-text)}.roles-section-module__4itvJG__roleRow:nth-child(6n+6) .roles-section-module__4itvJG__roleIndex{background:var(--color-cs-teal-tint);color:var(--color-cs-teal-text)}.roles-section-module__4itvJG__roleCompany{font-family:var(--font-body);color:var(--color-text-primary);font-size:20px;font-weight:600}.roles-section-module__4itvJG__roleTitle{font-family:var(--font-body);color:var(--color-ink-2);font-size:17px;font-weight:400}.roles-section-module__4itvJG__roleYears{font-family:var(--font-mono);text-align:right;color:var(--color-muted);white-space:nowrap;font-size:13px}@media (max-width:640px){.roles-section-module__4itvJG__roleRow{grid-template-columns:32px 1fr;grid-template-areas:"index company"".title"".years";row-gap:4px}.roles-section-module__4itvJG__roleIndex{grid-area:index}.roles-section-module__4itvJG__roleCompany{grid-area:company}.roles-section-module__4itvJG__roleTitle{grid-area:title}.roles-section-module__4itvJG__roleYears{text-align:left;grid-area:years}}
.work-row-module__KisYbG__workRow{background:var(--work-row-tint);border-radius:var(--radius-frame);grid-template-columns:.85fr 1fr;align-items:stretch;gap:36px;padding:28px 28px 0;transition:transform .25s cubic-bezier(.4,0,.2,1);display:grid;position:relative}.work-row-module__KisYbG__workRow:hover,.work-row-module__KisYbG__workRow:focus-within{transform:translateY(-6px)!important}.work-row-module__KisYbG__cardLink{z-index:1;position:absolute;inset:0}.work-row-module__KisYbG__thumb{border-radius:0;order:2;height:100%;min-height:clamp(360px,44vw,500px);display:block;position:relative;overflow:hidden}.work-row-module__KisYbG__thumbImg{object-fit:contain}@media (max-width:900px){.work-row-module__KisYbG__thumbImg{object-fit:cover}}.work-row-module__KisYbG__text{text-align:left;flex-direction:column;order:1;justify-content:center;align-items:flex-start;display:flex}.work-row-module__KisYbG__thumbPlaceholder{position:absolute;inset:0}.work-row-module__KisYbG__thumbPlaceholderInner{background:var(--color-grey-100);position:absolute;inset:0}.work-row-module__KisYbG__thumbLabel{font-family:var(--font-mono);font-size:var(--font-size-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted-3);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.work-row-module__KisYbG__metaRow{align-items:center;gap:8px;margin-bottom:16px;display:inline-flex}.work-row-module__KisYbG__numberBadge{border-radius:var(--radius-pill);background:var(--color-bg-page);width:30px;height:30px;color:var(--work-row-text);font-family:var(--font-mono);flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.work-row-module__KisYbG__tags{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--work-row-text);font-size:13px;font-weight:700}.work-row-module__KisYbG__tagSep{opacity:.6}.work-row-module__KisYbG__title{font-family:var(--font-headline);letter-spacing:-.01em;color:var(--color-text-primary);margin:0 0 8px;font-size:clamp(38px,5.2vw,58px);font-weight:400;line-height:1.08}.work-row-module__KisYbG__tagline{font-family:var(--font-body);color:var(--color-ink-2);max-width:44ch;margin:0 0 32px;font-size:clamp(20px,2.4vw,30px);font-weight:400;line-height:1.4}@media (min-width:901px){.work-row-module__KisYbG__tagline{line-height:1.2}}.work-row-module__KisYbG__cta{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-primary);align-items:center;gap:6px;font-size:17px;font-weight:700;display:inline-flex}.work-row-module__KisYbG__ctaArrow{transition:transform .18s}.work-row-module__KisYbG__workRow:hover .work-row-module__KisYbG__ctaArrow,.work-row-module__KisYbG__workRow:focus-within .work-row-module__KisYbG__ctaArrow{transform:translate(3px)}@media (max-width:900px){.work-row-module__KisYbG__workRow{grid-template-columns:1fr}.work-row-module__KisYbG__thumb{aspect-ratio:7/6;align-self:start;height:auto;min-height:0}}
.page-module__xgPmsG__body{max-width:var(--max-width-page);padding:var(--spacing-section-gap-tight) var(--spacing-gutter) var(--spacing-section-gap-end);margin:0 auto}.page-module__xgPmsG__introGrid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:start;gap:56px;display:grid}.page-module__xgPmsG__portrait{aspect-ratio:1;border-radius:var(--radius-card);background:var(--color-grey-200);border:1px solid var(--color-line);position:relative;overflow:hidden}.page-module__xgPmsG__portraitHover{opacity:0;transition:opacity .4s}.page-module__xgPmsG__portrait:hover .page-module__xgPmsG__portraitHover,.page-module__xgPmsG__portrait:focus-visible .page-module__xgPmsG__portraitHover{opacity:1}.page-module__xgPmsG__introText{flex-direction:column;gap:20px;display:flex}.page-module__xgPmsG__paragraph{font-family:var(--font-body);font-weight:400;font-size:var(--font-size-body);color:var(--color-ink-2);text-wrap:pretty;margin:0;line-height:1.68}.page-module__xgPmsG__skillsSection{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:72px;display:grid}.page-module__xgPmsG__skillGroup{border:1px solid var(--color-line);border-radius:var(--radius-card);flex-direction:column;gap:14px;margin:0;padding:24px;display:flex}.page-module__xgPmsG__skillIcon{background:var(--color-cs-sage-tint);width:36px;height:36px;color:var(--color-cs-sage-text);border-radius:9px;justify-content:center;align-items:center;display:flex}.page-module__xgPmsG__skillGroup:nth-child(2) .page-module__xgPmsG__skillIcon{background:var(--color-cs-dusty-blue-tint);color:var(--color-cs-dusty-blue-text)}.page-module__xgPmsG__skillGroup:nth-child(3) .page-module__xgPmsG__skillIcon{background:var(--color-cs-lavender-tint);color:var(--color-cs-lavender-text)}.page-module__xgPmsG__skillGroup:nth-child(4) .page-module__xgPmsG__skillIcon{background:var(--color-cs-ochre-tint);color:var(--color-cs-ochre-text)}.page-module__xgPmsG__skillGroupHeading{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin:0;font-size:11px;font-weight:700}.page-module__xgPmsG__skillGroupList{font-family:var(--font-body);color:var(--color-ink-2);flex-direction:column;gap:8px;margin:0;padding:0;font-size:17px;font-weight:400;line-height:1.4;list-style:none;display:flex}@media (max-width:1100px){.page-module__xgPmsG__skillsSection{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.page-module__xgPmsG__introGrid{grid-template-columns:1fr;gap:0}.page-module__xgPmsG__portrait{margin-bottom:var(--space-lg)}}@media (max-width:560px){.page-module__xgPmsG__skillsSection{gap:var(--space-lg);grid-template-columns:1fr;margin-top:44px}}
.page-module__E0kJGG__workSection{max-width:var(--max-width-page);padding:0 var(--spacing-gutter) var(--spacing-section-gap-end);margin:0 auto}.page-module__E0kJGG__workHeader{padding-top:var(--spacing-section-gap-tight);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);margin-bottom:clamp(40px,6vh,72px);font-size:12px;font-weight:600}.page-module__E0kJGG__workList{grid-template-columns:1fr;gap:64px;display:grid}
