:root{color-scheme:dark;--background:#050505;--background-soft:#090912;--surface:hsla(0,0%,100%,.055);--surface-elevated:hsla(0,0%,100%,.095);--surface-solid:#0b0b14;--border:hsla(0,0%,100%,.13);--border-soft:hsla(0,0%,100%,.075);--border-strong:hsla(0,0%,100%,.24);--text-primary:#fafafa;--text-secondary:#9ca3af;--text-tertiary:#6b7280;--accent:#8b5cf6;--accent-bright:#a78bfa;--on-accent:#fff;--accent-secondary:#22d3ee;--success:#22d3ee;--danger:#f87171;--white:#fff;--black:#000;--grad-cta:linear-gradient(135deg,#8b5cf6,#06b6d4);--glass-bg:linear-gradient(145deg,hsla(0,0%,100%,.095),hsla(0,0%,100%,.035));--glass-bg-soft:linear-gradient(145deg,hsla(0,0%,100%,.075),hsla(0,0%,100%,.03));--radius-s:10px;--radius-m:14px;--radius-l:20px;--content-w:1120px;--font-head:"Sora",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--ease:cubic-bezier(0.4,0,0.2,1);--t-fast:0.18s var(--ease);--t-med:0.26s var(--ease)}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%}section[id]{scroll-margin-top:110px}body{background:var(--background);color:var(--text-primary);font-family:var(--font-body);font-size:1rem;line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block}a,button{color:inherit}button{font:inherit;background:none;border:none}ol,ul{list-style:none}body{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.contact-method,.contact-method *,.fb-input,.footer-contact-link,.input,select,textarea{-webkit-user-select:text!important;-moz-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}img{-webkit-user-drag:none}@media print{body{display:none!important}}::selection{background:rgba(139,92,246,.4);color:var(--white)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.animated-background{position:fixed;inset:0;z-index:-10;pointer-events:none;overflow:hidden;background:radial-gradient(55% 40% at 80% 0,rgba(139,92,246,.14),transparent 70%),radial-gradient(45% 35% at 0 100%,rgba(6,182,212,.09),transparent 70%),#050505;background-size:135% 135%,125% 125%,auto;animation:blackAmbient 24s ease-in-out infinite alternate}.animated-background:before{content:"";position:absolute;inset:0;opacity:.34;background-image:linear-gradient(hsla(0,0%,100%,.025) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.025) 1px,transparent 0);background-size:64px 64px;mask-image:radial-gradient(ellipse 85% 65% at 50% 0,#000,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 85% 65% at 50% 0,#000,transparent 100%);animation:gridDrift 30s linear infinite alternate}.animated-background:after{content:"";position:absolute;width:520px;height:520px;right:-240px;top:220px;border:1px solid hsla(0,0%,100%,.12);border-radius:50%;box-shadow:0 0 0 40px hsla(0,0%,100%,.025),0 0 0 90px hsla(0,0%,100%,.015);animation:orbitOutline 26s ease-in-out infinite alternate}.ab-noise{position:absolute;inset:0;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E")}@keyframes blackAmbient{0%{background-position:80% -8%,0 92%,0 0}50%{background-position:68% 5%,8% 84%,0 0}to{background-position:88% 12%,-5% 100%,0 0}}@keyframes gridDrift{0%{transform:translateZ(0)}to{transform:translate3d(24px,18px,0)}}@keyframes orbitOutline{0%{transform:translateZ(0) rotate(0deg);opacity:.65}to{transform:translate3d(-70px,28px,0) rotate(8deg);opacity:.28}}.glass{background:var(--glass-bg);border:1px solid var(--border);box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px 0 hsla(0,0%,100%,.09);backdrop-filter:blur(22px) saturate(110%);-webkit-backdrop-filter:blur(22px) saturate(110%)}.container{width:min(var(--content-w),100% - 48px);margin-inline:auto}.mono{font-family:var(--font-mono)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:16px;z-index:200;background:var(--surface-solid);border:1px solid var(--border-strong);color:var(--text-primary);text-decoration:none;font-weight:600;font-size:.9rem;padding:10px 18px;border-radius:10px;transition:top var(--t-fast)}.skip-link:focus{top:14px}.eyebrow{color:var(--accent-bright);font-size:.78rem;font-weight:600;letter-spacing:.08em;margin-bottom:16px;display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:1.5px;background:var(--accent);opacity:.75}.accent-text{color:var(--accent-bright)}.section-lead{color:var(--text-secondary);margin-top:16px;max-width:560px;font-size:clamp(.95rem,1.4vw,1.05rem)}.section{padding:clamp(84px,10vw,128px) 0;position:relative}.section-alt{background:linear-gradient(180deg,transparent,hsla(0,0%,100%,.016),transparent)}.section-tight{padding:clamp(64px,8vw,96px) 0}.section-head{max-width:660px;margin-bottom:clamp(44px,6vw,64px)}.section-head h2{font-family:var(--font-head);font-weight:700;font-size:clamp(1.7rem,3.6vw,2.5rem);line-height:1.18;letter-spacing:-.02em}.section-head-center{margin-inline:auto;text-align:center}.section-head-center .section-lead{margin-inline:auto}.section-head-center .eyebrow:after{content:"";width:22px;height:1.5px;background:var(--accent);opacity:.75}.section-divider{width:100%;height:12px;margin:clamp(56px,7vw,84px) 0;opacity:.8}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 26px;border-radius:999px;font-family:var(--font-head);font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:transform var(--t-fast),background var(--t-fast),border-color var(--t-fast),color var(--t-fast),box-shadow var(--t-fast)}.btn>svg{transition:transform var(--t-fast)}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{background:var(--grad-cta);color:var(--on-accent);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(139,92,246,.4)}.btn-primary:hover>svg{transform:translateX(3px)}.btn-secondary{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent-bright);transform:translateY(-2px)}.btn-ghost{background:var(--surface);border-color:var(--border);color:var(--text-secondary)}.btn-ghost:hover{color:var(--text-primary);border-color:var(--border-strong)}.btn-danger{background:hsla(0,91%,71%,.08);border-color:hsla(0,91%,71%,.35);color:var(--danger)}.btn-danger:hover{background:hsla(0,91%,71%,.16)}.btn-sm{min-height:40px;padding:9px 18px;font-size:.85rem}.btn-xs{min-height:36px;padding:7px 14px;font-size:.78rem}.btn[disabled]{opacity:.6;cursor:not-allowed;transform:none!important}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-secondary);position:relative;flex:none}.pulse-dot:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--accent-secondary);opacity:.6;animation:pulse-ring 2s var(--ease) infinite}@keyframes pulse-ring{0%{transform:scale(.6);opacity:.7}80%,to{transform:scale(1.9);opacity:0}}.brand-avatar{display:block;object-fit:cover;object-position:75% center;border-radius:12px;filter:grayscale(1) contrast(1.08) brightness(.92);border:1px solid var(--border-strong);box-shadow:0 10px 28px rgba(0,0,0,.48),inset 0 1px 0 hsla(0,0%,100%,.18);flex:none}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background var(--t-med),border-color var(--t-med),-webkit-backdrop-filter var(--t-med);transition:background var(--t-med),border-color var(--t-med),backdrop-filter var(--t-med);transition:background var(--t-med),border-color var(--t-med),backdrop-filter var(--t-med),-webkit-backdrop-filter var(--t-med);border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(5,5,9,.72);backdrop-filter:blur(22px) saturate(110%);-webkit-backdrop-filter:blur(22px) saturate(110%);border-bottom-color:var(--border)}.header-inner{display:flex;align-items:center;gap:28px;height:72px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;flex:none;border-radius:14px}.brand-text{font-family:var(--font-head);font-weight:800;font-size:1.12rem;letter-spacing:.04em;color:var(--text-primary)}.brand-dot{color:var(--accent-bright)}.header-nav{margin-inline:auto}.header-nav ul{display:flex;align-items:center;gap:4px}.header-nav a{position:relative;display:block;padding:10px 14px;border-radius:10px;color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:.92rem;transition:color var(--t-fast),background var(--t-fast)}.header-nav a:hover{background:hsla(0,0%,100%,.05)}.header-nav a.active,.header-nav a:hover{color:var(--text-primary)}.header-nav a.active:after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:var(--accent)}.header-right{display:flex;align-items:center;gap:16px;margin-left:auto}.header-status{display:inline-flex;align-items:center;gap:9px;color:var(--text-tertiary);font-size:.8rem;font-weight:500;white-space:nowrap}.header-menu-btn{display:none;width:44px;height:44px;border-radius:12px;place-items:center;cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-primary);transition:border-color var(--t-fast),background var(--t-fast)}.header-menu-btn:hover{border-color:var(--border-strong);background:var(--surface-elevated)}.mobile-menu{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:opacity var(--t-med)}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu-panel{background:var(--background-soft);border:1px solid var(--border);border-top:none;border-radius:0 0 24px 24px;margin:0 12px;padding:18px 24px 28px;transform:translateY(-14px);opacity:0;transition:transform var(--t-med),opacity var(--t-med);max-height:calc(100vh - 84px);overflow-y:auto}.mobile-menu.open .mobile-menu-panel{transform:translateY(0);opacity:1}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:10px}.mobile-menu-head .header-menu-btn{display:grid}.mobile-menu-label{color:var(--text-tertiary);font-size:.75rem;letter-spacing:.1em}.mobile-menu-panel ul{display:flex;flex-direction:column}.mobile-menu-panel li{opacity:0;transform:translateX(-8px);transition:opacity var(--t-med),transform var(--t-med)}.mobile-menu.open .mobile-menu-panel li{opacity:1;transform:translateX(0)}.mobile-menu-panel ul a{display:flex;align-items:center;gap:14px;min-height:52px;padding:12px 8px;font-family:var(--font-head);font-weight:600;font-size:1.05rem;color:var(--text-secondary);text-decoration:none;border-bottom:1px solid hsla(0,0%,100%,.05);transition:color var(--t-fast)}.mobile-menu-panel ul a.active,.mobile-menu-panel ul a:hover{color:var(--accent-bright)}.mobile-link-no{color:var(--text-tertiary);font-size:.72rem}.mobile-menu-cta{width:100%;margin-top:18px}.mobile-menu-status{justify-content:center;width:100%;margin-top:16px}.hero{padding:calc(92px + clamp(48px, 7vw, 88px)) 0 clamp(72px,9vw,110px);position:relative}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:clamp(40px,5vw,72px);gap:clamp(40px,5vw,72px);align-items:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;background:rgba(139,92,246,.07);border:1px solid rgba(139,92,246,.38);font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.14em;margin-bottom:28px}.hero-eyebrow .mono{font-size:inherit;letter-spacing:inherit;text-transform:inherit}.hero h1{font-family:var(--font-head);font-weight:800;font-size:clamp(2.05rem,4.8vw,3.35rem);line-height:1.12;letter-spacing:-.025em;text-wrap:balance}.h1-dim{color:#8c8c8c}.hero-role{margin-top:18px;color:var(--accent-secondary);font-size:clamp(.85rem,1.4vw,.95rem);font-weight:500;letter-spacing:.02em}.hero-desc{margin-top:14px;color:var(--text-secondary);font-size:clamp(.98rem,1.5vw,1.08rem);max-width:520px}.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-stats{margin-top:clamp(36px,5vw,52px);flex-wrap:wrap}.hero-stat,.hero-stats{display:flex;align-items:center;gap:clamp(18px,3vw,30px)}.hero-stat-sep{width:1px;height:34px;background:var(--border)}.hero-stat-value{font-family:var(--font-head);font-weight:800;font-size:1.5rem;line-height:1.1;color:var(--text-primary)}.hero-stat-label{color:var(--text-tertiary);font-size:.78rem;margin-top:3px}.hero-visual{position:relative;min-height:540px;display:flex;align-items:center;justify-content:center}.pv-glow{position:absolute;inset:3% 5%;z-index:0;border-radius:32px;background-image:url(/profile.jpg);background-size:cover;background-position:75%;filter:grayscale(1) blur(52px) brightness(.6);opacity:.5}.profile-frame{position:relative;z-index:2;width:min(400px,88%);padding:14px;border-radius:26px;margin:0}.profile-frame:after{content:"";position:absolute;inset:7px;border-radius:19px;border:1px solid var(--border-soft);pointer-events:none;z-index:2}.profile-frame-media{position:relative;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--surface-solid)}.hero-profile-image{object-fit:cover;object-position:75% center;filter:grayscale(1) contrast(1.08) brightness(.94)}.profile-frame-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 45%,rgba(0,0,0,.52))}.profile-caption{position:absolute;left:26px;right:26px;bottom:26px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:14px}.profile-caption>span{min-width:0}.profile-caption strong{display:block;font-family:var(--font-head);font-size:.95rem;letter-spacing:.05em}.profile-caption small{color:var(--text-secondary);font-size:.72rem;display:block}.profile-caption>svg{color:var(--accent-bright);flex:none}.pv-brackets{top:-12px;right:-12px;width:56px;height:56px}.pv-brackets,.pv-chip{position:absolute;z-index:4}.pv-chip{margin:0;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:14px;font-size:.78rem;font-weight:500;color:var(--text-primary);white-space:nowrap}.pv-chip .mono{font-size:.74rem;color:var(--text-secondary)}.pv-chip svg{color:var(--text-secondary);flex:none}.pv-avail{top:7%;left:0}.pv-code{top:21%;right:0}.floating{animation:float-soft 7s ease-in-out infinite}@keyframes float-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.svg-dash{stroke-dasharray:5 7;animation:dash-move 2.6s linear infinite}@keyframes dash-move{to{stroke-dashoffset:-24}}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:clamp(36px,5vw,64px);gap:clamp(36px,5vw,64px);align-items:start}.about-body p{color:var(--text-secondary);margin-bottom:16px;max-width:60ch}.about-body strong{color:var(--text-primary)}.care-block{margin-top:26px;border-radius:var(--radius-m);padding:22px 24px}.care-title{font-family:var(--font-head);font-size:.95rem;font-weight:700;margin-bottom:14px;color:var(--text-primary)}.care-list{display:flex;flex-direction:column;gap:10px}.care-list li{display:flex;align-items:flex-start;gap:10px;color:var(--text-secondary);font-size:.92rem}.care-icon{color:var(--accent);flex:none;margin-top:3px}.about-cta{margin-top:28px}.services-head{margin-bottom:36px}.services-head .services-title{font-family:var(--font-head);font-weight:700;font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.015em}.services-head .eyebrow{margin-bottom:10px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}.service-card{position:relative;border-radius:var(--radius-m);padding:26px;overflow:hidden;transition:transform var(--t-med),border-color var(--t-med)}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad-cta);transform:scaleX(0);transform-origin:left;transition:transform var(--t-med)}.service-card:hover{transform:translateY(-5px);border-color:var(--border-strong)}.service-card:hover:before{transform:scaleX(1)}.service-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.service-index{color:var(--text-tertiary);font-size:.8rem;font-weight:600}.service-art{width:96px;height:72px;color:var(--text-tertiary)}.service-card h4{font-family:var(--font-head);font-size:1.1rem;font-weight:700;margin-bottom:10px}.service-card>p{color:var(--text-secondary);font-size:.92rem;margin-bottom:16px}.service-deliverables{display:flex;flex-direction:column;gap:8px;border-top:1px dashed var(--border);padding-top:16px}.service-deliverables li{display:flex;align-items:center;gap:9px;color:var(--text-tertiary);font-size:.84rem;font-weight:500}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px}.project-card{border-radius:var(--radius-l);overflow:hidden;transition:transform var(--t-med),border-color var(--t-med),box-shadow var(--t-med)}.project-card:hover{transform:translateY(-6px);border-color:var(--border-strong);box-shadow:0 28px 60px rgba(0,0,0,.55)}.project-preview{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--background-soft);border-bottom:1px solid var(--border)}.preview-svg{width:100%;height:100%;transition:transform .5s var(--ease)}.project-card:hover .preview-svg{transform:scale(1.03)}.project-screenshot{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.live-preview{position:absolute;inset:0;overflow:hidden;background:var(--background-soft)}.live-preview-frame{position:absolute;top:0;left:0;width:200%;height:200%;border:0;pointer-events:none;transform:scale(.5);transform-origin:0 0;filter:grayscale(1) brightness(.95) contrast(1.02);opacity:0;transition:opacity .5s var(--ease);background:var(--white)}.live-preview-frame.loaded{opacity:1}.live-preview-loading{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-tertiary);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.lp-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:lp-spin .9s linear infinite}@keyframes lp-spin{to{transform:rotate(1turn)}}.live-badge{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(5,5,10,.78);border:1px solid var(--border);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary)}.project-body{padding:24px 26px 28px}.project-category{color:var(--accent-secondary);font-size:.72rem;letter-spacing:.06em;margin-bottom:10px}.project-body h3{font-family:var(--font-head);font-size:1.15rem;font-weight:700;margin-bottom:10px;letter-spacing:-.01em}.project-desc{color:var(--text-secondary);font-size:.92rem;margin-bottom:18px;max-width:58ch}.project-tech{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.project-tech li{font-size:.7rem;color:var(--text-secondary);background:hsla(0,0%,100%,.04);border:1px solid var(--border);padding:4px 11px;border-radius:999px}.project-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent);text-decoration:none;font-weight:600;font-size:.92rem;font-family:var(--font-head)}.project-link:hover{color:var(--accent-bright)}.project-link>svg{transition:transform var(--t-fast)}.project-link:hover>svg{transform:translate(3px,-3px)}.project-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr}.project-card.featured .project-preview{border-bottom:none;border-right:1px solid var(--border);height:100%}.project-card.featured .project-body{padding:34px 36px;display:flex;flex-direction:column;justify-content:center}.project-card.featured .project-body h3{font-size:1.4rem}.project-card.featured.no-media{grid-template-columns:1fr}.milestone-strip{display:grid;grid-template-columns:repeat(4,1fr);border-radius:var(--radius-m);overflow:hidden}.milestone{padding:24px 20px;text-align:center}.milestone+.milestone{border-left:1px solid var(--border)}.milestone-value{font-family:var(--font-head);font-weight:800;font-size:clamp(1.5rem,3vw,2rem);color:var(--accent-bright);line-height:1.1}.milestone-label{color:var(--text-tertiary);font-size:.8rem;margin-top:6px}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:26px;gap:26px;counter-reset:step}.process-step-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.process-index{width:46px;height:46px;border-radius:13px;flex:none;display:grid;place-items:center;background:var(--surface);border:1px solid rgba(139,92,246,.42);color:var(--accent-bright);font-weight:600;font-size:.9rem}.process-connector{flex:1 1;height:1.5px;background:linear-gradient(90deg,var(--border-strong),transparent)}.process-step h3{font-family:var(--font-head);font-size:1.05rem;font-weight:700;margin-bottom:8px}.process-step p{color:var(--text-secondary);font-size:.88rem}.skills-groups{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}.skills-group{border-radius:var(--radius-m);padding:24px;transition:border-color var(--t-med)}.skills-group:hover{border-color:var(--border-strong)}.skills-group-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.skills-group-icon{width:40px;height:40px;border-radius:11px;flex:none;display:grid;place-items:center;background:var(--surface-elevated);border:1px solid var(--border);color:var(--accent-secondary)}.skills-group-head h3{font-family:var(--font-head);font-size:.98rem;font-weight:700}.skills-list{display:flex;flex-wrap:wrap;gap:9px}.skill-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:hsla(0,0%,100%,.03);border:1px solid var(--border);color:var(--text-secondary);font-size:.84rem;font-weight:500;transition:color var(--t-fast),border-color var(--t-fast),transform var(--t-fast);cursor:default}.skill-chip:hover{color:var(--text-primary);border-color:var(--border-strong);transform:translateY(-2px)}.skill-mark{width:6px;height:6px;border-radius:2px;background:var(--accent);transform:rotate(45deg);opacity:.85}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px;margin-bottom:clamp(44px,6vw,64px)}.testimonial-card{display:flex;flex-direction:column;gap:14px;border-radius:var(--radius-m);padding:26px;transition:transform var(--t-med),border-color var(--t-med)}.testimonial-card:hover{transform:translateY(-4px);border-color:var(--border-strong)}.testimonial-quote{color:var(--accent);opacity:.9}.testimonial-msg{color:var(--text-secondary);font-size:.93rem;flex:1 1}.testimonial-meta{display:flex;align-items:center;gap:12px;border-top:1px dashed var(--border);padding-top:16px}.testimonial-avatar{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--surface-elevated);border:1px solid rgba(139,92,246,.4);color:var(--accent-bright);font-family:var(--font-head);font-weight:700;font-size:.95rem}.testimonial-person{flex:1 1;min-width:0;line-height:1.35}.testimonial-person strong{display:block;font-family:var(--font-head);font-size:.92rem}.testimonial-person small{color:var(--text-tertiary);font-size:.78rem}.testimonial-meta time{color:var(--text-tertiary);font-size:.7rem;flex:none}.stars{display:inline-flex;align-items:center;gap:3px}.star{color:hsla(0,0%,100%,.16);transition:color var(--t-fast),transform var(--t-fast)}.star.lit{color:var(--accent-bright)}.star.lit path,.star.lit svg path{fill:currentColor}.star-btn{cursor:pointer;padding:2px;border-radius:6px;min-width:34px;min-height:34px;display:grid;place-items:center}.star-btn:hover{transform:scale(1.12)}.contact-form,.feedback-form{border-radius:var(--radius-l);padding:clamp(24px,4vw,34px);display:flex;flex-direction:column;gap:18px}.feedback-form{max-width:640px;margin-inline:auto}.feedback-form-head h3{font-family:var(--font-head);font-size:1.15rem;font-weight:700}.feedback-form-head p{color:var(--text-tertiary);font-size:.88rem;margin-top:6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field label,.field-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.req{color:var(--danger)}.opt{color:var(--text-tertiary);font-weight:400;font-size:.82rem}.input{width:100%;background:var(--background-soft);border:1px solid var(--border);border-radius:var(--radius-s);padding:13px 16px;color:var(--text-primary);font-family:var(--font-body);font-size:16px;line-height:1.5;outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast)}.input::placeholder{color:var(--text-tertiary)}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(139,92,246,.22);background:var(--surface)}.input[aria-invalid=true]{border-color:hsla(0,91%,71%,.55)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px hsla(0,91%,71%,.15)}.textarea{resize:vertical;min-height:110px}.field-err{color:var(--danger);font-size:.8rem;font-weight:600}.form-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.form-note{display:inline-flex;align-items:center;gap:7px;font-size:.86rem;font-weight:600}.form-note.ok{color:var(--success)}.form-note.err{color:var(--danger)}.contact-layout{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:26px;gap:26px;align-items:start}.contact-methods{display:flex;flex-direction:column;gap:14px}.contact-method{display:flex;align-items:center;gap:16px;border-radius:var(--radius-m);padding:20px 22px;text-decoration:none;transition:transform var(--t-med),border-color var(--t-med)}.contact-method:hover{transform:translateY(-3px);border-color:var(--border-strong)}.contact-method.whatsapp:hover{border-color:rgba(139,92,246,.48)}.contact-method-icon{width:48px;height:48px;border-radius:13px;flex:none;display:grid;place-items:center;background:var(--surface-elevated);border:1px solid var(--border);color:var(--accent-secondary);transition:color var(--t-fast),border-color var(--t-fast)}.contact-method.whatsapp .contact-method-icon{color:var(--accent-bright)}.contact-method:hover .contact-method-icon{border-color:var(--border-strong)}.contact-method-info{flex:1 1;min-width:0}.contact-method-info strong{display:block;font-family:var(--font-head);font-size:.96rem}.contact-method-info .mono{color:var(--text-tertiary);font-size:.8rem;word-break:break-all}.contact-method-arrow{color:var(--text-tertiary);transition:transform var(--t-fast),color var(--t-fast)}.contact-method:hover .contact-method-arrow{transform:translate(2px,-2px);color:var(--accent-bright)}.contact-availability{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:.88rem;font-weight:500;padding:16px 22px;border:1px dashed rgba(34,211,238,.4);border-radius:var(--radius-m);background:rgba(34,211,238,.04)}.site-footer{border-top:1px solid var(--border);background:rgba(9,9,18,.6)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-gap:40px;gap:40px;padding:clamp(44px,6vw,64px) 0 clamp(32px,4vw,44px)}.footer-tag{color:var(--text-secondary);font-size:.9rem;margin-top:16px;max-width:300px}.footer-nav-title{color:var(--text-tertiary);font-size:.72rem;letter-spacing:.1em;display:block;margin-bottom:16px}.footer-nav ul{display:flex;flex-direction:column;gap:10px}.footer-nav a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color var(--t-fast)}.footer-nav a:hover{color:var(--accent-bright)}.footer-contact{display:flex;flex-direction:column;gap:12px}.footer-contact-link{display:inline-flex;align-items:center;gap:10px;color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color var(--t-fast)}.footer-contact-link:hover{color:var(--accent-bright)}.footer-contact-link svg{color:var(--accent-secondary);flex:none}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--border);padding:22px 0 26px;color:var(--text-tertiary);font-size:.82rem}.footer-note{font-size:.74rem}.admin-login-wrap{min-height:100vh;display:grid;place-items:center;padding:30px}.admin-login{width:min(400px,100%);display:flex;flex-direction:column;gap:16px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:40px 32px}.admin-login h1{font-family:var(--font-head);font-size:1.5rem}.admin-login p{color:var(--text-secondary);font-size:.9rem}.admin-err{color:var(--danger);font-size:.85rem;font-weight:600}.admin-back{color:var(--text-tertiary);font-size:.85rem;text-decoration:none;margin-top:6px}.admin-back:hover{color:var(--accent-bright)}.admin-wrap{width:min(880px,100% - 48px);margin:0 auto;padding:26px 0 90px;min-height:100vh}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;background:rgba(5,5,9,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.admin-top-actions{display:flex;gap:10px}.admin-dim{color:var(--text-tertiary);font-weight:400}.admin-tabs{display:flex;gap:10px;padding:20px 0;flex-wrap:wrap}.admin-tab{padding:10px 22px;border-radius:999px;cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-head);font-weight:600;font-size:.9rem;transition:color var(--t-fast),border-color var(--t-fast),background var(--t-fast);min-height:44px}.admin-tab:hover{color:var(--text-primary)}.admin-tab.active{background:var(--grad-cta);color:var(--on-accent);border-color:transparent}.admin-section{gap:22px}.admin-card,.admin-section{display:flex;flex-direction:column}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);padding:26px;gap:16px}.admin-card h2{font-family:var(--font-head);font-size:1.15rem}.admin-note{color:var(--text-secondary);font-size:.85rem}.admin-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.admin-row:has(>:nth-child(3)){grid-template-columns:1fr 1fr 1fr}.admin-check{display:flex;align-items:center;gap:11px;font-size:.92rem;cursor:pointer;min-height:44px}.admin-check input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.admin-actions{display:flex;gap:12px;flex-wrap:wrap}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}select.input option{background:var(--surface-solid);color:var(--text-primary)}.admin-list{display:flex;flex-direction:column;gap:12px}.admin-empty{color:var(--text-tertiary);font-size:.9rem;padding:20px;text-align:center}.admin-item{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);padding:16px 20px}.admin-item.unread{border-color:rgba(139,92,246,.45)}.admin-item-icon{width:44px;height:44px;object-fit:contain;flex:none;background:var(--surface-elevated);border-radius:10px;padding:5px}.admin-item-icon.placeholder{display:block;border:1px dashed var(--border-strong)}.admin-item-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.admin-item-body strong{font-family:var(--font-head);font-size:.95rem}.admin-item-body small{color:var(--text-secondary);font-size:.8rem;word-break:break-word}.admin-item-actions{display:flex;gap:8px;flex:none;flex-wrap:wrap;justify-content:flex-end}.admin-badge{font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;background:var(--grad-cta);color:var(--on-accent);padding:3px 9px;border-radius:999px;vertical-align:middle;font-weight:700}.admin-stars{color:var(--accent-bright);font-size:.95rem;flex:none}.admin-read-dot{width:10px;height:10px;border-radius:50%;flex:none;background:var(--accent);box-shadow:0 0 10px rgba(139,92,246,.55)}.admin-read-dot.read{background:var(--text-tertiary);box-shadow:none}.fb-label{display:flex;flex-direction:column;gap:8px;font-size:.9rem;font-weight:600}.fb-label small{color:var(--text-tertiary);font-weight:400}.fb-input{background:var(--background-soft);border:1px solid var(--border);border-radius:var(--radius-s);padding:13px 16px;color:var(--text-primary);font-family:var(--font-body);font-size:16px;outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast);width:100%}.fb-input::placeholder{color:var(--text-tertiary)}.fb-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(139,92,246,.22)}.fb-textarea{resize:vertical;min-height:110px}.fb-submit{justify-content:center}.fb-success{color:var(--success)}.fb-error,.fb-success{font-size:.9rem;font-weight:600}.fb-error{color:var(--danger)}.care-block,.contact-form,.contact-method,.feedback-form,.milestone-strip,.project-card,.service-card,.skills-group,.testimonial-card{background:var(--glass-bg-soft);border:1px solid var(--border);box-shadow:0 24px 64px rgba(0,0,0,.38),inset 0 1px 0 hsla(0,0%,100%,.07);backdrop-filter:blur(16px) saturate(108%);-webkit-backdrop-filter:blur(16px) saturate(108%)}.contact-method:hover,.project-card:hover,.service-card:hover,.service-card:hover:before,.skills-group:hover,.testimonial-card:hover{border-color:rgba(139,92,246,.42)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.reveal.in{opacity:1;transform:translateY(0)}.reveal.d1{transition-delay:.06s}.reveal.d2{transition-delay:.12s}.reveal.d3{transition-delay:.18s}.reveal.d4{transition-delay:.24s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.animated-background,.animated-background:after,.animated-background:before,.floating,.lp-spinner,.pulse-dot:after,.svg-dash{animation:none!important}.preview-svg{transition:none}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}}@media (max-width:1120px){.header-status-text{display:none}}@media (max-width:1023px){.header-nav{display:none}.header-menu-btn{display:grid}.hero-grid{grid-template-columns:1fr;gap:44px}.hero-visual{min-height:500px;margin-top:8px}.about-grid,.services-grid{grid-template-columns:1fr}.process-steps{grid-template-columns:repeat(2,1fr);gap:34px 26px}.process-connector{display:none}.contact-layout,.skills-groups,.testimonials-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.project-card.featured{grid-template-columns:1fr}.project-card.featured .project-preview{border-right:none;border-bottom:1px solid var(--border)}}@media (max-width:720px){html{scroll-padding-top:92px}section[id]{scroll-margin-top:92px}.header-inner{height:64px;gap:14px}.header-cta{display:none}.hero{padding-top:calc(84px + 40px)}.hero-stat,.hero-stats{gap:16px}.hero-stat-sep{display:none}.hero-visual{min-height:470px}.profile-frame{width:min(340px,92%)}.pv-avail{top:4%}.pv-code{top:16%}.pv-chip{padding:9px 13px;font-size:.74rem}.projects-grid{grid-template-columns:1fr}.milestone-strip{grid-template-columns:repeat(2,1fr)}.milestone:nth-child(2n){border-left:1px solid var(--border)}.milestone:nth-child(n+3){border-top:1px solid var(--border)}.milestone:nth-child(2){border-left:1px solid var(--border)}.form-grid,.process-steps{grid-template-columns:1fr}.admin-row,.admin-row:has(>:nth-child(3)){grid-template-columns:1fr}.admin-item{flex-wrap:wrap}.admin-item-actions{width:100%;justify-content:flex-start}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{justify-content:center;text-align:center}.btn{width:100%}.form-foot .btn,.hero-cta .btn{width:auto;flex:1 1 auto}}@media (max-width:380px){.container{width:calc(100% - 36px)}.hero-cta{flex-direction:column}.hero-cta .btn{width:100%}.hero-visual{min-height:440px}.profile-frame{width:94%}.pv-chip{font-size:.7rem;padding:8px 11px}.pv-code .mono{font-size:.66rem}}