@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Outfit:wght@300;400;500;600;700;800;900&display=swap";:root{--bg: #0a0a0a;--bg-elevated: #111111;--surface: rgba(255, 255, 255, .04);--surface-hover: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .15);--text-primary: #f5f5f7;--text-secondary: #a1a1a6;--text-tertiary: #6e6e73;--accent: #64d2ff;--accent-soft: rgba(100, 210, 255, .12);--accent-glow: rgba(100, 210, 255, .25);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Outfit", -apple-system, sans-serif;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--section-pad: clamp(80px, 12vh, 160px);--content-width: 1100px;--content-narrow: 720px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:initial}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button{font:inherit;border:none;background:none;cursor:pointer;color:inherit}ul,ol{list-style:none}.container{width:min(var(--content-width),calc(100% - 48px));margin:0 auto}.container--narrow{width:min(var(--content-narrow),calc(100% - 48px));margin:0 auto}section{position:relative;padding:var(--section-pad) 0}.bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.bg-noise{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.bg-dots{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.15;background-image:radial-gradient(circle,rgba(255,255,255,.15) 1px,transparent 1px);background-size:24px 24px}.bg-glow{position:fixed;border-radius:50%;filter:blur(120px);pointer-events:none;z-index:0}.bg-glow--1{width:600px;height:600px;background:radial-gradient(circle,rgba(100,210,255,.08),transparent 70%);top:-10%;right:-5%;animation:glow-drift 20s ease-in-out infinite alternate}.bg-glow--2{width:500px;height:500px;background:radial-gradient(circle,rgba(160,120,255,.06),transparent 70%);bottom:10%;left:-10%;animation:glow-drift 25s ease-in-out infinite alternate-reverse}@keyframes glow-drift{0%{transform:translate(0)}to{transform:translate(40px,-30px)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 0;transition:transform .4s var(--ease-out-expo),background-color .3s ease}.nav--hidden{transform:translateY(-100%)}.nav--scrolled{background:#0a0a0acc;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border)}.nav__inner{width:min(var(--content-width),calc(100% - 48px));margin:0 auto;display:flex;justify-content:space-between;align-items:center}.nav__brand{font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:-.02em;color:var(--text-primary);transition:opacity .2s ease}.nav__brand:hover{opacity:.7}.nav__links{display:flex;gap:32px;align-items:center}.nav__link{font-size:.85rem;font-weight:400;color:var(--text-secondary);transition:color .25s ease;position:relative}.nav__link:after{content:"";position:absolute;bottom:-4px;left:0;width:0%;height:1px;background:var(--accent);transition:width .3s var(--ease-out-expo)}.nav__link:hover{color:var(--text-primary)}.nav__link:hover:after{width:100%}.nav__link--cta{background:var(--surface);border:1px solid var(--border);padding:8px 20px;border-radius:999px;color:var(--text-primary);font-weight:500;transition:background .25s ease,border-color .25s ease}.nav__link--cta:after{display:none}.nav__link--cta:hover{background:var(--surface-hover);border-color:var(--border-strong)}.hero{min-height:100vh;display:flex;align-items:center;position:relative;z-index:2;padding-top:80px}.hero__content{position:relative;z-index:2}.hero__label{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:500;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px;opacity:0}.hero__label:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.hero__heading{font-family:var(--font-display);font-weight:800;font-size:clamp(3rem,8vw,6.5rem);line-height:.95;letter-spacing:-.04em;color:var(--text-primary);max-width:900px;margin-bottom:28px}.hero__heading .word{display:inline-block;overflow:hidden}.hero__heading .word-inner{display:inline-block;transform:translateY(105%)}.hero__heading .accent{color:var(--accent)}.hero__description{max-width:520px;font-size:1.15rem;line-height:1.7;color:var(--text-secondary);font-weight:300;opacity:0}.hero__scroll-cue{position:absolute;bottom:40px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-tertiary);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;opacity:0;animation:scroll-cue-fade 2s ease-in-out 2.5s forwards}.hero__scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--text-tertiary),transparent);animation:scroll-line 2s ease-in-out infinite}@keyframes scroll-cue-fade{to{opacity:1}}@keyframes scroll-line{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.section-label{display:inline-flex;align-items:center;gap:10px;font-size:.75rem;font-weight:500;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}.section-label:before{content:"";width:20px;height:1px;background:var(--accent)}.about{z-index:2}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about__heading{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;letter-spacing:-.03em;margin-bottom:24px}.about__text{color:var(--text-secondary);font-size:1.05rem;line-height:1.8;font-weight:300}.about__text+.about__text{margin-top:16px}.about__visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:400px}.about__card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%}.about__card-label{font-size:.7rem;font-weight:600;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}.about__card-text{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.about__stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.stat{text-align:center;padding:20px;background:#ffffff05;border-radius:12px;border:1px solid var(--border)}.stat__number{font-family:var(--font-display);font-weight:800;font-size:2rem;color:var(--text-primary);letter-spacing:-.02em}.stat__label{font-size:.72rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.philosophy{z-index:2;text-align:center;padding:calc(var(--section-pad) * 1.5) 0}.philosophy__statement{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,5vw,4rem);line-height:1.2;letter-spacing:-.03em;max-width:800px;margin:0 auto}.philosophy__statement .phil-word{display:inline-block;opacity:.1;transition:opacity .5s ease}.philosophy__statement .phil-word.is-visible{opacity:1}.philosophy__sub{margin-top:24px;font-size:1.1rem;color:var(--text-tertiary);font-weight:300}.projects{z-index:2}.projects__heading{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.03em;margin-bottom:60px}.projects__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:36px 32px;overflow:hidden;transition:transform .5s var(--ease-out-expo),border-color .3s ease,box-shadow .3s ease;transform-style:preserve-3d;cursor:default}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),rgba(160,120,255,.6));opacity:0;transition:opacity .3s ease}.project-card:hover{border-color:var(--border-strong);box-shadow:0 20px 60px #0006}.project-card:hover:before{opacity:1}.project-card__icon{width:48px;height:48px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;margin-bottom:24px;color:var(--accent);font-size:1.2rem}.project-card__name{font-family:var(--font-display);font-weight:700;font-size:1.5rem;letter-spacing:-.02em;margin-bottom:12px}.project-card__desc{color:var(--text-secondary);font-size:.92rem;line-height:1.7;margin-bottom:24px;font-weight:300}.project-card__link{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:500;color:var(--accent);transition:gap .3s var(--ease-out-expo)}.project-card__link:hover{gap:12px}.project-card__link svg{width:16px;height:16px;transition:transform .3s var(--ease-out-expo)}.project-card:hover .project-card__link svg{transform:translate(4px)}.contact{z-index:2;text-align:center}.contact__heading{font-family:var(--font-display);font-weight:800;font-size:clamp(2.5rem,6vw,5rem);line-height:1;letter-spacing:-.04em;margin-bottom:16px}.contact__sub{font-size:1.1rem;color:var(--text-secondary);font-weight:300;margin-bottom:40px;max-width:480px;margin-left:auto;margin-right:auto}.contact__cta{display:inline-flex;align-items:center;gap:10px;background:var(--text-primary);color:var(--bg);font-family:var(--font-display);font-weight:600;font-size:.95rem;padding:16px 36px;border-radius:999px;transition:transform .3s var(--ease-out-expo),box-shadow .3s ease;letter-spacing:-.01em}.contact__cta:hover{transform:translateY(-2px);box-shadow:0 12px 40px #ffffff1a}.contact__cta svg{width:18px;height:18px}.socials{display:flex;justify-content:center;gap:16px;margin-top:40px}.social-link{width:48px;height:48px;border-radius:50%;border:1px solid var(--border);display:grid;place-items:center;color:var(--text-secondary);transition:color .25s ease,border-color .25s ease,transform .25s var(--ease-out-expo)}.social-link:hover{color:var(--text-primary);border-color:var(--border-strong);transform:translateY(-3px)}.social-link svg{width:20px;height:20px}.footer{position:relative;z-index:2;padding:40px 0;border-top:1px solid var(--border)}.footer__inner{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--text-tertiary)}.footer__link{color:var(--text-secondary);transition:color .2s ease}.footer__link:hover{color:var(--text-primary)}.divider{width:100%;height:1px;background:var(--border);position:relative;z-index:2}.reveal{opacity:0;transform:translateY(40px)}.reveal--left{opacity:0;transform:translate(-40px)}.reveal--right{opacity:0;transform:translate(40px)}.reveal--scale{opacity:0;transform:scale(.95)}.nav__toggle{display:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);place-items:center;color:var(--text-primary)}.nav__toggle svg{width:20px;height:20px}.nav__overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#0a0a0af2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;justify-content:center;align-items:center;gap:32px}.nav__overlay.is-open{display:flex}.nav__overlay a{font-family:var(--font-display);font-size:2rem;font-weight:600;color:var(--text-primary);transition:color .2s ease}.nav__overlay a:hover{color:var(--accent)}.nav__close{position:absolute;top:20px;right:24px;width:40px;height:40px;display:grid;place-items:center;color:var(--text-secondary)}@media(max-width:900px){.about__grid{grid-template-columns:1fr;gap:40px}.projects__grid{grid-template-columns:1fr;gap:16px}.nav__links{display:none}.nav__toggle{display:grid}.hero__heading{font-size:clamp(2.5rem,10vw,4rem)}}@media(max-width:600px){:root{--section-pad: 60px}.container{width:calc(100% - 32px)}.about__stats{grid-template-columns:1fr 1fr;gap:12px}.stat__number{font-size:1.5rem}.contact__heading{font-size:clamp(2rem,10vw,3rem)}.footer__inner{flex-direction:column;gap:12px;text-align:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
