:root{--bench: #0e0d0b;--panel: #1c1a16;--bone: #f2ede4;--smoke: #8a8478;--amber: #e3a008;--amber-deep: #c48a06;--line: rgba(242, 237, 228, .1);--line-strong: rgba(227, 160, 8, .45);--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;--max: 44rem;--max-wide: 56rem;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}body{margin:0;min-height:100vh;color:var(--bone);font-family:var(--font-body);font-size:1rem;font-weight:400;line-height:1.65;background-color:var(--bench);background-image:radial-gradient(85% 50% at 12% -8%,rgba(227,160,8,.09),transparent 55%),radial-gradient(60% 40% at 92% 8%,rgba(227,160,8,.04),transparent 50%),radial-gradient(50% 30% at 50% 100%,rgba(28,26,22,.9),transparent 60%),linear-gradient(180deg,#12110e 0%,var(--bench) 45%,#0a0908 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased}a{color:var(--amber);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--bone)}img{display:block;max-width:100%;height:auto}code{font-family:IBM Plex Mono,Menlo,Consolas,monospace;font-size:.88em;font-weight:400;padding:.12em .4em;border-radius:.2rem;background:var(--panel);border:1px solid var(--line);color:var(--bone)}.site-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem clamp(1.25rem,4vw,2.5rem);max-width:calc(var(--max-wide) + 5rem);margin:0 auto;background:transparent}.brand{font-family:var(--font-display);font-size:1.15rem;font-weight:600;font-variation-settings:"SOFT" 0,"WONK" 0;letter-spacing:-.02em;color:var(--bone);text-decoration:none;transition:color .2s var(--ease)}.brand:hover{color:var(--amber)}.nav{display:flex;flex-wrap:wrap;gap:.35rem 1.35rem;font-size:.8125rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.nav a{position:relative;color:var(--smoke);text-decoration:none;padding-bottom:.2rem;transition:color .2s var(--ease)}.nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.nav a:hover{color:var(--bone)}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1)}.nav a[aria-current=page]{color:var(--amber)}main{position:relative;z-index:1;padding:0 clamp(1.25rem,4vw,2.5rem) 3.5rem}.hero-home{position:relative;left:50%;width:100vw;margin-left:-50vw;margin-right:-50vw;margin-bottom:3.5rem;min-height:calc(100svh - 4.25rem);display:grid;align-items:end;overflow:hidden}.hero-atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 18% 35%,rgba(227,160,8,.14),transparent 58%),radial-gradient(ellipse 50% 45% at 88% 15%,rgba(227,160,8,.06),transparent 52%),radial-gradient(ellipse 90% 60% at 50% 110%,rgba(14,13,11,.95),transparent 55%),linear-gradient(165deg,#16140f 0%,var(--bench) 50%,#0a0908 100%);transform:scale(1.02);animation:wash 14s var(--ease) infinite alternate}.hero-atmosphere:after{content:"";position:absolute;inset:0;opacity:.28;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='52' viewBox='0 0 60 52'%3E%3Cg fill='none' stroke='%23E3A008' stroke-opacity='0.09' stroke-width='1'%3E%3Cpath d='M30 2 L44 10 L44 26 L30 34 L16 26 L16 10 Z'/%3E%3Cpath d='M30 18 L44 26 L44 42 L30 50 L16 42 L16 26 Z'/%3E%3Cpath d='M2 18 L16 26 L16 42 L2 50 L-12 42 L-12 26 Z'/%3E%3Cpath d='M58 18 L72 26 L72 42 L58 50 L44 42 L44 26 Z'/%3E%3C/g%3E%3C/svg%3E");background-size:60px 52px;pointer-events:none}.hero-atmosphere:before{content:"";position:absolute;inset:0;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;pointer-events:none}.hero-copy{position:relative;z-index:1;width:100%;max-width:calc(var(--max-wide) + 5rem);margin:0 auto;padding:5rem clamp(1.25rem,4vw,2.5rem) 3.25rem;animation:brand-in .85s var(--ease) both}.hero-kicker{margin:0 0 .75rem;font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--smoke)}.hero-brand{margin:0 0 .9rem;font-family:var(--font-display);font-size:clamp(3rem,8.5vw,5rem);font-weight:700;font-variation-settings:"SOFT" 0,"WONK" 0;line-height:1.02;letter-spacing:-.035em;color:var(--bone)}.hero-lead{margin:0 0 1.85rem;max-width:26rem;font-size:1.0625rem;font-weight:400;line-height:1.55;color:var(--smoke)}.page-hero .hero-kicker{margin-bottom:.45rem}.page-hero .cta-row{margin-top:.25rem}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-width:7.5rem;padding:.7rem 1.25rem;font-family:var(--font-body);font-size:.875rem;font-weight:600;letter-spacing:.02em;text-decoration:none;border-radius:.2rem;border:1px solid transparent;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--amber);color:var(--bench);border-color:var(--amber)}.btn-primary:hover{background:var(--bone);color:var(--bench);border-color:var(--bone);box-shadow:0 0 0 1px #f2ede426}.btn-ghost{background:transparent;color:var(--bone);border-color:var(--amber)}.btn-ghost:hover{background:#e3a0081f;color:var(--amber);border-color:var(--amber);box-shadow:0 0 0 1px #e3a00840}.section{max-width:var(--max);margin:0 auto 3.5rem;animation:rise .7s var(--ease) .1s both}.section h2,.page-hero h1{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(1.7rem,3.5vw,2.15rem);font-weight:600;font-variation-settings:"SOFT" 0,"WONK" 0;letter-spacing:-.025em;color:var(--bone)}.lede,.page-hero>p{margin:0 0 1.75rem;color:var(--smoke);max-width:36rem;font-weight:400}.page-hero{max-width:var(--max);margin:1.5rem auto 2rem;animation:rise .65s var(--ease) both}.people{display:grid;gap:2.25rem}@media(min-width:640px){.people{grid-template-columns:1fr 1fr;gap:2.75rem}}.person{padding:0;border-top:1.5px solid var(--amber);padding-top:1.15rem;background:transparent}.person h3{margin:0 0 .2rem;font-family:var(--font-display);font-size:1.4rem;font-weight:600;font-variation-settings:"SOFT" 0,"WONK" 0;letter-spacing:-.02em;color:var(--bone)}.role{margin:0 0 .9rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}.person>p{margin:0;color:var(--smoke);font-size:.95rem}.person-cta{margin-top:1.15rem}.note{margin:0;font-size:.9rem;color:var(--smoke)}.resume-list{list-style:none;margin:0;padding:0;display:grid;gap:1.75rem}.resume-item{padding:0 0 0 1.1rem;border-left:2px solid var(--amber);background:transparent}.resume-item h2{margin:0 0 .5rem;font-family:var(--font-display);font-size:1.35rem;font-weight:600;font-variation-settings:"SOFT" 0,"WONK" 0;letter-spacing:-.02em;color:var(--bone)}.resume-item p{margin:0 0 1.1rem;color:var(--smoke)}.resume-item p:last-child{margin-bottom:0}.resume-actions{display:flex;flex-wrap:wrap;gap:.65rem}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1.5rem 1.25rem}.frame{margin:0}.frame-inner{aspect-ratio:4 / 5;display:grid;place-items:center;background:repeating-linear-gradient(-12deg,transparent,transparent 8px,rgba(227,160,8,.04) 8px,rgba(227,160,8,.04) 9px),linear-gradient(160deg,var(--panel),#141210);border:1px solid var(--line);color:var(--smoke);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;max-width:calc(var(--max-wide) + 5rem);margin:0 auto;padding:1.5rem clamp(1.25rem,4vw,2.5rem) 2.5rem;border-top:1px solid var(--line);font-size:.8125rem;font-weight:400;letter-spacing:.02em;color:var(--smoke)}.site-footer a{color:var(--smoke);text-decoration:none;transition:color .2s var(--ease)}.site-footer a:hover{color:var(--amber)}@keyframes brand-in{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@keyframes rise{0%{opacity:0;transform:translateY(.55rem)}to{opacity:1;transform:translateY(0)}}@keyframes wash{0%{transform:scale(1.02) translateY(0)}to{transform:scale(1.05) translateY(-.6%)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy,.section,.page-hero,.hero-atmosphere{animation:none}.nav a:after{transition:none}.btn:active{transform:none}}
