:root{color-scheme:light;--bg: #f4efe5;--bg-deep: #efe5d7;--panel: rgba(255, 251, 245, .72);--panel-strong: rgba(255, 248, 238, .92);--text: #1e1b18;--muted: #665f56;--line: rgba(76, 58, 38, .14);--accent: #a2471b;--accent-soft: #d87d4e;--accent-ink: #fff6ef;--shadow: 0 24px 60px rgba(86, 56, 30, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;font-family:Space Grotesk,sans-serif;background:radial-gradient(circle at top left,rgba(208,133,93,.2),transparent 30%),radial-gradient(circle at 85% 20%,rgba(218,170,91,.18),transparent 25%),linear-gradient(180deg,var(--bg) 0%,#f8f4ed 35%,var(--bg-deep) 100%);color:var(--text)}a{color:inherit;text-decoration:none}button,a{transition:transform .18s ease,opacity .18s ease,background-color .18s ease,border-color .18s ease}a:hover{transform:translateY(-1px)}#root{width:100%}.page-shell{position:relative;overflow:hidden;padding:24px}.ambient{position:fixed;inset:auto;width:26rem;height:26rem;border-radius:999px;filter:blur(40px);opacity:.45;pointer-events:none}.ambient-left{top:-6rem;left:-8rem;background:#cd795347;animation:drift 14s ease-in-out infinite alternate}.ambient-right{right:-8rem;top:18rem;background:#d6b2673d;animation:drift 18s ease-in-out infinite alternate-reverse}.site-header,main{position:relative;z-index:1;max-width:1180px;margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow,.section-tag,.hero-kicker,.card-label,.project-meta{margin:0;font-size:.77rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.wordmark{display:inline-block;margin-top:6px;font-size:1.2rem;font-weight:700}.nav-links{display:flex;flex-wrap:wrap;gap:18px}.nav-links a{color:var(--muted)}.panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:24px;padding:30px;border-radius:34px;animation:reveal .8s ease both}.hero h1,.section-heading h2,.stack-intro h2,.closing-panel h2,.narrative h2{margin:12px 0 0;font-family:"Instrument Serif",serif;font-weight:400;line-height:.95;letter-spacing:-.03em}.hero h1{max-width:11ch;font-size:clamp(3.4rem,7vw,7.25rem)}.hero-lead,.narrative p,.stack-intro p,.timeline-body p,.project-card p,.closing-panel a,.proof-card span,.hero-card li{color:var(--muted);line-height:1.7}.hero-lead{max-width:62ch;margin:18px 0 0;font-size:1.04rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--line)}.button-primary{background:var(--accent);border-color:transparent;color:var(--accent-ink)}.button-secondary{background:#fff9f1b8}.hero-card{display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:22px;border-radius:24px;background:linear-gradient(180deg,var(--panel-strong),rgba(255,246,234,.7));border:1px solid rgba(115,79,47,.12)}.hero-card ul,.timeline-body ul{margin:0;padding-left:18px}.availability{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--line);font-size:.95rem}.status-dot{width:10px;height:10px;border-radius:999px;background:#2e9c55;box-shadow:0 0 0 7px #2e9c551f}.proof-strip,.story-grid,.work-grid,.project-grid{display:grid;gap:18px}.proof-strip{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.proof-card{padding:22px;border-radius:24px;animation:reveal .8s ease both}.proof-card strong{display:block;margin-bottom:14px;font-size:clamp(1.9rem,4vw,3rem)}.story-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);margin-bottom:18px}.narrative,.strengths-panel,.stack-panel,.section-block .panel,.closing-panel{border-radius:28px}.narrative,.strengths-panel,.stack-panel,.section-block,.closing-panel{padding:28px}.strength-list{display:grid;gap:18px}.strength-item{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding-top:14px;border-top:1px solid var(--line)}.strength-item:first-child{padding-top:0;border-top:0}.strength-index{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:#a2471b1a;color:var(--accent);font-weight:700}.stack-panel{margin-bottom:18px}.stack-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.stack-cloud span,.tag-row span{padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:#fffcf7d6;color:var(--muted)}.section-block{margin-bottom:18px}.section-heading{margin-bottom:24px}.section-heading h2,.stack-intro h2,.closing-panel h2,.narrative h2{font-size:clamp(2.2rem,4.6vw,4.2rem)}.timeline{display:grid;gap:24px}.timeline-item{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:24px;padding-top:24px;border-top:1px solid var(--line)}.timeline-item:first-child{padding-top:0;border-top:0}.timeline-meta p,.timeline-meta span{margin:0;color:var(--muted)}.timeline-meta span{display:inline-block;margin-top:8px;font-weight:700;color:var(--text)}.timeline-body h3,.project-card h3{margin:0 0 10px;font-size:1.35rem}.work-grid{margin-bottom:18px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{padding:24px;border-radius:24px}.project-details{margin:16px 0 0;padding-left:18px;color:var(--muted);line-height:1.7}.project-details li+li{margin-top:10px}.project-card a,.private-note{display:inline-block;margin-top:18px;color:var(--accent);font-weight:700}.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.closing-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.85fr);gap:24px;margin-bottom:24px}.closing-actions{display:grid;align-content:start;gap:14px}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(30px,18px,0) scale(1.08)}}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 980px){.hero,.story-grid,.closing-panel,.timeline-item,.project-grid,.proof-strip{grid-template-columns:1fr}.hero h1{max-width:100%}}@media (max-width: 640px){.page-shell{padding:16px}.site-header{flex-direction:column;align-items:flex-start;margin-bottom:18px}.hero,.narrative,.strengths-panel,.stack-panel,.section-block,.closing-panel{padding:20px;border-radius:24px}.hero h1{font-size:clamp(2.8rem,16vw,4.4rem)}.section-heading h2,.stack-intro h2,.closing-panel h2,.narrative h2{font-size:clamp(2rem,12vw,3.2rem)}.button{width:100%}}
