:root{--bg: #f4efe4;--text: #1c1a17;--text-soft: #2b2420;--text-strong: #26201b;--muted: #6f6760;--line: rgba(28,26,23,.12);--accent: #0f766e;--accent-2: #d9772a;--card: rgba(255,255,255,.78);--card-soft: rgba(255,255,255,.65);--surface: rgba(255,255,255,.82);--surface-2: rgba(255,255,255,.66);--btn-bg: rgba(255,255,255,.6);--btn-bg-hover: rgba(255,255,255,.9);--btn-primary-bg: rgba(15,118,110,.12);--btn-primary-bg-hover: rgba(15,118,110,.2);--accent-outline: rgba(15,118,110,.4);--card-outline: rgba(15,118,110,.12);--accent-cool-bg: rgba(15,118,110,.06);--accent-cool-border: rgba(15,118,110,.18);--accent-warm-bg: rgba(217,119,42,.1);--accent-warm-border: rgba(217,119,42,.24);--bg-r1: rgba(15,118,110,.18);--bg-r2: rgba(217,119,42,.14);--bg-grid: rgba(28,26,23,.03);--shape-1: rgba(15,118,110,.35);--shape-2: rgba(217,119,42,.35);--hero-glow: rgba(15,118,110,.22);--shadow: rgba(31,24,19,.12);--card-shadow: rgba(31,24,19,.1);--radius: 18px;--max: 980px}[data-theme=dark]{--bg: #101110;--text: #ebe3da;--text-soft: #d7cfc6;--text-strong: #f3ede6;--muted: #a79b92;--line: rgba(235,227,218,.12);--card: rgba(23,24,22,.82);--card-soft: rgba(23,24,22,.64);--surface: rgba(22,23,22,.88);--surface-2: rgba(22,23,22,.72);--btn-bg: rgba(28,30,27,.7);--btn-bg-hover: rgba(34,36,33,.9);--btn-primary-bg: rgba(15,118,110,.2);--btn-primary-bg-hover: rgba(15,118,110,.32);--accent-outline: rgba(15,118,110,.5);--card-outline: rgba(15,118,110,.24);--accent-cool-bg: rgba(15,118,110,.18);--accent-cool-border: rgba(15,118,110,.32);--accent-warm-bg: rgba(217,119,42,.2);--accent-warm-border: rgba(217,119,42,.34);--bg-r1: rgba(15,118,110,.28);--bg-r2: rgba(217,119,42,.2);--bg-grid: rgba(235,227,218,.04);--shape-1: rgba(15,118,110,.4);--shape-2: rgba(217,119,42,.4);--hero-glow: rgba(15,118,110,.28);--shadow: rgba(0,0,0,.45);--card-shadow: rgba(0,0,0,.35)}*{box-sizing:border-box}html,body{height:100%}html{color-scheme:light dark}body{margin:0;font-family:Space Grotesk,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(900px 520px at 15% 0%,var(--bg-r1),transparent 60%),radial-gradient(820px 420px at 100% 10%,var(--bg-r2),transparent 55%),repeating-linear-gradient(110deg,var(--bg-grid) 0,var(--bg-grid) 1px,transparent 1px,transparent 60px),var(--bg);overflow-x:hidden;transition:background .6s ease,color .6s ease}.bg-shapes{position:fixed;inset:0;pointer-events:none}.bg-shapes:before,.bg-shapes:after{content:"";position:absolute;width:420px;height:420px;border-radius:999px;filter:blur(40px);opacity:.35}.bg-shapes:before{background:radial-gradient(circle,var(--shape-1),transparent 70%);top:-120px;left:-80px}.bg-shapes:after{background:radial-gradient(circle,var(--shape-2),transparent 70%);bottom:-140px;right:-60px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto;position:relative;z-index:1}.header{padding:52px 0 16px}.topbar{display:flex;justify-content:flex-end;margin-bottom:14px}.theme-toggle{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--btn-bg);color:var(--muted);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .4s ease,border-color .4s ease,color .4s ease}.theme-toggle:hover{background:var(--btn-bg-hover);border-color:var(--accent-outline);color:var(--text)}.theme-toggle__dot{width:18px;height:18px;border-radius:999px;border:1px solid var(--line);background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:inset 0 0 0 2px #fff6;transition:transform .45s ease,border-color .45s ease}[data-theme=dark] .theme-toggle__dot{transform:translate(10px);border-color:var(--accent-outline)}.hero{display:grid;grid-template-columns:72px 1fr 240px;gap:20px;align-items:center;border:1px solid var(--line);background:linear-gradient(135deg,var(--surface),var(--surface-2));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:22px;padding:24px;box-shadow:0 32px 80px var(--shadow);position:relative;overflow:hidden;transition:background .6s ease,border-color .6s ease,box-shadow .6s ease}.hero:after{content:"";position:absolute;right:-80px;top:-60px;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,var(--hero-glow),transparent 65%)}.avatar{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;font-weight:800;letter-spacing:.6px;background:linear-gradient(135deg,#0f766ee6,#d9772acc);color:#fdf7ef;box-shadow:inset 0 0 0 1px #fff6}.eyebrow{margin:0 0 6px;text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:var(--muted)}.head h1{margin:0;font-size:26px;font-family:Space Grotesk,Segoe UI,sans-serif;font-weight:600;line-height:1.05}.accent{color:var(--accent);display:inline-block}.role{margin:6px 0 10px;color:var(--muted);font-size:15px}.role-strong{color:var(--text-strong);font-family:Fraunces,Times New Roman,serif;font-weight:700;font-size:30px}.role-name{margin:0 0 4px}.role-sub{margin:0 0 10px;font-size:18px;font-weight:600}.pitch{margin:0 0 14px;max-width:50ch;color:var(--text-soft);font-size:15px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:12px;border:1px solid var(--line);background:var(--btn-bg);transition:transform .12s ease,background .12s ease,border-color .12s ease,color .12s ease;font-weight:600}.btn:hover{background:var(--btn-bg-hover);transform:translateY(-1px);text-decoration:none;border-color:var(--accent-outline)}.btn.disabled{opacity:.55;pointer-events:none;filter:grayscale(.15)}.btn.primary{border:1px solid var(--accent-outline);background:var(--btn-primary-bg)}.btn.primary:hover{background:var(--btn-primary-bg-hover)}.links{color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.dot{opacity:.6}.hero-card{border-left:1px solid var(--line);padding-left:16px;display:grid;gap:10px}.hero-item{padding:10px 12px;border-radius:14px;border:1px solid var(--accent-cool-border);background:var(--accent-cool-bg);transition:background .6s ease,border-color .6s ease}.hero-k{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.hero-v{margin:0 0 8px;font-size:14px}.signal{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.signal-item{padding:10px 12px;border-radius:14px;background:var(--accent-warm-bg);border:1px solid var(--accent-warm-border);transition:background .6s ease,border-color .6s ease}.signal-k{margin:0 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.signal-v{margin:0;font-size:15px;font-weight:600}.section{padding:30px 0}.section h2{margin:0 0 10px;font-size:20px;font-family:Fraunces,Times New Roman,serif}.sub{margin:0 0 18px;color:var(--muted);max-width:70ch}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{border:1px solid var(--line);background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius);padding:18px;display:grid;gap:12px;min-height:240px;box-shadow:0 18px 40px var(--card-shadow);position:relative;transition:background .6s ease,border-color .6s ease,box-shadow .6s ease}.card--coming:after{content:"";position:absolute;inset:0;border-radius:var(--radius);background:radial-gradient(circle at 0% 0%,rgba(217,119,42,.18),transparent 55%);opacity:.8;pointer-events:none}.coming{align-self:start;display:inline-flex;align-items:center;gap:8px;margin:-4px 0 4px;padding:6px 10px;border-radius:999px;border:1px dashed var(--accent-warm-border);background:var(--accent-warm-bg);color:var(--text-strong);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.coming:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 #d9772ab3;animation:pulse 1.6s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 #d9772ab3}70%{box-shadow:0 0 0 8px #d9772a00}to{box-shadow:0 0 #d9772a00}}.card:before{content:"";position:absolute;inset:0;border-radius:var(--radius);border:1px solid var(--card-outline);pointer-events:none}.card-kicker{margin:0;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.card h3{margin:0;font-size:17px;font-family:Fraunces,Times New Roman,serif}.tagline{margin:6px 0 0;color:var(--muted);font-size:14px}.meta{margin:0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.55}.meta-link{border:none;background:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.meta-link:hover{color:var(--accent-2)}.k{color:var(--text-strong);font-weight:600}.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:2px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.fact{border:1px solid var(--line);background:var(--card-soft);border-radius:var(--radius);padding:16px;transition:background .6s ease,border-color .6s ease}.fact-k{margin:0 0 6px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.18em}.fact-v{margin:0;font-size:14px;line-height:1.45}.footer{padding:26px 0 42px;color:var(--muted);font-size:13px;border-top:1px solid var(--line);margin-top:18px}.modal{position:fixed;inset:0;display:grid;place-items:center;z-index:20;pointer-events:none;opacity:0;transition:opacity .45s ease}.modal.is-open{opacity:1;pointer-events:auto}.modal-backdrop{position:absolute;inset:0;background:#0f0e0c8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-panel{position:relative;width:min(860px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;border-radius:22px;border:1px solid var(--line);background:linear-gradient(160deg,var(--surface),var(--surface-2));box-shadow:0 30px 80px var(--shadow);padding:28px;transform:translateY(16px) scale(.98);opacity:0;transition:transform .45s ease,opacity .45s ease,border-color .45s ease}.modal.is-open .modal-panel{transform:translateY(0) scale(1);opacity:1}.modal-close{position:sticky;top:0;margin-left:auto;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--btn-bg);color:var(--text);font-size:20px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.modal-close:hover{background:var(--btn-bg-hover);border-color:var(--accent-outline)}.cv{display:grid;gap:20px}.cv-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}.cv-head h2{margin:0;font-family:Fraunces,Times New Roman,serif;font-size:26px}.cv-role{margin:6px 0 0;color:var(--muted);font-size:14px}.cv-contact{font-size:14px;color:var(--muted)}.cv-section h3{margin:0 0 10px;font-size:15px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.cv-section ul{margin:0;padding-left:18px;color:var(--text-soft);line-height:1.55}.cv-item{margin-bottom:14px}.cv-item-title{margin:0 0 4px;font-weight:600;color:var(--text-strong)}.cv-item-sub{margin:0 0 8px;color:var(--muted);font-size:13px}.cv-tags{display:flex;flex-wrap:wrap;gap:8px}.cv-tags span{padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:var(--card-soft);font-size:12px;color:var(--text-strong)}@media(max-width:640px){.modal-panel{padding:20px}.cv-head{align-items:flex-start}}.reveal{opacity:0;transform:translateY(12px);animation:rise .6s ease forwards;animation-delay:var(--d, 0ms)}.delay-80{--d: 80ms}.delay-120{--d: .12s}.delay-140{--d: .14s}.delay-180{--d: .18s}.delay-200{--d: .2s}.delay-240{--d: .24s}.delay-260{--d: .26s}@keyframes rise{to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.hero{grid-template-columns:64px 1fr}.hero-card{grid-column:1 / -1;border-left:none;border-top:1px solid var(--line);padding:12px 0 0;grid-template-columns:repeat(3,minmax(0,1fr))}.hero-v{margin-bottom:0}}@media(max-width:640px){.hero-card{grid-template-columns:1fr}}@media(max-width:720px){.signal{grid-template-columns:1fr}}@media(max-width:900px){.grid,.facts{grid-template-columns:1fr}.avatar{width:64px;height:64px}}@media(prefers-reduced-motion:reduce){.reveal{animation:none;opacity:1;transform:none}}
