:root{--color-bg: #faf7f1;--color-bg-subtle: #f4efe4;--color-surface: #ffffff;--color-border: #e6dfce;--color-border-strong: #cbc0a5;--color-text: #1c2432;--color-text-soft: #3a4152;--color-text-muted: #6b6f7a;--color-primary: #1e3a5f;--color-primary-hover: #2b4d7a;--color-accent: #a68b4c;--color-accent-soft: #c9a961;--font-serif: "Playfair Display", "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--max-width: 1100px;--radius: 6px;--transition: .22s cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 1px 2px rgba(28, 36, 50, .04);--shadow-md: 0 6px 24px rgba(28, 36, 50, .08)}:root[data-theme=dark]{--color-bg: #14161c;--color-bg-subtle: #1a1d26;--color-surface: #1c2029;--color-border: #2a2f3d;--color-border-strong: #3b4256;--color-text: #ece7d9;--color-text-soft: #c9c4b4;--color-text-muted: #8e8a7f;--color-primary: #a8c4e8;--color-primary-hover: #c8dcf5;--color-accent: #d1a94a;--color-accent-soft: #e8c368;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 8px 28px rgba(0, 0, 0, .45)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition),color var(--transition);scroll-behavior:smooth;text-rendering:optimizeLegibility}body{background-image:radial-gradient(circle at 20% 10%,rgba(166,139,76,.05),transparent 40%),radial-gradient(circle at 80% 90%,rgba(30,58,95,.05),transparent 40%);background-attachment:fixed}::selection{background:var(--color-primary);color:#faf7f1}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;color:var(--color-text);line-height:1.2;margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2.4rem,5vw,3.6rem);font-weight:700;letter-spacing:-.02em}h2{font-size:clamp(1.6rem,3vw,2.1rem)}h3{font-size:1.2rem;font-weight:600}p{color:var(--color-text-soft);margin:0 0 1em;font-size:1rem}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition);border-bottom:1px solid transparent}a:hover{color:var(--color-primary-hover);border-bottom-color:var(--color-accent)}.eyebrow{font-family:var(--font-sans);font-size:.72rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--color-accent);display:block;margin:0 0 1rem;line-height:1}.section-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--color-border-strong);border-radius:50%;color:var(--color-accent);margin:0 auto 1.25rem;background:var(--color-surface)}.section-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.inline-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--color-accent)}.inline-icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}section{padding:6rem 0;scroll-margin-top:80px;position:relative}.section-title{text-align:center;margin-bottom:4rem}.section-title h2{margin:0;position:relative;display:inline-block}.section-title h2:after{content:"";position:absolute;left:50%;bottom:-14px;transform:translate(-50%);width:44px;height:2px;background:var(--color-accent)}.section-title p{margin-top:1.5rem;color:var(--color-text-muted);font-style:italic}.section-divider{height:1px;background:var(--color-border);max-width:240px;margin:0 auto;opacity:.7}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-family:var(--font-sans);font-weight:500;font-size:.9rem;letter-spacing:.02em;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;transition:all var(--transition);text-decoration:none;border-bottom:1px solid transparent}.btn-primary{background:var(--color-primary);color:#faf7f1;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#faf7f1;transform:translateY(-1px);border-bottom-color:var(--color-primary-hover)}.btn-outline{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);border-bottom-color:var(--color-primary)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.75rem;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.tag{display:inline-block;padding:.25rem .7rem;font-family:var(--font-sans);font-size:.75rem;letter-spacing:.04em;color:var(--color-text-soft);background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:999px}.grid{display:grid;gap:1.5rem}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.timeline{position:relative;padding-left:2rem;border-left:1px solid var(--color-border-strong);max-width:820px;margin:0 auto}.timeline-item{position:relative;padding-bottom:3rem}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:-2.5rem;top:.55rem;width:11px;height:11px;border-radius:50%;background:var(--color-bg);border:2px solid var(--color-accent)}.timeline-item .period{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;color:var(--color-accent);text-transform:uppercase;margin-bottom:.3rem}.timeline-item .role{font-family:var(--font-serif);font-size:1.25rem;font-weight:600;margin-bottom:.1rem}.timeline-item .company{color:var(--color-text-soft);font-weight:500;margin-bottom:.15rem}.timeline-item .location{color:var(--color-text-muted);font-size:.85rem;font-style:italic;margin-bottom:1rem}.timeline-item ul{padding-left:1.2rem;margin:0;color:var(--color-text-soft)}.timeline-item li{margin-bottom:.4rem;line-height:1.6}.timeline-item li::marker{color:var(--color-accent)}@media (max-width: 768px){.container{padding:0 1.25rem}.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}section{padding:4rem 0}.section-title{margin-bottom:2.5rem}.timeline{padding-left:1.5rem}.timeline-item:before{left:-2rem}}
