 :root{color-scheme:dark;--bg:#130F20;--surface:#2B2242;--accent:#C3A8FF;--text:#F7F1FF;--muted:#C6BBD7;--line:rgba(195,168,255,.24);--glass:rgba(43,34,66,.55);--shadow:rgba(8,4,19,.28)}
html[data-theme=light]{color-scheme:light;--bg:#FBF8FF;--surface:#EDE5F9;--accent:#8060B8;--text:#2A203D;--muted:#675A78;--line:rgba(128,96,184,.22);--glass:rgba(237,229,249,.7);--shadow:rgba(73,48,104,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.ambient{position:fixed;pointer-events:none;z-index:-1;filter:blur(85px);border-radius:50%;opacity:.28}.ambient.a{width:420px;height:420px;background:#8965e3;top:-160px;right:-90px}.ambient.b{width:370px;height:370px;background:#6641a2;top:430px;left:-180px;opacity:.16}.shell{max-width:1200px;margin:auto;padding:25px 28px}.glass{background:var(--glass);border:1px solid var(--line);box-shadow:0 18px 55px var(--shadow),inset 0 1px 0 rgba(255,255,255,.09);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.nav{position:sticky;top:16px;z-index:10;border-radius:22px;padding:13px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-weight:800;letter-spacing:.065em;font-size:15px;white-space:nowrap}.logo-mark{color:var(--accent);font-size:24px;vertical-align:-2px;margin-right:5px}.nav nav{display:flex;gap:22px;font-size:13px;color:var(--muted);flex-wrap:wrap}.nav nav a:hover{color:var(--text)}.actions{display:flex;gap:8px}.actions button{border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);min-width:42px;height:38px}.hero{margin-top:36px;border-radius:32px;min-height:495px;display:grid;grid-template-columns:1.25fr 1fr;overflow:hidden;position:relative}.hero-copy{padding:65px 0 55px 62px;z-index:1}.eyebrow,.kicker{color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.17em}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px}h1{font-size:clamp(40px,5vw,68px);letter-spacing:-.055em;line-height:1.12;margin:27px 0}h1 em{font-style:normal;color:var(--accent)}.hero-copy p{max-width:490px;color:var(--muted);font-size:16px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.primary,.secondary{border-radius:14px;padding:13px 19px;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s}.primary{background:var(--accent);color:var(--bg)}html[data-theme=light] .primary{color:#fff}.secondary{border:1px solid var(--line);background:var(--glass)}.primary:hover,.secondary:hover{transform:translateY(-3px)}.metrics{display:flex;gap:35px;margin-top:30px}.metrics div{display:flex;flex-direction:column}.metrics strong{font-size:27px;color:var(--accent)}.metrics span{font-size:11px;color:var(--muted)}.diagram{align-self:center;min-width:0;padding:26px 18px;color:var(--accent)}.diagram svg{width:100%;height:auto;max-height:360px;filter:drop-shadow(0 0 26px rgba(170,135,255,.15))}.diagram-title,.diagram-foot{font-size:10px;letter-spacing:.16em;text-align:center;color:var(--muted)}.section{padding-top:95px;scroll-margin-top:110px}.section-head{margin-bottom:28px}.section h2{font-size:clamp(28px,4vw,42px);letter-spacing:-.045em;margin:9px 0}.section-head p{color:var(--muted);max-width:750px}.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.tile{border-radius:22px;padding:25px;min-height:150px}.tile-icon{font-size:25px;color:var(--accent)}.tile h3{font-size:16px;margin:14px 0 5px}.tile p{font-size:12px;color:var(--muted);margin:0}.compact{margin-top:16px;border-radius:20px;padding:20px 28px}.compact h3{margin:0 0 5px;font-size:15px}.compact p{margin:0;color:var(--muted);font-size:13px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.project{border-radius:23px;padding:28px;min-height:200px;display:flex;flex-direction:column;justify-content:space-between}.project-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.project-index{color:var(--accent);font-size:11px;letter-spacing:.12em}.status{border:1px solid var(--line);border-radius:100px;color:var(--muted);padding:5px 11px;font-size:11px;white-space:nowrap}.project h3{font-size:clamp(18px,2.3vw,24px);margin:20px 0 7px}.project p{color:var(--muted);font-size:13px;margin:0}.project .detail{margin-top:12px}.timeline{display:grid;gap:13px}.job{padding:23px 28px;border-radius:20px}.job-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.job h3{margin:0;font-size:18px}.job small{color:var(--accent)}.job p{margin:8px 0 0;color:var(--muted);font-size:13px}.about,.contact{border-radius:24px;padding:35px;display:flex;align-items:center;justify-content:space-between;gap:30px}.about p,.contact p{max-width:760px;color:var(--muted)}.about-badge{font-size:50px;font-weight:800;letter-spacing:-.09em;color:var(--accent);white-space:nowrap}.about-badge span{color:var(--muted)}.contact{align-items:flex-start;flex-direction:column}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.contact-links a{border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:13px}footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:70px 0 20px;font-size:10px;color:var(--muted);letter-spacing:.12em}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{padding:52px 36px 15px}.diagram{max-width:440px;margin:auto;padding:0 30px 25px}.bento{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.shell{padding:12px}.nav{top:8px;padding:10px 12px;border-radius:17px;flex-wrap:wrap}.logo{font-size:12px}.nav nav{order:3;width:100%;justify-content:space-around;gap:8px;font-size:12px}.actions button{min-width:37px;height:35px}.hero{margin-top:20px;border-radius:24px}.hero-copy{padding:35px 22px 8px}.hero-copy p{font-size:14px}.hero-actions{gap:8px}.primary,.secondary{padding:12px;font-size:12px}.section{padding-top:72px}.tile{padding:20px;min-height:135px}.project-grid{grid-template-columns:1fr}.project{padding:23px}.about,.contact{padding:23px}.about-badge{font-size:35px}footer{padding-top:55px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@supports not (backdrop-filter:blur(2px)){.glass{background:var(--surface)}}