.chatbot-bubble{position:fixed;right:24px;bottom:24px;z-index:1000;display:flex;align-items:center;gap:10px;padding:9px 18px 9px 9px;background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:999px;box-shadow:0 0 0 1px #6a4fb01a,0 14px 36px #180f2129;transition:box-shadow .35s var(--ease),transform .35s var(--ease);font-family:var(--font-body);animation:chatbot-float 3.6s ease-in-out infinite}@keyframes chatbot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.chatbot-bubble:hover{animation-play-state:paused;transform:translateY(-4px);box-shadow:0 0 0 1px #6a4fb047,0 18px 44px #6a4fb03d}.chatbot-bubble-avatar-wrap{position:relative;flex-shrink:0}.chatbot-bubble-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid transparent;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--wine-700),var(--wine-400)) border-box;display:block}.chatbot-status-dot{position:absolute;bottom:-1px;right:-1px;width:11px;height:11px;border-radius:50%;background:#52e0a8;border:2px solid #fff}.chatbot-status-dot:after{content:"";position:absolute;inset:0;border-radius:50%;background:#52e0a8;animation:chatbot-ping 1.9s ease-out infinite}@keyframes chatbot-ping{0%{transform:scale(1);opacity:.7}to{transform:scale(2.3);opacity:0}}.chatbot-bubble-text{color:var(--ink);font-size:.82rem;font-weight:600;line-height:1.25;white-space:nowrap}.chatbot-bubble-text small{display:block;margin-top:1px;font-family:var(--font-mono);font-weight:400;font-size:.64rem;color:var(--ink-3)}.chatbot-panel{position:fixed;right:24px;bottom:24px;z-index:1001;width:390px;max-width:92vw;height:560px;max-height:80vh;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 0 0 1px #6a4fb014,0 30px 70px #180f2147;overflow:hidden;font-family:var(--font-body);animation:chatbot-panel-in .4s var(--ease)}@keyframes chatbot-panel-in{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbot-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:linear-gradient(135deg,var(--wine-800),var(--wine-600));overflow:hidden}.chatbot-header:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:20px 20px;pointer-events:none}.chatbot-header-title{position:relative;display:flex;align-items:center;gap:10px;color:#fff;font-family:var(--font-display);font-weight:600;font-size:.94rem}.chatbot-header-title span small{display:block;margin-top:2px;font-family:var(--font-mono);font-weight:400;font-size:.65rem;color:#ffffffb8}.chatbot-header-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.55)}.chatbot-close-btn{position:relative;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#ffffff29;color:#fff;font-size:.85rem;transition:background .2s ease,transform .25s var(--ease)}.chatbot-close-btn:hover{background:#ffffff52;transform:rotate(90deg)}.chatbot-messages{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:12px;background:var(--paper-2)}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--wine-200);border:none;border-radius:999px}.chatbot-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:.85rem;line-height:1.55;white-space:pre-wrap;word-wrap:break-word;animation:chatbot-msg-in .35s var(--ease)}@keyframes chatbot-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chatbot-msg-user{align-self:flex-end;background:var(--accent-grad);color:#fff;border-bottom-right-radius:5px;box-shadow:0 6px 16px #6a4fb03d}.chatbot-msg-bot{align-self:flex-start;background:var(--card);border:1px solid var(--line);color:var(--ink);border-bottom-left-radius:5px;box-shadow:var(--shadow-sm);white-space:normal}.chatbot-msg-p{margin:0 0 8px}.chatbot-msg-p:last-child{margin-bottom:0}.chatbot-msg-list{margin:0 0 8px;padding-left:18px;display:flex;flex-direction:column;gap:4px}.chatbot-msg-list:last-child{margin-bottom:0}.chatbot-msg-list li::marker{color:var(--wine-500)}.chatbot-msg-bot strong{font-weight:600;color:var(--wine-700)}.chatbot-msg-bot a{color:var(--wine-500);text-decoration:underline;text-underline-offset:2px;word-break:break-word}.chatbot-msg-bot a:hover{color:var(--wine-700)}.chatbot-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.chatbot-suggestion{padding:6px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line-2);font-family:var(--font-mono);font-size:.68rem;color:var(--wine-700);transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s var(--ease)}.chatbot-suggestion:hover{transform:translateY(-2px);background:var(--wine-600);border-color:transparent;color:#fff}.chatbot-typing{align-self:flex-start;display:flex;align-items:center;gap:4px;padding:13px 15px;background:var(--card);border:1px solid var(--line);border-radius:16px 16px 16px 5px;box-shadow:var(--shadow-sm)}.chatbot-typing span{width:6px;height:6px;border-radius:50%;background:var(--wine-500);opacity:.5;animation:chatbot-bounce 1.1s infinite ease-in-out}.chatbot-typing span:nth-child(2){animation-delay:.15s}.chatbot-typing span:nth-child(3){animation-delay:.3s}@keyframes chatbot-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chatbot-input-row{display:flex;align-items:center;gap:8px;padding:14px;background:var(--card);border-top:1px solid var(--line)}.chatbot-input-row input{flex:1;min-width:0;background:var(--paper-2);border:1px solid transparent;border-radius:999px;padding:11px 16px;color:var(--ink);font-family:var(--font-body);font-size:.85rem;outline:none;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.chatbot-input-row input::placeholder{color:var(--ink-3)}.chatbot-input-row input:focus{border-color:var(--wine-500);background:var(--card);box-shadow:0 0 0 3px #6a4fb014}.chatbot-send-btn{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;background:var(--accent-grad);border-radius:50%;color:#fff;font-size:.85rem;box-shadow:0 6px 16px #6a4fb04d;transition:opacity .2s ease,transform .25s var(--ease)}.chatbot-send-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.05)}.chatbot-send-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}@media(max-width:520px){.chatbot-panel{right:4vw;bottom:16px;width:92vw;height:72vh}.chatbot-bubble-text{display:none}.chatbot-bubble{padding:9px;right:16px;bottom:16px}}:root[data-theme=dark] .chatbot-bubble{background:#3a2160f0;border-color:#c8b6ff52;box-shadow:0 0 0 1px #ffe07a1f,0 14px 36px #00000073}:root[data-theme=dark] .chatbot-bubble:hover{border-color:#ffe07a8c}:root[data-theme=dark] .chatbot-bubble-text{color:#ffe07a}:root[data-theme=dark] .chatbot-bubble-text small{color:#d9cfea}:root[data-theme=dark] .chatbot-status-dot{border-color:#3a2160}:root[data-theme=dark] .chatbot-panel{border-color:#c8b6ff47;box-shadow:0 30px 70px -20px #000000b3}:root[data-theme=dark] .chatbot-header{background:linear-gradient(135deg,#1f0f35,#4a2f7a);border-bottom:1px solid rgba(200,182,255,.2)}:root[data-theme=dark] .chatbot-header-title{color:#ffe07a}:root[data-theme=dark] .chatbot-messages{background:#24123b}:root[data-theme=dark] .chatbot-msg-bot{background:#3a2160;border-color:#c8b6ff38;color:#f3eeff}:root[data-theme=dark] .chatbot-msg-bot a{color:#ffe07a}:root[data-theme=dark] .chatbot-msg-user{background:#ffe07a;color:#0a0612}:root[data-theme=dark] .chatbot-suggestion{background:#c8b6ff1f;border-color:#c8b6ff52;color:#f3eeff}:root[data-theme=dark] .chatbot-suggestion:hover{background:#ffe07a;border-color:transparent;color:#0a0612}:root[data-theme=dark] .chatbot-typing{background:#3a2160;border-color:#c8b6ff38}:root[data-theme=dark] .chatbot-input-row{background:#2b1745;border-top-color:#c8b6ff33}:root[data-theme=dark] .chatbot-input-row input{background:#1f0f35;border-color:#c8b6ff4d;color:#f3eeff}:root[data-theme=dark] .chatbot-input-row input::placeholder{color:#b8adcf}:root[data-theme=dark] .chatbot-input-row input:focus{background:#1f0f35;border-color:#ffe07a;box-shadow:0 0 0 3px #ffe07a2e}:root[data-theme=dark] .chatbot-send-btn{background:#ffe07a;color:#0a0612;box-shadow:0 6px 16px #ffe07a40}.chatbot-bubble{cursor:pointer;text-align:left;color:inherit}.chatbot-bubble:focus-visible{outline:2px solid var(--khaki);outline-offset:3px}:root{--plum: #2b1745;--lilac: #c8b6ff;--lilac-deep: #6a4fb0;--khaki: #ffe07a;--khaki-soft: #ffe797;--cream: #fbf7f1;--mist: #f3eeff;--rose: #ff9bae;--mint: #52e0a8;--ink-black: #0a0612;--surface-dark: #0e0818;--surface-dark-2: #150c22;--wine-50: #f3eeff;--wine-100: #ece4ff;--wine-200: #cfc4e0;--wine-300: #c8b6ff;--wine-400: #8a7fa0;--wine-500: #6a4fb0;--wine-600: #5a4880;--wine-700: #2b1745;--wine-800: #1c0f2d;--wine-900: #150c22;--wine-950: #0e0818;--primary: var(--wine-600);--primary-deep: var(--wine-800);--primary-bright: var(--wine-500);--paper: #fbf7f1;--paper-2: #f6f1ea;--card: #ffffff;--ink: #2b1745;--ink-2: #5a4880;--ink-3: #8a7fa0;--line: rgba(43, 23, 69, .1);--line-2: rgba(43, 23, 69, .16);--brass: #b5996f;--on-khaki: #0a0612;--accent-grad: #2b1745;--band: #150c22;--nav-glass: rgba(10, 6, 18, .88);--sage: #1f7a4d;--btn-bg: #2b1745;--btn-fg: #fbf7f1;--btn-hover: #0a0612;--btn-shadow: 0 12px 24px -14px rgba(43, 23, 69, .7);--ghost-bg: #ffffff;--ghost-line: rgba(43, 23, 69, .16);--d-text: #f3eeff;--d-muted: #d9cfea;--d-dim: #b8adcf;--d-line: rgba(200, 182, 255, .14);--d-card: #150c22;--r-xl: 26px;--r-lg: 20px;--r-md: 14px;--r-sm: 10px;--shadow-sm: 0 10px 30px -24px rgba(43, 23, 69, .2);--shadow-md: 0 24px 50px -30px rgba(43, 23, 69, .35);--shadow-lg: 0 40px 80px -40px rgba(43, 23, 69, .45);--glow-wine: none;--font-display: "Space Grotesk", "Segoe UI", sans-serif;--font-body: "Inter", "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--max-width: 1200px;--ease: cubic-bezier(.22, 1, .36, 1)}:root{--section-alt: #c8b6ff;--band: #c8b6ff;--hero-bg: #fbf7f1;--name-accent: #ffe07a;--name-mark: #2b1745;--eyebrow-band: #2b1745;--stat-value: #2b1745;--dots: rgba(43, 23, 69, .09);--nav-glass: rgba(251, 247, 241, .88);--plum-card: #2b1745;--plum-card-text: #f3eeff;--logo-spark: #ffe07a;--logo-dot: #c8b6ff;--d-text: #2b1745;--d-muted: #3f2d5c;--d-dim: #5a4880;--d-line: rgba(43, 23, 69, .14);--d-card: #ffffff;--chip-1-bg: #f3eeff;--chip-1-fg: #6a4fb0;--chip-2-bg: #fff3c4;--chip-2-fg: #6b5310;--chip-3-bg: #ddf6eb;--chip-3-fg: #1f7a4d;--chip-4-bg: #ffe4ea;--chip-4-fg: #b0445a}:root[data-theme=dark]{color-scheme:dark;--paper: #2b1745;--paper-2: #351d55;--section-alt: #2b1745;--band: #2b1745;--hero-bg: #2b1745;--card: #3a2160;--ink: #ffe07a;--ink-2: #f3eeff;--ink-3: #d9cfea;--line: rgba(200, 182, 255, .2);--line-2: rgba(200, 182, 255, .34);--wine-50: rgba(243, 238, 255, .08);--wine-100: rgba(243, 238, 255, .1);--wine-200: rgba(200, 182, 255, .24);--wine-300: #c8b6ff;--wine-400: #c8b6ff;--wine-500: #c8b6ff;--wine-600: #ffe07a;--wine-700: #ffe07a;--wine-900: #1f0f35;--wine-950: #24123b;--brass: #ffe07a;--name-accent: #2b1745;--name-mark: #ffe07a;--eyebrow-band: #ffe07a;--stat-value: #ffe07a;--dots: rgba(200, 182, 255, .14);--nav-glass: rgba(43, 23, 69, .9);--plum-card: #1f0f35;--logo-spark: #2b1745;--logo-dot: #6a4fb0;--btn-bg: #ffe07a;--btn-fg: #0a0612;--btn-hover: #ffe797;--btn-shadow: 0 12px 28px -14px rgba(255, 224, 122, .6);--ghost-bg: rgba(243, 238, 255, .08);--ghost-line: rgba(200, 182, 255, .34);--d-text: #ffe07a;--d-muted: #f3eeff;--d-dim: #d9cfea;--d-line: rgba(200, 182, 255, .2);--d-card: #3a2160;--shadow-sm: 0 10px 30px -24px rgba(0, 0, 0, .55);--shadow-md: 0 24px 50px -30px rgba(0, 0, 0, .6);--shadow-lg: 0 40px 80px -40px rgba(0, 0, 0, .7);--chip-1-bg: rgba(200, 182, 255, .18);--chip-1-fg: #d9cfea;--chip-2-bg: rgba(255, 224, 122, .16);--chip-2-fg: #ffe07a;--chip-3-bg: rgba(82, 224, 168, .16);--chip-3-fg: #52e0a8;--chip-4-bg: rgba(255, 155, 174, .16);--chip-4-fg: #ff9bae}.hero{background-color:var(--hero-bg);color:var(--ink)}.training-panel,.panel-bar{--d-text: #f3eeff;--d-muted: #d9cfea;--d-dim: #b8adcf;--d-line: rgba(200, 182, 255, .16)}.hero-badge:nth-child(4n+1),.timeline-stack span:nth-child(4n+1),.case-study-tech span:nth-child(4n+1),.skill-chip:nth-child(4n+1){background:var(--chip-1-bg);color:var(--chip-1-fg);border-color:transparent}.hero-badge:nth-child(4n+2),.timeline-stack span:nth-child(4n+2),.case-study-tech span:nth-child(4n+2),.skill-chip:nth-child(4n+2){background:var(--chip-2-bg);color:var(--chip-2-fg);border-color:transparent}.hero-badge:nth-child(4n+3),.timeline-stack span:nth-child(4n+3),.case-study-tech span:nth-child(4n+3),.skill-chip:nth-child(4n+3){background:var(--chip-3-bg);color:var(--chip-3-fg);border-color:transparent}.hero-badge:nth-child(4n+4),.timeline-stack span:nth-child(4n+4),.case-study-tech span:nth-child(4n+4),.skill-chip:nth-child(4n+4){background:var(--chip-4-bg);color:var(--chip-4-fg);border-color:transparent}.section-dark .spotlight:nth-child(4n+1),.why-card:nth-child(4n+1){box-shadow:inset 0 3px 0 var(--chip-1-fg),var(--shadow-sm)}.section-dark .spotlight:nth-child(4n+2),.why-card:nth-child(4n+2){box-shadow:inset 0 3px #e0b52a,var(--shadow-sm)}.section-dark .spotlight:nth-child(4n+3),.why-card:nth-child(4n+3){box-shadow:inset 0 3px 0 var(--chip-3-fg),var(--shadow-sm)}.section-dark .spotlight:nth-child(4n+4),.why-card:nth-child(4n+4){box-shadow:inset 0 3px 0 var(--chip-4-fg),var(--shadow-sm)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}::selection{background:var(--wine-600);color:#fff}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:var(--paper-2)}::-webkit-scrollbar-thumb{background:var(--wine-300);border-radius:999px;border:3px solid var(--paper-2)}::-webkit-scrollbar-thumb:hover{background:var(--wine-500)}:focus-visible{outline:2px solid var(--wine-500);outline-offset:3px;border-radius:4px}.section{position:relative;padding:7.5rem 1.5rem;overflow:hidden}.section-inner{position:relative;z-index:2;max-width:var(--max-width);margin:0 auto}.section-inner-narrow{max-width:880px}.skills-section,.case-studies-section,.certificates-section{background:var(--section-alt)}.section-dark{background:var(--band);color:var(--d-text)}.dark-grid{position:absolute;inset:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 0%,transparent 78%);mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 0%,transparent 78%);pointer-events:none}.dark-glow{position:absolute;top:-220px;right:-140px;width:620px;height:620px;z-index:0;border-radius:50%;background:radial-gradient(circle,rgba(106,79,176,.42),transparent 68%);filter:blur(30px);pointer-events:none}.dark-glow-left{inset:auto auto -240px -180px}.dark-glow-right{top:-260px;right:-200px}.split-text{display:block}.split-text-mask{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.12em;margin-bottom:-.12em}.split-text-mask:not(:last-child){margin-right:.28em}.split-text-word{display:inline-block;will-change:transform}.section-header{max-width:720px;margin-bottom:3.5rem}.section-header.align-center{margin-left:auto;margin-right:auto;text-align:center}.section-eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--wine-600);margin-bottom:1.1rem}.section-eyebrow-rule{width:26px;height:1px;background:currentColor;opacity:.55}.tone-dark .section-eyebrow{color:var(--eyebrow-band)}.section-heading{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.12;letter-spacing:-.025em;color:var(--ink)}.tone-dark .section-heading{color:var(--d-text)}.section-subheading{margin-top:1.1rem;color:var(--ink-2);font-size:1.03rem;line-height:1.7;max-width:620px}.align-center .section-subheading{margin-left:auto;margin-right:auto}.tone-dark .section-subheading{color:var(--d-muted)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.95rem 1.75rem;border-radius:999px;font-family:var(--font-display);font-weight:600;font-size:.94rem;letter-spacing:-.005em;white-space:nowrap;border:1px solid transparent;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .3s ease,border-color .3s ease,color .3s ease}.btn-sm{padding:.62rem 1.15rem;font-size:.84rem}.btn-icon{font-size:.8em;transition:transform .35s var(--ease)}.btn:hover .btn-icon{transform:translate(3px)}.btn-primary{background:var(--btn-bg);color:var(--btn-fg);box-shadow:var(--btn-shadow)}.btn-primary:after{display:none;content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.28) 48%,transparent 70%);transform:translate(-120%);transition:transform .7s var(--ease)}.btn-primary:hover:after{transform:translate(120%)}.btn-primary:hover{background:var(--btn-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.65;cursor:progress}.btn-ghost{background:var(--ghost-bg);border-color:var(--ghost-line);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink-3);color:var(--ink);transform:translateY(-1px)}.btn-light{background:var(--btn-bg);color:var(--btn-fg);box-shadow:var(--btn-shadow)}.btn-light:hover{background:var(--btn-hover)}body.has-custom-cursor,body.has-custom-cursor *{cursor:none}body.has-custom-cursor input,body.has-custom-cursor textarea{cursor:text}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%}.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--wine-600)}.cursor-ring{width:32px;height:32px;margin:-16px 0 0 -16px;border:1.5px solid rgba(106,79,176,.5);-webkit-backdrop-filter:invert(4%);backdrop-filter:invert(4%)}.cursor-ring.is-hot{border-color:#6a4fb0d9;background:#6a4fb017}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:1200;transform-origin:0 50%;background:var(--khaki)}.back-to-top{position:fixed;left:24px;bottom:26px;z-index:900;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--card);border:1px solid var(--line);color:var(--wine-600);font-size:.85rem;box-shadow:var(--shadow-md)}.back-to-top-ring{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);transform:rotate(-90deg)}.back-to-top-track{fill:none;stroke:var(--line);stroke-width:2}.back-to-top-fill{fill:none;stroke:var(--wine-500);stroke-width:2;stroke-linecap:round}.nav{position:fixed;top:0;left:0;right:0;z-index:1100;padding:.9rem 1.5rem;transition:padding .4s var(--ease)}.nav-inner{max-width:var(--max-width);margin:0 auto;height:60px;padding:0 .55rem 0 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:999px;border:1px solid transparent;transition:background .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease),backdrop-filter .4s var(--ease)}.nav.is-scrolled{padding-top:.6rem}.nav.is-scrolled .nav-inner{background:var(--nav-glass);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-color:var(--line);box-shadow:0 8px 30px #180f2112}.nav-logo{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-size:1.08rem;font-weight:700;letter-spacing:-.02em;color:var(--ink)}.nav-logo-sur{color:var(--wine-600)}.nav-logo-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--btn-bg);box-shadow:none}.nav-logo-mark svg{width:100%;height:100%;overflow:visible}.spark-star{fill:var(--logo-spark);transform-box:fill-box;transform-origin:center;animation:spark-breathe 2s ease-in-out infinite}.spark-dot{fill:var(--logo-dot);animation:spark-twinkle 2s ease-in-out infinite}.spark-dot-b{animation-delay:1s}@keyframes spark-breathe{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(.82) rotate(12deg)}}@keyframes spark-twinkle{0%,to{opacity:0}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.spark-star,.spark-dot{animation:none}.spark-dot{opacity:1}}.nav-links{display:flex;align-items:center;gap:.15rem}.nav-link{position:relative;padding:.5rem .95rem;border-radius:999px;font-size:.88rem;font-weight:500;color:var(--ink-2);transition:color .25s ease}.nav-link:hover{color:var(--ink)}.nav-link.is-active{color:var(--wine-700)}.nav-pill{position:absolute;inset:0;border-radius:999px;background:var(--wine-50);border:1px solid rgba(106,79,176,.16)}.nav-link-text{position:relative;z-index:1}.nav-right{display:flex;align-items:center;gap:.6rem}.nav-cta{position:relative;padding-left:1.9rem}.nav-cta-pulse{position:absolute;left:1.05rem;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:#7ee2b8;box-shadow:0 0 #52e0a8bf;animation:cta-pulse 2s infinite}@keyframes cta-pulse{0%{box-shadow:0 0 #52e0a899}70%{box-shadow:0 0 0 8px #52e0a800}to{box-shadow:0 0 #52e0a800}}.nav-burger{display:none;flex-direction:column;gap:5px;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line-2)}.nav-burger span{display:block;width:17px;height:1.6px;border-radius:2px;background:var(--ink)}.nav-burger span:last-child{width:11px;align-self:flex-end;margin-right:12px}.nav-scrim{position:fixed;inset:0;z-index:1150;background:#0e08188c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.nav-drawer{position:fixed;top:0;right:0;bottom:0;z-index:1160;width:min(85vw,340px);padding:5.5rem 2rem 2rem;display:flex;flex-direction:column;background:var(--paper);border-left:1px solid var(--d-line)}.nav-drawer-close{position:absolute;top:1.6rem;right:1.6rem;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--d-line);color:var(--d-text)}.nav-drawer-links{display:flex;flex-direction:column;gap:.35rem}.nav-drawer-links a{display:flex;align-items:baseline;gap:.9rem;padding:.75rem 0;border-bottom:1px solid var(--d-line);font-family:var(--font-display);font-size:1.35rem;font-weight:500;color:var(--d-text);transition:color .25s ease,padding-left .3s var(--ease)}.nav-drawer-links a:hover{color:var(--wine-300);padding-left:.5rem}.nav-drawer-index{font-family:var(--font-mono);font-size:.7rem;color:var(--wine-400)}.nav-drawer-cta{margin-top:auto;width:100%}.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:9rem 1.5rem 5rem;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;z-index:0;background-image:radial-gradient(var(--dots) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 75% 65% at 45% 35%,#000 0%,transparent 76%);mask-image:radial-gradient(ellipse 75% 65% at 45% 35%,#000 0%,transparent 76%);pointer-events:none}.hero-aurora{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.aurora-blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.35}.aurora-1{top:-18%;left:-8%;width:46vw;height:46vw;background:radial-gradient(circle,rgba(106,79,176,.34),transparent 65%);animation:drift-a 18s ease-in-out infinite alternate}.aurora-2{bottom:-22%;right:-6%;width:42vw;height:42vw;background:radial-gradient(circle,rgba(255,224,122,.22),transparent 65%);animation:drift-b 22s ease-in-out infinite alternate}.aurora-3{top:30%;right:26%;width:30vw;height:30vw;background:radial-gradient(circle,rgba(200,182,255,.26),transparent 65%);animation:drift-c 26s ease-in-out infinite alternate}@keyframes drift-a{to{transform:translate3d(8%,10%,0) scale(1.15)}}@keyframes drift-b{to{transform:translate3d(-10%,-8%,0) scale(1.12)}}@keyframes drift-c{to{transform:translate3d(-6%,12%,0) scale(.9)}}.hero-inner{position:relative;z-index:2;width:100%;max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:4rem}.status-chip{display:inline-flex;align-items:center;gap:.55rem;padding:.42rem .95rem .42rem .75rem;border-radius:999px;background:var(--card);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.02em;color:var(--ink-2);box-shadow:var(--shadow-sm)}.status-chip-dot{width:7px;height:7px;border-radius:50%;background:#52e0a8;box-shadow:0 0 #52e0a899;animation:cta-pulse 2.2s infinite}.hero-kicker{margin-top:1.7rem;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-3)}.hero-name{margin-top:.55rem;font-family:var(--font-display);font-size:clamp(2.9rem,7.2vw,5.4rem);font-weight:700;line-height:1.02;letter-spacing:-.04em;color:var(--ink)}.hero-name-accent{display:inline-block;margin-left:.1em;padding:0 .18em .06em;border-radius:.16em;background:var(--name-mark);color:var(--name-accent);-webkit-text-fill-color:var(--name-accent)}.hero-role{margin-top:1.05rem;font-family:var(--font-mono);font-size:clamp(.85rem,1.5vw,1.02rem);font-weight:500;color:var(--ink-2);min-height:1.7em}.hero-role-static{color:var(--ink-3)}.hero-role-dynamic{color:var(--wine-600);font-weight:600}.typewriter-caret{display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-.14em;background:var(--wine-500);animation:caret-blink 1s steps(2) infinite}@keyframes caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.hero-subtitle{margin-top:1.6rem;max-width:500px;font-size:1.05rem;line-height:1.75;color:var(--ink-2)}.hero-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}.hero-badge{padding:.36rem .85rem;border-radius:999px;background:var(--card);border:1px solid var(--line);font-family:var(--font-mono);font-size:.73rem;font-weight:500;color:var(--ink-2);transition:transform .3s var(--ease),border-color .3s ease,color .3s ease,background .3s ease}.hero-badge:hover{transform:translateY(-3px);border-color:var(--wine-400);background:var(--card);color:var(--wine-700)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:2.5rem}.hero-socials{display:flex;gap:.5rem;margin-left:.35rem}.social-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-2);color:var(--ink-2);font-size:.95rem;transition:transform .35s var(--ease),color .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease}.social-btn:hover{transform:translateY(-4px);color:#fff;border-color:transparent;background:var(--accent-grad);box-shadow:var(--glow-wine)}.hero-portrait{position:relative;justify-self:center}.portrait-frame{position:relative;width:min(360px,72vw);aspect-ratio:1 / 1.08;padding:10px;border-radius:30px;background:linear-gradient(150deg,#6a4fb029,#ffe07a1f);border:1px solid var(--line);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.portrait-ring{position:absolute;inset:-1px;border-radius:31px;padding:1px;background:conic-gradient(from 0deg,transparent 0deg,rgba(106,79,176,.75) 60deg,transparent 140deg,transparent 220deg,rgba(255,224,122,.65) 300deg,transparent 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:ring-spin 9s linear infinite;pointer-events:none}@keyframes ring-spin{to{transform:rotate(360deg)}}.portrait-media{position:relative;width:100%;height:100%;border-radius:22px;overflow:hidden;background:var(--wine-900)}.portrait-media img{width:100%;height:100%;object-fit:cover;filter:saturate(1.02) contrast(1.03);transition:transform .9s var(--ease)}.hero-portrait:hover .portrait-media img{transform:scale(1.04)}.portrait-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(251,247,241,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(251,247,241,.11) 1px,transparent 1px);background-size:28px 28px;mix-blend-mode:overlay;pointer-events:none}.portrait-scan{position:absolute;left:0;right:0;height:26%;top:-30%;background:linear-gradient(180deg,transparent,rgba(200,182,255,.22),rgba(255,255,255,.18),transparent);animation:portrait-scan 5.5s ease-in-out infinite;pointer-events:none}@keyframes portrait-scan{0%{top:-30%}65%{top:104%}to{top:104%}}.portrait-chip{position:absolute;display:flex;flex-direction:column;padding:.7rem 1rem;border-radius:var(--r-md);background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow-md);animation:chip-float 5s ease-in-out infinite}.portrait-chip-a{left:-8%;top:16%}.portrait-chip-b{right:-10%;bottom:14%;animation-delay:1.6s}@keyframes chip-float{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.portrait-chip-value{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--wine-600);line-height:1.1}.portrait-chip-label{font-family:var(--font-mono);font-size:.63rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.neural-net-bg{position:absolute;top:50%;right:-10%;width:min(760px,62vw);height:auto;transform:translateY(-50%);z-index:1;pointer-events:none;opacity:.85;-webkit-mask-image:radial-gradient(ellipse 62% 72% at 62% 50%,#000 0%,transparent 78%);mask-image:radial-gradient(ellipse 62% 72% at 62% 50%,#000 0%,transparent 78%)}.neural-net-edge{stroke:#6a4fb029;stroke-width:.8;animation:edge-flicker 6s ease-in-out infinite}@keyframes edge-flicker{0%,to{opacity:.5}50%{opacity:1}}.neural-net-node{fill:var(--wine-600);animation:node-breathe 4s ease-in-out infinite}@keyframes node-breathe{0%,to{opacity:.55;r:4}50%{opacity:1;r:5.2}}.neural-net-halo{animation:halo-breathe 4s ease-in-out infinite}@keyframes halo-breathe{0%,to{opacity:.25}50%{opacity:.7}}.neural-net-pulse{fill:var(--brass);filter:drop-shadow(0 0 5px rgba(255,224,122,.9))}.scroll-cue{position:absolute;left:50%;bottom:2.2rem;z-index:3;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.55rem;font-family:var(--font-mono);font-size:.63rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3)}.scroll-cue-rail{position:relative;width:22px;height:36px;border-radius:999px;border:1px solid var(--line-2);overflow:hidden}.scroll-cue-bead{position:absolute;left:50%;top:7px;width:4px;height:8px;margin-left:-2px;border-radius:999px;background:var(--wine-500);animation:bead-fall 1.9s var(--ease) infinite}@keyframes bead-fall{0%{transform:translateY(0);opacity:0}25%{opacity:1}75%{transform:translateY(14px);opacity:0}to{transform:translateY(14px);opacity:0}}.marquee{position:relative;overflow:hidden;padding:1.15rem 0;background:var(--card);border-top:1px solid var(--d-line);border-bottom:1px solid var(--d-line);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;width:max-content;animation:marquee-scroll 42s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee-scroll{to{transform:translate(-50%)}}.marquee-group{display:flex;align-items:center}.marquee-item{display:inline-flex;align-items:center;gap:.75rem;padding:0 1.6rem;font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.04em;color:var(--d-muted);white-space:nowrap}.marquee-dot{width:4px;height:4px;border-radius:50%;background:var(--wine-400)}.spotlight{position:relative;display:block;width:100%;overflow:hidden;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);text-align:left;transition:transform .45s var(--ease),border-color .35s ease,box-shadow .45s var(--ease)}.spotlight:hover{transform:translateY(-6px);border-color:#6a4fb047;box-shadow:var(--shadow-md)}.spotlight-glow{position:absolute;inset:0;z-index:0;opacity:0;pointer-events:none;background:radial-gradient(280px circle at var(--mx, 50%) var(--my, 50%),rgba(106,79,176,.1),transparent 62%);transition:opacity .35s ease}.spotlight:hover .spotlight-glow{opacity:1}.spotlight-content{position:relative;z-index:1;display:block;height:100%}.section-dark .spotlight{background:var(--d-card);border-color:var(--d-line);box-shadow:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.section-dark .spotlight:hover{border-color:#c8b6ff6b;background:#ffffff12}.section-dark .spotlight-glow{background:radial-gradient(280px circle at var(--mx, 50%) var(--my, 50%),rgba(200,182,255,.16),transparent 62%)}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.result-item{padding:0}.result-item .spotlight-content{display:flex;flex-direction:column;gap:.4rem;padding:1.7rem 1.5rem 1.5rem}.result-value{font-family:var(--font-display);font-size:clamp(2rem,3.6vw,2.7rem);font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--stat-value)}.result-label{font-size:.87rem;line-height:1.5;color:var(--d-muted)}.result-more{margin-top:.7rem;display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--wine-300);opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s var(--ease)}.result-item:hover .result-more{opacity:1;transform:translateY(0)}.modal-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0e081899;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{position:relative;width:100%;max-width:460px;padding:2.75rem 2.25rem 2.25rem;text-align:center;border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow-lg)}.modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--paper-2);color:var(--ink-2);font-size:.85rem;transition:background .25s ease,color .25s ease}.modal-close:hover{background:var(--wine-600);color:#fff}.modal-value{font-family:var(--font-display);font-size:3rem;font-weight:700;line-height:1;letter-spacing:-.03em;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.modal-label{margin-top:.75rem;font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--ink)}.modal-description{margin-top:1rem;font-size:.93rem;line-height:1.7;color:var(--ink-2)}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:4rem;align-items:start}.about-copy .section-heading{max-width:15ch}.about-content{margin-top:1.6rem;display:flex;flex-direction:column;gap:1.1rem;font-size:1.02rem;line-height:1.85;color:var(--ink-2)}.principles{list-style:none;margin-top:2.5rem;display:flex;flex-direction:column;gap:1rem}.principle{display:flex;gap:1rem;padding:1.1rem 1.25rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease),border-color .3s ease,box-shadow .4s var(--ease)}.principle:hover{transform:translate(6px);border-color:#6a4fb042;box-shadow:var(--shadow-md)}.principle-icon{flex-shrink:0;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--wine-50);border:1px solid rgba(106,79,176,.14);color:var(--wine-600);font-size:.92rem}.principle strong{display:block;font-family:var(--font-display);font-size:.98rem;font-weight:600;color:var(--ink)}.principle p{margin-top:.2rem;font-size:.88rem;line-height:1.6;color:var(--ink-2)}.about-visual{position:sticky;top:7rem}.panel{border-radius:var(--r-lg);overflow:hidden;background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow-md)}.panel-bar{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;background:var(--wine-950);border-bottom:1px solid var(--d-line)}.panel-dots{display:flex;gap:5px}.panel-dots i{width:9px;height:9px;border-radius:50%;background:#fff3}.panel-dots i:first-child{background:var(--wine-400)}.panel-title{font-family:var(--font-mono);font-size:.72rem;color:var(--d-muted)}.panel-badge{margin-left:auto;padding:.15rem .55rem;border-radius:999px;background:#c8b6ff29;border:1px solid rgba(200,182,255,.3);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--wine-300)}.panel-body{position:relative;padding:1.5rem 1.25rem;overflow:hidden;background:linear-gradient(180deg,#fff,#f3eeff)}.panel-scan{position:absolute;left:0;right:0;height:32%;top:-35%;background:linear-gradient(180deg,transparent,rgba(106,79,176,.14),transparent);animation:panel-scan 5s ease-in-out infinite;pointer-events:none}@keyframes panel-scan{0%{top:-35%}70%{top:105%}to{top:105%}}.panel-foot{display:flex;align-items:center;gap:.55rem;padding:.7rem 1rem;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;color:var(--ink-3)}.panel-foot-dot{width:6px;height:6px;border-radius:50%;background:var(--sage);animation:cta-pulse 2.2s infinite}.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2.75rem}.tab-button{position:relative;padding:.62rem 1.15rem;border-radius:999px;background:var(--card);border:1px solid var(--line);font-family:var(--font-mono);font-size:.78rem;font-weight:500;color:var(--ink-2);overflow:hidden;transition:color .3s ease,border-color .3s ease,transform .3s var(--ease)}.tab-button:hover{transform:translateY(-2px);border-color:var(--line-2);color:var(--ink)}.tab-button.is-active{color:#fff;border-color:transparent}.tab-fill{position:absolute;inset:0;border-radius:999px;background:var(--accent-grad);box-shadow:var(--glow-wine)}.tab-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.5rem}.tab-label i{font-size:.85em;opacity:.85}.skills-stage{min-height:150px;display:flex;align-items:center;justify-content:center}.skills-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}.skill-chip{display:inline-flex;align-items:center;padding:.62rem 1.1rem;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);font-size:.87rem;font-weight:500;color:var(--ink);cursor:default;transition:transform .3s var(--ease),border-color .3s ease,color .3s ease,background .3s ease,box-shadow .3s ease}.skill-chip:hover{transform:translateY(-4px) scale(1.03);border-color:transparent;background:var(--accent-grad);color:#fff;box-shadow:var(--glow-wine)}.skills-progress{position:relative;width:180px;height:2px;margin:2.75rem auto 0;border-radius:999px;background:var(--line);overflow:hidden}.skills-progress-fill{display:block;width:100%;height:100%;transform-origin:0 50%;background:linear-gradient(90deg,var(--wine-600),var(--brass))}.timeline{position:relative;padding-left:2.5rem;display:flex;flex-direction:column;gap:1.25rem}.timeline-rail{position:absolute;left:7px;top:10px;bottom:10px;width:2px;border-radius:999px;background:var(--line);overflow:hidden}.timeline-rail-fill{display:block;width:100%;height:100%;transform-origin:50% 0;background:linear-gradient(180deg,var(--wine-600),var(--wine-400),var(--brass))}.timeline-item{position:relative}.timeline-node{position:absolute;left:-2.5rem;top:1.55rem;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--paper);border:2px solid var(--wine-300)}.timeline-node-core{width:6px;height:6px;border-radius:50%;background:var(--wine-500)}.timeline-node.is-current{border-color:var(--wine-600);box-shadow:0 0 0 4px #6a4fb01f}.timeline-node.is-current .timeline-node-core{animation:mark-pulse 2s ease-in-out infinite}.timeline-card{border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;transition:border-color .35s ease,box-shadow .4s var(--ease),transform .4s var(--ease)}.timeline-card:hover{border-color:#6a4fb03d;box-shadow:var(--shadow-md)}.timeline-card.is-open{border-color:#6a4fb052;box-shadow:var(--shadow-md)}.timeline-summary{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.6rem 1.75rem;text-align:left}.timeline-summary-copy{display:block}.timeline-date{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.06em;color:var(--wine-600)}.timeline-live{width:6px;height:6px;border-radius:50%;background:#52e0a8;animation:cta-pulse 2.2s infinite}.timeline-role{display:block;margin-top:.4rem;font-family:var(--font-display);font-size:1.22rem;font-weight:600;letter-spacing:-.015em;color:var(--ink)}.timeline-company{display:block;margin-top:.15rem;font-size:.9rem;color:var(--ink-2)}.timeline-chevron{flex-shrink:0;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);color:var(--wine-600);font-size:.78rem;transition:background .3s ease,color .3s ease,border-color .3s ease}.timeline-summary:hover .timeline-chevron{background:var(--wine-600);border-color:transparent;color:#fff}.timeline-details{padding:0 1.75rem}.timeline-points{list-style:none;padding-bottom:1.25rem;display:flex;flex-direction:column;gap:.65rem;border-top:1px solid var(--line);padding-top:1.25rem}.timeline-points li{position:relative;padding-left:1.35rem;font-size:.91rem;line-height:1.68;color:var(--ink-2)}.timeline-points li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:2px;background:var(--wine-400);transform:rotate(45deg)}.timeline-stack{display:flex;flex-wrap:wrap;gap:.4rem;padding-bottom:1.6rem}.timeline-stack span{padding:.25rem .7rem;border-radius:999px;background:var(--wine-50);border:1px solid rgba(106,79,176,.14);font-family:var(--font-mono);font-size:.7rem;color:var(--wine-700)}.education-section{padding-top:0}.education-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.education-card .spotlight-content{padding:1.75rem}.education-date{font-family:var(--font-mono);font-size:.73rem;letter-spacing:.06em;color:var(--wine-600)}.education-degree{margin-top:.55rem;font-family:var(--font-display);font-size:1.1rem;font-weight:600;line-height:1.35;color:var(--ink)}.education-school{margin-top:.6rem;display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--ink-2)}.education-school i{color:var(--brass)}.education-spec{margin-top:.5rem;font-family:var(--font-mono);font-size:.74rem;color:var(--ink-3)}.education-grid{align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}.education-grid>*{display:flex;min-width:0}.education-card{width:100%;height:100%;min-height:280px;display:flex;transition:transform .25s ease,box-shadow .25s ease}.education-card .spotlight-content{width:100%;flex:1;display:flex;flex-direction:column}.education-logo-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}.education-logo-wrap{width:58px;height:58px;border:1px solid var(--line-2);background:#fff;border-radius:13px;display:grid;place-items:center;position:relative;overflow:hidden;flex-shrink:0}.education-logo-wrap img{width:49px;height:49px;object-fit:contain;position:relative;z-index:2}.education-logo-fallback{position:absolute;inset:0;display:grid;place-items:center;font:700 .75rem var(--font-display);color:var(--wine-600)}.education-card .education-degree{margin-top:1rem}.education-card .education-school{align-items:flex-start;line-height:1.45}.education-card .education-spec{margin-top:auto;padding-top:1.25rem}@media(hover:hover)and (prefers-reduced-motion:no-preference){.education-card:hover{transform:translateY(-7px);box-shadow:0 18px 44px #180f2121}}@media(max-width:900px){.education-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.education-grid{grid-template-columns:1fr}.education-card{min-height:250px}}@media(prefers-reduced-motion:reduce){.education-card{transition:none}}.case-studies-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap}.case-studies-head .section-header{margin-bottom:2.5rem}.carousel-controls{display:flex;align-items:center;gap:.75rem;margin-bottom:3rem}.carousel-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--card);border:1px solid var(--line-2);color:var(--ink);font-size:.85rem;transition:transform .35s var(--ease),background .3s ease,color .3s ease,border-color .3s ease,box-shadow .35s ease}.carousel-btn:hover:not(:disabled){transform:scale(1.08);background:var(--accent-grad);border-color:transparent;color:#fff;box-shadow:var(--glow-wine)}.carousel-btn:disabled{opacity:.3;cursor:not-allowed}.carousel-counter{display:flex;align-items:baseline;gap:.25rem;font-family:var(--font-mono);font-size:.78rem;color:var(--ink-3);min-width:62px;justify-content:center}.carousel-counter strong{font-size:1.05rem;font-weight:600;color:var(--wine-600)}.case-studies-track{position:relative;z-index:2;display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.5rem max(1.5rem,calc((100vw - var(--max-width)) / 2)) 2rem;scrollbar-width:none}.case-studies-track::-webkit-scrollbar{display:none}.case-study-slot{flex:0 0 370px;max-width:88vw;scroll-snap-align:start;display:flex}.case-study-card{height:100%;border-radius:var(--r-xl)}.case-study-card .spotlight-content{display:flex;flex-direction:column;gap:1.15rem;padding:2rem 1.9rem}.case-study-card.is-active{border-color:#6a4fb04d;box-shadow:var(--shadow-md)}.case-study-top{display:flex;align-items:center;gap:.9rem}.case-study-index{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--wine-600)}.case-study-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line-2),transparent)}.case-study-title{font-family:var(--font-display);font-size:1.22rem;font-weight:600;line-height:1.32;letter-spacing:-.015em;color:var(--ink)}.case-study-block-label{display:block;margin-bottom:.35rem;font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--wine-400)}.case-study-block p{font-size:.9rem;line-height:1.68;color:var(--ink-2)}.case-study-impact{list-style:none;display:flex;flex-direction:column;gap:.45rem}.case-study-impact li{display:flex;gap:.55rem;font-size:.87rem;line-height:1.55;color:var(--ink-2)}.case-study-impact i{flex-shrink:0;margin-top:.32em;font-size:.72rem;color:var(--sage)}.case-study-tech{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.6rem}.case-study-tech span{padding:.24rem .65rem;border-radius:999px;border:1px solid var(--line);background:var(--paper);font-family:var(--font-mono);font-size:.68rem;color:var(--ink-2);transition:border-color .25s ease,color .25s ease}.case-study-card:hover .case-study-tech span{border-color:#6a4fb033;color:var(--wine-700)}.carousel-dots{display:flex;justify-content:center;gap:.45rem}.carousel-dot{width:8px;height:8px;border-radius:999px;background:var(--line-2);transition:width .35s var(--ease),background .3s ease}.carousel-dot.is-active{width:26px;background:linear-gradient(90deg,var(--wine-600),var(--wine-400))}.services-stack{display:flex;flex-direction:column;gap:3rem}.services-group-head{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.services-group-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--wine-50);border:1px solid rgba(106,79,176,.14);color:var(--wine-600);font-size:.82rem}.services-group-head h3{font-family:var(--font-display);font-size:.94rem;font-weight:600;letter-spacing:.02em;color:var(--ink)}.services-group-count{font-family:var(--font-mono);font-size:.7rem;color:var(--wine-400)}.services-group-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line-2),transparent)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.service-card .spotlight-content{padding:1.6rem 1.5rem}.service-title{font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.35;color:var(--ink)}.service-description{margin-top:.5rem;font-size:.87rem;line-height:1.65;color:var(--ink-2)}.service-arrow{position:absolute;right:1.3rem;bottom:1.3rem;font-size:.75rem;color:var(--wine-500);opacity:0;transform:translate(-6px,6px);transition:opacity .35s ease,transform .35s var(--ease)}.service-card:hover .service-arrow{opacity:1;transform:translate(0)}.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.why-card{position:relative;padding:1.85rem 1.6rem 2rem;border-radius:var(--r-lg);background:var(--d-card);border:1px solid var(--d-line);overflow:hidden;transition:transform .45s var(--ease),background .35s ease,border-color .35s ease}.why-card:hover{transform:translateY(-6px);background:#ffffff13;border-color:#c8b6ff59}.why-index{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;color:var(--wine-300)}.why-title{margin-top:.85rem;font-family:var(--font-display);font-size:1.08rem;font-weight:600;color:var(--d-text)}.why-description{margin-top:.5rem;font-size:.89rem;line-height:1.65;color:var(--d-muted)}.why-line{position:absolute;left:0;bottom:0;height:2px;width:100%;background:linear-gradient(90deg,var(--wine-500),var(--brass));transform:scaleX(0);transform-origin:0 50%;transition:transform .55s var(--ease)}.why-card:hover .why-line{transform:scaleX(1)}.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.1rem}.cert-card .spotlight-content{display:flex;flex-direction:column;gap:.55rem;padding:1.6rem 1.5rem;height:100%}.cert-verified{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;padding:.2rem .6rem;border-radius:999px;background:#1f7a4d1a;border:1px solid rgba(31,122,77,.22);font-family:var(--font-mono);font-size:.63rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--sage)}.cert-name{font-family:var(--font-display);font-size:.99rem;font-weight:600;line-height:1.4;color:var(--ink)}.cert-meta{font-size:.83rem;color:var(--ink-2)}.cert-meta span{color:var(--ink-3)}.cert-link{margin-top:auto;padding-top:.75rem;display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--wine-600);opacity:.55;transition:opacity .3s ease,gap .3s var(--ease)}.cert-card:hover .cert-link{opacity:1;gap:.7rem}.cert-more{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--line)}.cert-more-label{display:block;margin-bottom:1rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.cert-more-list{display:flex;flex-wrap:wrap;gap:.5rem}.cert-pill{display:inline-flex;align-items:baseline;gap:.5rem;padding:.45rem .9rem;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:.82rem;color:var(--ink-2);transition:border-color .3s ease,transform .3s var(--ease)}.cert-pill:hover{transform:translateY(-2px);border-color:var(--line-2)}.cert-pill em{font-family:var(--font-mono);font-style:normal;font-size:.68rem;color:var(--ink-3)}.contact-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:2rem;align-items:stretch}.contact-side{display:flex}.contact-side>.training-panel{flex:1}.contact-form-wrap{padding:2.5rem;border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow-md)}.contact-form{display:flex;flex-direction:column;gap:1.35rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.35rem}.field{position:relative}.field input,.field textarea{width:100%;padding:1.35rem 1rem .6rem;border-radius:var(--r-sm);background:var(--paper-2);border:1px solid var(--line);color:var(--ink);font-family:var(--font-body);font-size:.94rem;outline:none;resize:vertical;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease}.field textarea{padding-top:1.6rem;min-height:130px;line-height:1.6}.field label{position:absolute;left:1rem;top:.95rem;font-size:.94rem;color:var(--ink-3);pointer-events:none;transform-origin:0 0;transition:transform .25s var(--ease),color .25s ease}.field label em{font-style:normal;font-size:.8em;opacity:.7}.field input:focus,.field textarea:focus{background:var(--card);border-color:var(--wine-500);box-shadow:0 0 0 4px #6a4fb017}.field input:focus+label,.field textarea:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:not(:placeholder-shown)+label{transform:translateY(-.62rem) scale(.72);color:var(--wine-600)}.contact-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:.25rem}.form-hint{display:flex;align-items:flex-start;gap:.5rem;font-size:.79rem;line-height:1.55;color:var(--ink-3)}.form-hint i{margin-top:.2em;color:var(--wine-400)}.contact-side{display:flex;flex-direction:column;gap:1rem}.contact-details{display:flex;flex-direction:column;gap:.6rem}.contact-detail{display:flex;align-items:center;gap:.9rem;padding:1rem 1.2rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:border-color .3s ease}.contact-detail:hover{border-color:#6a4fb042}.contact-detail-icon{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:11px;background:var(--wine-50);border:1px solid rgba(106,79,176,.14);color:var(--wine-600);font-size:.88rem}.contact-detail-label{display:block;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.contact-detail-value{display:block;font-size:.9rem;font-weight:500;color:var(--ink);word-break:break-word}.training-panel{padding:1.6rem 1.5rem;border-radius:var(--r-xl);background:var(--plum-card);border:1px solid var(--d-line);color:var(--d-text)}.training-head{display:flex;align-items:center;gap:.55rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--d-muted)}.training-live{width:7px;height:7px;border-radius:50%;background:#52e0a8;animation:cta-pulse 2.2s infinite}.training-chart{width:100%;margin-top:1.1rem;overflow:visible}.training-gridline{stroke:#ffffff12;stroke-width:1}.training-axis{stroke:#fff3;stroke-width:1.5}.training-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;animation:training-draw 4s ease-in-out infinite}.training-line-loss{stroke:var(--wine-400)}.training-line-acc{stroke:var(--brass)}@keyframes training-draw{0%{stroke-dashoffset:420;opacity:.2}55%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:1}}.training-dot-loss{fill:var(--wine-300);filter:drop-shadow(0 0 5px rgba(200,182,255,.85))}.training-dot-acc{fill:var(--brass);filter:drop-shadow(0 0 5px rgba(255,224,122,.85))}.training-legend{display:flex;gap:1.25rem;margin-top:.75rem;font-family:var(--font-mono);font-size:.68rem;color:var(--d-muted)}.training-legend span{display:inline-flex;align-items:center;gap:.4rem}.training-swatch{width:8px;height:8px;border-radius:50%}.training-swatch-loss{background:var(--wine-400)}.training-swatch-acc{background:var(--brass)}.training-readout{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--d-line)}.training-readout-label{display:block;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--d-dim)}.training-readout-value{display:block;font-family:var(--font-mono);font-size:.88rem;font-weight:600;color:var(--wine-200)}.footer{position:relative;padding:5rem 1.5rem 2rem;background:var(--band);color:var(--d-text);overflow:hidden}.footer-beam{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--wine-700),var(--wine-400),var(--brass),var(--wine-700));background-size:200% 100%;animation:beam-shift 7s linear infinite}@keyframes beam-shift{to{background-position:200% 0}}.footer-inner{position:relative;z-index:2}.footer-cta{padding-bottom:3.5rem;margin-bottom:3rem;border-bottom:1px solid var(--d-line);text-align:center}.footer-cta-eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--eyebrow-band)}.footer-cta-title{margin:.9rem auto 1.75rem;max-width:18ch;font-family:var(--font-display);font-size:clamp(1.7rem,3.6vw,2.7rem);font-weight:600;line-height:1.18;letter-spacing:-.025em}.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--d-line)}.footer-logo{font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-.02em}.footer-logo span{color:var(--wine-300)}.footer-tagline{margin-top:.7rem;max-width:330px;font-size:.88rem;line-height:1.65;color:var(--d-muted)}.footer-socials{display:flex;gap:.6rem;margin-top:1.4rem}.footer-socials a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--d-line);color:var(--d-muted);font-size:.9rem;transition:transform .35s var(--ease),color .3s ease,border-color .3s ease,background .3s ease}.footer-socials a:hover{transform:translateY(-4px);color:#fff;border-color:transparent;background:var(--accent-grad)}.footer-col{display:flex;flex-direction:column;gap:.65rem}.footer-col-title{margin-bottom:.35rem;font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--wine-300)}.footer-col a{width:fit-content;font-size:.87rem;color:var(--d-muted);transition:color .25s ease,transform .3s var(--ease)}.footer-col a:hover{color:var(--d-text);transform:translate(3px)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;padding-top:1.5rem;font-size:.78rem;color:var(--d-dim)}.footer-stack{font-family:var(--font-mono)}@media(max-width:1080px){.hero-inner{gap:2.5rem}.portrait-chip-a{left:-4%}.portrait-chip-b{right:-4%}}@media(max-width:960px){.nav-links{display:none}.nav-burger{display:flex}.nav-cta{display:none}.hero{padding-top:7.5rem;text-align:center}.hero-inner{grid-template-columns:1fr;gap:3rem}.hero-copy{order:2;display:flex;flex-direction:column;align-items:center}.hero-portrait{order:1}.hero-subtitle,.hero-badges,.hero-actions{justify-content:center}.hero-role{text-align:center}.neural-net-bg{opacity:.4;right:-25%}.scroll-cue{display:none}.about-grid,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.about-visual{position:static;max-width:480px}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@media(max-width:700px){.section{padding:5rem 1.25rem}.hero{padding:7rem 1.25rem 4.5rem}.form-row{grid-template-columns:1fr}.contact-form-wrap{padding:1.75rem 1.35rem}.case-study-slot{flex:0 0 300px}.case-studies-head{flex-direction:column;align-items:flex-start}.carousel-controls{margin-bottom:2rem}.portrait-chip{padding:.5rem .75rem}.portrait-chip-value{font-size:1.05rem}.footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}.back-to-top{left:16px;bottom:18px;width:42px;height:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.05ms!important}.marquee-track,.aurora-blob,.portrait-ring,.portrait-scan,.panel-scan,.neural-net-pulse,.scroll-cue-bead{animation:none!important}}.theme-toggle{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-2);color:var(--ink);font-size:1rem;transition:border-color .25s ease,background .25s ease,transform .35s var(--ease)}.theme-toggle:hover{border-color:var(--khaki);background:var(--wine-50);transform:rotate(-15deg)}:root[data-theme=dark]{--section-alt: #150c22;--band: #150c22}:root[data-theme=dark] main>section:nth-of-type(2n),:root[data-theme=dark] .footer{--card: #1d1130;--d-card: #1d1130;background:radial-gradient(ellipse 70% 55% at 50% -10%,rgba(106,79,176,.38),transparent 70%),radial-gradient(ellipse 45% 40% at 100% 100%,rgba(255,224,122,.07),transparent 70%),radial-gradient(ellipse 40% 45% at 0% 70%,rgba(200,182,255,.08),transparent 70%),#150c22;border-top:1px solid rgba(200,182,255,.12);border-bottom:1px solid rgba(200,182,255,.08)}:root[data-theme=dark] .section-dark .spotlight,:root[data-theme=dark] .why-card,:root[data-theme=dark] .case-study-card,:root[data-theme=dark] .cert-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 45%,transparent),#1d1130;border-color:#c8b6ff33;transition:border-color .3s ease,box-shadow .35s var(--ease),transform .35s var(--ease)}:root[data-theme=dark] .section-dark .spotlight:hover,:root[data-theme=dark] .why-card:hover,:root[data-theme=dark] .case-study-card:hover,:root[data-theme=dark] .cert-card:hover{border-color:#ffe07a73;box-shadow:0 0 0 1px #ffe07a1f,0 18px 50px -20px #6a4fb0b3}:root[data-theme=dark] .result-value{text-shadow:0 0 28px rgba(255,224,122,.28)}:root[data-theme=dark] .tone-dark .section-heading,:root[data-theme=dark] .skills-section .section-heading,:root[data-theme=dark] .case-studies-section .section-heading,:root[data-theme=dark] .certificates-section .section-heading{text-shadow:0 0 40px rgba(255,224,122,.18)}:root[data-theme=dark] .btn-primary:after{display:block;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%)}.ri{display:inline-flex;align-items:center;justify-content:center;line-height:1;font-style:normal}.ri svg{width:1em;height:1em}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.case-grid>div{display:flex}.case-card{width:100%}.case-card .spotlight-content{gap:.95rem;padding:1.7rem 1.6rem 1.5rem;height:100%}.case-card-summary{font-size:.9rem;line-height:1.62;color:var(--ink-2)}.case-card-open{display:inline-flex;align-items:center;gap:.5rem;align-self:flex-start;margin-top:.35rem;padding:.6rem 1.05rem;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-display);font-size:.84rem;font-weight:600;box-shadow:var(--btn-shadow);transition:background .25s ease,transform .3s var(--ease)}.case-card-open:hover{background:var(--btn-hover);transform:translateY(-1px)}.case-card-open .ri{font-size:.75em;transition:transform .3s var(--ease)}.case-card-open:hover .ri{transform:translate(3px)}.case-code-link,.case-code-private{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0;padding:.28rem .7rem;border-radius:999px;font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.02em}.case-code-link{background:var(--chip-3-bg);color:var(--chip-3-fg);transition:transform .25s var(--ease)}.case-code-link:hover{transform:translateY(-1px)}.case-code-private{background:var(--wine-50);color:var(--ink-3)}.case-modal{max-width:680px;max-height:calc(100vh - 3rem);overflow-y:auto;text-align:left;padding:2.4rem 2.3rem 2rem}.case-modal-title{margin:.5rem 2.5rem 1.4rem 0;font-family:var(--font-display);font-size:clamp(1.4rem,2.6vw,1.8rem);font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--ink)}.case-modal-body{display:grid;gap:1.15rem}.case-modal .case-study-tech{margin-top:1.4rem}.case-modal-foot{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--line)}.case-modal-foot .case-code-link,.case-modal-foot .case-code-private{font-size:.78rem;padding:.5rem .95rem}.oss{margin-top:3rem}.oss-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem}.oss-title{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--ink)}.oss-all{display:inline-flex;align-items:center;gap:.45rem;font-size:.86rem;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line-2);padding-bottom:2px}.oss-all .ri{font-size:.75em}.oss-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.oss-card{display:flex;flex-direction:column;gap:.7rem;padding:1.35rem 1.35rem 1.2rem;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.oss-card h4{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--ink)}.oss-card p{font-size:.86rem;line-height:1.6;color:var(--ink-2)}.oss-card .case-study-tech{padding-top:.2rem}.oss-links{display:flex;gap:1rem;padding-top:.4rem}.oss-links a{display:inline-flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;color:var(--ink)}.oss-links a:hover{color:var(--wine-500)}:root[data-theme=dark] .oss-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 45%,transparent),#1d1130;border-color:#c8b6ff33}@media(max-width:1000px){.case-grid,.oss-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.case-grid,.oss-grid{grid-template-columns:1fr}.case-modal{padding:2rem 1.4rem 1.5rem}}.cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.cap-grid>div{display:flex}.cap-card{width:100%;border-radius:var(--r-lg)}.cap-card .spotlight-content{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem 1.45rem;height:100%}.cap-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-size:.95rem}.cap-grid>div:nth-child(4n+1) .cap-icon{background:var(--chip-1-bg);color:var(--chip-1-fg)}.cap-grid>div:nth-child(4n+2) .cap-icon{background:var(--chip-2-bg);color:var(--chip-2-fg)}.cap-grid>div:nth-child(4n+3) .cap-icon{background:var(--chip-3-bg);color:var(--chip-3-fg)}.cap-grid>div:nth-child(4n+4) .cap-icon{background:var(--chip-4-bg);color:var(--chip-4-fg)}.cap-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--ink)}.cap-list{list-style:none;display:grid;gap:.4rem}.cap-list li{position:relative;padding-left:1rem;font-size:.88rem;line-height:1.5;color:var(--ink-2)}.cap-list li:before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--wine-300)}.how-work{margin-top:3rem;padding:1.8rem 1.8rem 1.6rem;border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.how-work-title{margin-bottom:1.2rem;font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--ink)}.how-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem 1.6rem}.how-work-item{display:flex;gap:.8rem}.how-work-index{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--wine-600);padding-top:.2rem}.how-work-item h4{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--ink)}.how-work-item p{margin-top:.2rem;font-size:.85rem;line-height:1.55;color:var(--ink-2)}:root[data-theme=dark] .how-work{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.01) 50%,transparent),#3a2160;border-color:#c8b6ff33}@media(max-width:1000px){.cap-grid,.how-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.cap-grid,.how-work-grid{grid-template-columns:1fr}}.writing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem}.writing-card{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),border-color .3s ease,box-shadow .3s ease}.writing-card:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--shadow-md)}.writing-thumb{position:relative;display:block;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--paper-2);border-bottom:1px solid var(--line);cursor:pointer}.writing-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s var(--ease)}.writing-card:hover .writing-thumb img{transform:scale(1.04)}.writing-thumb-hint{position:absolute;left:50%;bottom:.8rem;transform:translate(-50%,6px);display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-radius:999px;background:#2b1745e0;color:#ffe07a;font-size:.78rem;font-weight:600;white-space:nowrap;opacity:0;transition:opacity .25s ease,transform .25s var(--ease)}.writing-thumb:hover .writing-thumb-hint,.writing-thumb:focus-visible .writing-thumb-hint{opacity:1;transform:translate(-50%)}.writing-body{display:flex;flex-direction:column;gap:.6rem;padding:1.15rem 1.2rem 1.25rem;flex:1}.writing-meta{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.writing-body h3{font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.35;color:var(--ink)}.writing-body h3 a:hover{text-decoration:underline;text-underline-offset:3px}.writing-body p{font-size:.85rem;line-height:1.6;color:var(--ink-2)}.writing-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:auto;padding-top:.4rem}.writing-read,.writing-doc{display:inline-flex;align-items:center;gap:.4rem;font-size:.83rem;font-weight:600;color:var(--ink)}.writing-doc{padding:.22rem .65rem;border-radius:999px;background:var(--chip-3-bg);color:var(--chip-3-fg);font-size:.76rem}.writing-read .ri{font-size:.72em}.writing-viewer{position:relative;width:min(860px,100%);max-height:calc(100vh - 3rem);display:flex;flex-direction:column;border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow-lg);overflow:hidden}.writing-viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem .8rem 1.3rem;border-bottom:1px solid var(--line);font-family:var(--font-display);font-weight:600;color:var(--ink)}.writing-viewer-bar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-viewer-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.writing-viewer-link{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font-size:.82rem;font-weight:600}.writing-viewer-close{position:static}.writing-viewer-body{overflow-y:auto;background:#fff}.writing-viewer-body img{width:100%;height:auto}:root[data-theme=dark] .writing-card{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01) 45%,transparent),var(--card);border-color:#c8b6ff33}@media(max-width:1100px){.writing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.writing-grid{grid-template-columns:1fr}.writing-thumb-hint{opacity:1;transform:translate(-50%)}}main>section:nth-of-type(odd){background-color:var(--paper)}main>section:nth-of-type(2n){background-color:var(--section-alt)}:root[data-theme=dark] main>section:nth-of-type(2n){--card: #1d1130;--d-card: #1d1130}:root:has(main>section:last-of-type:nth-of-type(2n)) .footer{background:var(--paper);border-top:1px solid var(--line)}@media(max-width:700px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.7rem}.result-item .spotlight-content,.result-item{padding:1.1rem 1rem}.result-value{font-size:1.9rem}.result-label{font-size:.8rem}}@keyframes mark-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.55}}.case-demo-link{background:var(--chip-2-bg);color:var(--chip-2-fg)}.case-modal-foot{display:flex;flex-wrap:wrap;gap:.6rem}
