:root{color-scheme:light;--ink: #181512;--ink-soft: #3a332c;--paper: #f3ecdf;--paper-strong: #fffaf0;--paper-blue: #dbeef4;--paper-lavender: #e7dcf0;--paper-green: #deeadf;--paper-amber: #f4cf9c;--clay: #bb5a34;--line: rgba(24, 21, 18, .2);--line-dark: rgba(246, 239, 227, .22);--muted: rgba(24, 21, 18, .64);--muted-dark: rgba(246, 239, 227, .72);--max: 1440px;--side: 2rem}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;min-width:320px;color:var(--ink);background:linear-gradient(90deg,rgba(24,21,18,.035) 1px,transparent 1px) 0 0 / 6rem 6rem,var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;letter-spacing:0;text-rendering:geometricPrecision}body::selection{color:var(--paper-strong);background:var(--clay)}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,textarea,select{font:inherit}.app{min-height:100vh;overflow:hidden}.opening-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;overflow:hidden;color:var(--paper-strong);background:linear-gradient(90deg,transparent 0 14%,rgba(255,255,255,.055) 14% 14.2%,transparent 14.2%),#15120f;clip-path:inset(0 0 0 0);pointer-events:none}.opening-panel__line{position:absolute;top:50%;left:8%;width:84%;height:1px;background:#fffaf08c}.opening-panel__label{display:grid;gap:.8rem;margin:0;overflow:hidden;text-align:center;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:2.1rem;line-height:.95}.opening-panel__label span{display:block}.site-header{position:fixed;top:0;right:0;left:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem var(--side);color:var(--ink);background:#f3ecdfd1;border-bottom:1px solid rgba(24,21,18,.08);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:grid;width:2.8rem;height:2.8rem;place-items:center;border:1px solid var(--ink);border-radius:50%;font-size:.78rem;font-weight:800}.site-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem 1.2rem;color:var(--muted);font-size:.82rem;text-transform:uppercase}.site-header nav a{position:relative;padding:.2rem 0}.site-header nav a:after{position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left center;transition:transform .32s ease;content:""}.site-header nav a:hover:after{transform:scaleX(1)}.hero{position:relative;padding:8.8rem var(--side) 3.6rem;background:linear-gradient(180deg,#fffaf0c7,#f3ecdff5),var(--paper)}.hero,.motion-section,.site-footer{scroll-margin-top:5rem}.hero:after{position:absolute;right:var(--side);bottom:0;left:var(--side);height:1px;background:var(--line);content:""}.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) 22rem;gap:3rem;width:min(100%,var(--max));margin:0 auto;align-items:center}.hero-kicker,.section-kicker,.project-period,.block-label{margin:0;color:var(--clay);font-size:.82rem;font-weight:800;text-transform:uppercase}.hero-title{display:grid;gap:.15rem;max-width:69rem;margin:1.1rem 0 1.4rem;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:6.65rem;font-weight:700;line-height:.88}.title-mask{display:block;overflow:hidden;padding-bottom:.08em}.hero-title-line{display:block;transform-origin:left center}.hero-copy{max-width:48rem;margin:0;color:var(--ink-soft);font-size:1.22rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.contact-pill,.intent-pill{min-height:2.7rem;display:inline-flex;align-items:center;gap:.48rem;border:1px solid rgba(24,21,18,.24);border-radius:999px;padding:.62rem 1rem;background:#fffaf08c;color:var(--ink);font-size:.92rem}.contact-pill{cursor:pointer}.contact-pill:hover{border-color:#1815126b;background:#fffaf0d1}.contact-icon{width:1.05rem;height:1.05rem;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-text{line-height:1}.hero-orbit{align-self:stretch;display:grid;align-content:center;gap:1rem;padding-left:2rem;border-left:1px solid var(--line)}.hero-orbit span{display:block;padding:1rem 0;border-bottom:1px solid rgba(24,21,18,.13);color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.55rem}.section-inner{width:min(100%,var(--max));margin:0 auto;padding:8rem var(--side)}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,32rem);gap:2rem;align-items:end;margin-bottom:4rem}.section-kicker{grid-column:1 / -1}.section-title{margin:0;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:5.65rem;line-height:.9;transform-origin:left center;overflow-wrap:normal;word-break:normal}.section-summary{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.85}.capabilities-section{background:linear-gradient(90deg,rgba(219,238,244,.46),transparent 46%),var(--paper-strong)}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.capability-card{display:grid;grid-template-rows:auto 1fr;min-height:100%;background:var(--paper);border-radius:8px;overflow:hidden}.capability-card__media{aspect-ratio:1 / 1;overflow:hidden;background:var(--paper-blue)}.capability-card__media img{width:100%;height:100%;object-fit:cover}.capability-card__body{display:flex;min-height:24rem;flex-direction:column;padding:1.25rem}.capability-card__body>p:first-child{margin:0 0 3rem;color:var(--muted);font-weight:800}.capability-card h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2.35rem;line-height:1}.capability-card h4{margin:.55rem 0 1rem;font-size:1.05rem}.capability-card__body>p:not(:first-child){margin:0;color:var(--ink-soft);line-height:1.75}.capability-card ul,.project-highlights ul,.large-list,.timeline-item ul,.project-row ul{padding:0;margin:1.3rem 0 0;list-style:none}.capability-card li,.project-highlights li,.large-list li,.timeline-item li,.project-row li{position:relative;padding-left:1rem;color:var(--ink-soft);line-height:1.75}.capability-card li:before,.project-highlights li:before,.large-list li:before,.timeline-item li:before,.project-row li:before{position:absolute;top:.82em;left:0;width:.36rem;height:.36rem;background:currentColor;border-radius:999px;content:""}.accent-blue .capability-card__media{background:var(--paper-blue)}.accent-amber .capability-card__media{background:var(--paper-amber)}.accent-lavender .capability-card__media{background:var(--paper-lavender)}.accent-green .capability-card__media{background:var(--paper-green)}.dark-band{color:var(--paper-strong);background:linear-gradient(90deg,rgba(255,250,240,.045) 1px,transparent 1px) 0 0 / 6rem 6rem,#17130f}.dark-band .section-summary,.dark-band .project-copy p,.dark-band .project-highlights li{color:var(--muted-dark)}.dark-band .section-kicker,.dark-band .project-period,.dark-band .block-label{color:#ef9b6f}.project-hero-grid,.companion-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);gap:1px;margin-bottom:2rem;background:var(--line-dark);border:1px solid var(--line-dark)}.project-copy,.project-highlights,.companion-copy{min-height:100%;padding:2rem;background:#fffaf00a;border-radius:8px}.project-copy h3,.companion-copy h3{max-width:58rem;margin:1rem 0;font-family:Georgia,Times New Roman,serif;font-size:3.15rem;line-height:1.05}.project-copy p,.companion-copy p{margin:0;font-size:1.04rem;line-height:1.9}.tech-list{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.4rem}.tech-list span{display:inline-flex;min-height:2.1rem;align-items:center;border:1px solid rgba(255,250,240,.23);border-radius:999px;padding:.42rem .72rem;color:inherit;font-size:.82rem}.metric-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1px;margin:2rem 0;background:var(--line);border:1px solid var(--line)}.metric-strip--dark{background:var(--line-dark);border-color:var(--line-dark)}.metric-strip__item{min-height:8rem;padding:1.2rem;background:var(--paper-strong)}.metric-strip--dark .metric-strip__item{color:var(--paper-strong);background:#fffaf00f}.metric-strip__item strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:2.25rem;line-height:1}.metric-strip__item span{display:block;margin-top:1rem;color:var(--muted);line-height:1.55}.metric-strip--dark .metric-strip__item span{color:var(--muted-dark)}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line-dark);border:1px solid var(--line-dark)}.video-tile{min-width:0;padding:1rem;color:var(--ink);background:#f5ebda;border-radius:8px}.video-tile__header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.video-tile__header p,.video-tile__header span,.video-tile__label,.video-tile__note{margin:0;color:#18151294;font-size:.78rem;font-weight:800;text-transform:uppercase}.video-tile h4{margin:.25rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;line-height:1.1}.video-tile__frame{aspect-ratio:16 / 10;overflow:hidden;background:#090807}.video-tile video{width:100%;height:100%;object-fit:contain;background:#090807}.video-tile__label{margin-top:.45rem;line-height:1.5}.video-tile__note{margin-top:1rem;color:#bb5a34e6;line-height:1.5}.companion-section{background:linear-gradient(90deg,rgba(231,220,240,.72),transparent 48%),#f7f2ec}.companion-grid{grid-template-columns:minmax(0,.82fr) minmax(28rem,1.18fr);background:var(--line);border-color:var(--line)}.companion-copy,.companion-section .video-tile{background:#fffaf0b8}.companion-copy p,.large-list li{color:var(--ink-soft)}.companion-section .tech-list span{border-color:#1815123d}.companion-video{min-width:0}.video-tile--wide{height:100%}.video-tile--wide .video-tile__frame{aspect-ratio:16 / 9}.selected-section{background:var(--paper-strong)}.project-rows{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:.55fr 2.45fr;gap:2rem;padding:2.4rem 0;border-bottom:1px solid var(--line)}.project-row__rule{grid-column:1 / -1;height:1px;background:transparent}.project-row__meta{display:grid;align-content:start;gap:.75rem}.project-row__meta span{font-family:Georgia,Times New Roman,serif;font-size:3.2rem;line-height:1}.project-row__meta p{margin:0;color:var(--muted);font-size:.86rem;font-weight:800;text-transform:uppercase}.project-row__body{display:grid;grid-template-columns:minmax(15rem,.78fr) minmax(0,1.22fr);gap:2rem}.project-row h3{margin:0 0 .7rem;font-family:Georgia,Times New Roman,serif;font-size:2.45rem;line-height:1.05}.project-row__copy p{margin:0 0 1.1rem;color:var(--ink-soft);line-height:1.8}.project-row__copy strong{display:block;margin-bottom:.2rem;color:var(--ink);text-transform:uppercase;font-size:.76rem}.tech-list--compact span{border-color:#18151238;color:var(--ink-soft)}.experience-section{background:linear-gradient(90deg,transparent 0 52%,rgba(222,234,223,.68) 52%),var(--paper)}.timeline{border-top:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:18rem minmax(0,1fr);gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line)}.timeline-item>p{margin:0;color:var(--clay);font-size:.88rem;font-weight:800}.timeline-item h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2.3rem;line-height:1.1}.timeline-item h4{margin:.5rem 0 0;color:var(--muted);font-size:1rem}.timeline-item--education{background:#fffaf052}.site-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,28rem);gap:2rem;padding:5rem var(--side);color:var(--paper-strong);background:var(--ink)}.site-footer p{margin:0;color:#ef9b6f;font-size:.82rem;font-weight:800;text-transform:uppercase}.site-footer h2{max-width:70rem;margin:.8rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:5.4rem;line-height:.92}.site-footer address{display:grid;align-content:end;gap:.8rem;font-style:normal;color:var(--muted-dark)}.site-footer .contact-pill{width:fit-content;border-color:#fffaf042;background:#fffaf00f;color:var(--paper-strong)}.site-footer .contact-pill:hover{border-color:#fffaf07a;background:#fffaf01f}.site-footer a:hover{color:var(--paper-strong)}.copy-toast{position:fixed;right:1.25rem;bottom:1.25rem;z-index:90;padding:.75rem 1rem;color:var(--paper-strong);background:#181512eb;border:1px solid rgba(255,250,240,.18);border-radius:999px;box-shadow:0 1.2rem 3rem #1815122e;opacity:0;transform:translateY(1rem);pointer-events:none;transition:opacity .28s ease,transform .28s ease}.copy-toast--visible{opacity:1;transform:translateY(0)}.reveal-media{will-change:clip-path}.motion-card,.section-title,.hero-title-line,.hero-kicker,.hero-copy,.hero-actions,.hero-orbit{will-change:transform,opacity}.reduced-motion .opening-panel{display:none}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (max-width: 1180px){.hero-title{font-size:5rem}.section-title{font-size:4.35rem}.capability-grid,.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-hero-grid,.companion-grid,.project-row__body{grid-template-columns:1fr}}@media (max-width: 860px){:root{--side: 1rem}.site-header{align-items:flex-start;padding-top:.85rem}.site-header nav{max-width:16rem}.hero{padding-top:7.2rem}.hero__grid,.section-heading,.project-row,.timeline-item,.site-footer{grid-template-columns:1fr}.hero__grid{min-height:auto}.hero-title{font-size:4.35rem}.hero-copy{font-size:1.05rem}.hero-orbit{padding-left:0;border-left:0;border-top:1px solid var(--line)}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.section-inner{padding-top:5.6rem;padding-bottom:5.6rem}.section-title{font-size:3.55rem}.project-copy h3,.companion-copy h3{font-size:2.45rem}.project-row h3,.timeline-item h3{font-size:2rem}.site-footer h2{font-size:3.25rem}}@media (max-width: 560px){.opening-panel__label{font-size:1.35rem}.site-header nav{display:none}.hero-title{font-size:2.95rem}.hero-actions{display:grid}.contact-pill,.intent-pill{width:100%;justify-content:center;text-align:center}.metric-strip,.capability-grid,.video-grid{grid-template-columns:1fr}.metric-strip__item{min-height:6.8rem}.section-title{font-size:2.55rem}.capability-card__body{min-height:auto}.project-copy,.project-highlights,.companion-copy{padding:1.25rem}.project-row__meta span{font-size:2.35rem}}
