#navbar{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--nav-h);background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);transition:background .3s}#navbar.scrolled{background:var(--nav-bg-scrolled)}#navbar .nav-inner{max-width:1152px;height:var(--nav-h);margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:flex-start;gap:32px;position:relative}#navbar .nav-actions{margin-left:auto;display:inline-flex;align-items:center;gap:12px}#navbar .nav-logo{font-size:1.25rem;font-weight:700;letter-spacing:-.05em;background:linear-gradient(to right,#818cf8,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0}#navbar .nav-links{display:flex;align-items:center;gap:32px;margin:0;position:absolute;left:50%;transform:translate(-50%)}#navbar .nav-links a{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--text-muted);transition:color .2s}#navbar .nav-links a i{font-size:.75rem;opacity:.7;transition:opacity .2s}#navbar .nav-links a:hover,#navbar .nav-links a.is-active{color:var(--accent)}#navbar .nav-links a:hover i,#navbar .nav-links a.is-active i{opacity:1}#navbar .btn-talk{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 15px;background:var(--pill-bg);border-radius:999px;font-size:.875rem;color:var(--pill-text);transition:background .2s}#navbar .btn-talk i{font-size:.75rem}#navbar .btn-talk:hover{background:var(--pill-hover-bg)}#navbar .btn-talk-mobile{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}#navbar .btn-talk-mobile:hover{background:var(--hover-bg-strong);border-color:var(--border-lite);color:var(--text);transform:translate(-50%,calc(-50% - 1px))}#navbar .theme-toggle{flex-shrink:0;width:40px;height:40px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s,transform .2s}#navbar .theme-toggle:hover{background:var(--hover-bg-strong);border-color:var(--border-lite);color:var(--text);transform:translateY(-1px);cursor:pointer}#navbar .theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#navbar .hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);transition:background .2s,border-color .2s,transform .18s ease;-webkit-tap-highlight-color:transparent}#navbar .hamburger:hover{background:var(--hover-bg-strong);border-color:var(--border-lite);transform:translateY(-1px)}#navbar .hamburger:active{transform:translateY(0)}#navbar .hamburger:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#navbar .hamburger span{display:block;width:20px;height:2px;background:var(--text);border-radius:999px;transform-origin:center;will-change:transform,opacity;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .18s ease,width .22s ease}#navbar .hamburger span:nth-child(2){width:14px}#navbar .hamburger.open span{width:20px}#navbar .hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}#navbar .hamburger.open span:nth-child(2){opacity:0;transform:scaleX(.2)}#navbar .hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{position:fixed;top:var(--nav-h);left:0;right:0;z-index:49;background:var(--menu-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:10px 16px 14px;display:flex;flex-direction:column;gap:10px;opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .22s ease,transform .22s cubic-bezier(.22,1,.36,1)}.mobile-menu.open{opacity:1;pointer-events:all;transform:translateY(0)}.mobile-menu__links{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.mobile-menu .mobile-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;text-decoration:none;color:var(--text-muted);font-size:.9375rem;font-weight:500;transition:background .15s ease,color .15s ease,transform .18s cubic-bezier(.22,1,.36,1);opacity:0;transform:translate(-10px)}.mobile-menu.open .mobile-link{opacity:1;transform:translate(0);transition:background .15s ease,color .15s ease,opacity .22s calc(var(--i) * 55ms + .05s) ease,transform .28s calc(var(--i) * 55ms + .05s) cubic-bezier(.22,1,.36,1)}.mobile-menu .mobile-link:hover{background:var(--hover-bg);color:var(--text)}.mobile-link__icon{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);display:inline-flex;align-items:center;justify-content:center;font-size:.8125rem;color:var(--accent);flex-shrink:0;transition:background .15s ease,border-color .15s ease}.mobile-menu .mobile-link:hover .mobile-link__icon{background:var(--hover-bg-strong);border-color:var(--border-lite)}.mobile-link__label{flex:1}.mobile-link__arrow{display:none;font-size:.625rem;opacity:.35;transition:opacity .15s,transform .15s}.mobile-menu .mobile-link:hover .mobile-link__arrow{opacity:.7;transform:translate(2px)}.mobile-menu__footer{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border);padding-top:10px;opacity:0;transform:translateY(6px);transition:opacity .22s .28s ease,transform .28s .28s cubic-bezier(.22,1,.36,1)}.mobile-menu.open .mobile-menu__footer{opacity:1;transform:translateY(0)}.mobile-menu__theme-row{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border);cursor:pointer;transition:background .15s ease,border-color .15s ease}.mobile-menu__theme-row:hover{background:var(--hover-bg-strong);border-color:var(--border-lite)}.mobile-menu__theme-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mobile-menu__theme-label{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:var(--text-muted)}.mobile-menu__toggle-track{display:inline-flex;align-items:center;width:42px;height:24px;border-radius:999px;background:var(--border);padding:2px;transition:background .2s;cursor:pointer}.mobile-menu__toggle-track.is-dark{background:var(--accent)}.mobile-menu__toggle-thumb{width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000040;transition:transform .2s cubic-bezier(.22,1,.36,1);transform:translate(0)}.mobile-menu__toggle-track.is-dark .mobile-menu__toggle-thumb{transform:translate(18px)}.mobile-menu .mobile-cta{color:var(--text);text-align:center;border:1px solid var(--border-lite);border-radius:8px;margin-top:6px}@media (max-width: 768px){#navbar .nav-links,#navbar .btn-talk{display:none}#navbar .hamburger{display:flex}#navbar .btn-talk-mobile{display:inline-flex}#navbar .theme-toggle{display:none}}@media (max-width: 375px){#navbar .btn-talk-mobile{display:none}.mobile-menu__links{grid-template-columns:1fr}.mobile-link__arrow{display:block}}.floating-socials-dock-spacer{display:none;height:0;pointer-events:none}.floating-socials{position:fixed;top:30%;z-index:40;display:flex;flex:0 0 auto;flex-direction:column;gap:10px}.floating-socials-left{left:20px}.floating-socials-right{right:20px;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}.floating-socials.floating-socials-right.floating-socials-right--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.social-swap{margin-top:14px;display:flex;gap:10px;align-items:center;justify-content:flex-end;will-change:transform}.social-swap--hero{width:100%;flex-direction:row;justify-content:center}.social-swap--float{margin-top:0;flex-direction:column;align-items:center;justify-content:center}.floating-socials .floating-btn,.social-swap .floating-btn{width:44px;height:44px;border-radius:999px;border:1px solid var(--border);background:var(--floating-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:background .2s,border-color .2s,color .2s,transform .2s}.floating-socials .floating-btn:hover,.social-swap .floating-btn:hover{background:var(--floating-bg-hover);border-color:var(--border-lite);color:var(--text);transform:translateY(-2px)}.floating-socials .floating-btn i,.social-swap .floating-btn i{font-size:18px;line-height:1}.social-swap .social-label{font-size:.875rem;font-weight:600;color:var(--text);white-space:nowrap}.social-swap--hero .floating-btn{width:auto;padding:0 14px;border-radius:11px;gap:10px}.social-swap--hero .floating-btn+.floating-btn:before{content:"";position:absolute;left:-6px;top:10px;bottom:10px;width:1px;background:var(--border);opacity:.9}.social-swap--float .social-label{display:none}.floating-socials .floating-btn:after,.social-swap .floating-btn:after{content:attr(data-tooltip);position:absolute;z-index:60;opacity:0;pointer-events:none;white-space:nowrap;font-size:.75rem;line-height:1;padding:8px 10px;border-radius:12px;color:var(--text);background:var(--tooltip-bg);border:1px solid var(--tooltip-border);box-shadow:var(--tooltip-shadow);transition:opacity .25s ease,transform .25s ease}.floating-socials .floating-btn:after,.social-swap .floating-btn:after{top:50%;left:calc(100% + 10px);transform:translateY(-50%) translate(-4px)}.floating-socials-right .floating-btn:after{left:auto;right:calc(100% + 10px);transform:translateY(-50%) translate(4px)}.social-swap--hero .floating-btn:after{content:none}.floating-socials .floating-btn:hover:after,.floating-socials .floating-btn:focus-visible:after,.social-swap .floating-btn:hover:after,.social-swap .floating-btn:focus-visible:after{opacity:1}.floating-socials .floating-btn:hover:after,.floating-socials .floating-btn:focus-visible:after,.social-swap .floating-btn:hover:after,.social-swap .floating-btn:focus-visible:after{transform:translateY(-50%) translate(0)}.floating-socials-right .floating-btn:hover:after,.floating-socials-right .floating-btn:focus-visible:after{transform:translateY(-50%) translate(0)}@media (max-width: 768px){.floating-socials-dock-spacer{display:block;height:calc(65px + env(safe-area-inset-bottom))}.floating-socials-left{left:50%;right:auto;top:auto;bottom:calc(6px + env(safe-area-inset-bottom));transform:translate(-50%);flex-direction:row;padding:8px 10px;border-radius:999px;border:1px solid var(--dock-border);background:var(--dock-bg);box-shadow:var(--dock-shadow);transition:opacity .25s ease,transform .25s ease,pointer-events 0s}.floating-socials-left.is-hidden{opacity:0;transform:translate(-50%) translateY(16px);pointer-events:none}.floating-socials-dock-spacer.is-hidden{height:0}.floating-socials-left .floating-btn{width:42px;height:42px;border-radius:999px;background:transparent;border-color:transparent}.floating-socials-left .floating-btn:after{left:50%;right:auto;top:auto;bottom:calc(100% + 10px);transform:translate(-50%) translateY(4px)}.floating-socials-left .floating-btn:hover:after,.floating-socials-left .floating-btn:focus-visible:after{transform:translate(-50%) translateY(0)}.floating-socials-right{right:20px;left:auto;top:30%;bottom:auto;transform:none;flex-direction:column}.social-swap--hero{justify-content:center}}.hero{min-height:calc(100svh - var(--nav-h));display:flex;align-items:center;justify-content:center;text-align:left;padding:calc(var(--nav-h) + 24px) 24px 64px;position:relative;overflow:hidden;background:var(--hero-bg)}.hero:before{content:"";position:absolute;top:-80px;left:50%;transform:translate(-50%);width:900px;height:680px;background:var(--hero-ambient);pointer-events:none}.hero .hero-inner{position:relative;z-index:1;width:100%;max-width:1152px}.hero .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}.hero .hero-content{display:flex;flex-direction:column;align-items:flex-start}.hero .hero-media{width:100%}.hero .hero-social-slot{width:100%;display:block;margin-top:14px;min-height:44px}.hero .video-card{background:var(--video-card-bg);border:1px solid var(--video-card-border);border-radius:24px;padding:16px;position:relative;overflow:hidden}.hero .video-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 30% 10%,rgba(129,140,248,.12) 0%,transparent 60%);pointer-events:none}.hero .video-aspect{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:16px;overflow:hidden;background:var(--media-bg);border:1px solid var(--border)}.hero .video-aspect iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.hero .badge{display:inline-flex;align-items:center;gap:8px;background:var(--badge-bg);border:1px solid var(--border-lite);border-radius:999px;padding:6px 16px;font-size:.8125rem;color:var(--text-muted);margin-bottom:28px;letter-spacing:.01em}.hero .badge-dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex-shrink:0;animation:pulse-green 2s ease-in-out infinite}@keyframes pulse-green{0%,to{box-shadow:0 0 #22c55e80}50%{box-shadow:0 0 0 6px #22c55e00}}.hero .hero-heading{font-size:2.25rem;font-weight:700;line-height:1;letter-spacing:-.025em;margin-bottom:1.5rem;color:var(--text)}@media (min-width: 768px){.hero .hero-heading{font-size:3.25rem}}@media (min-width: 1024px){.hero .hero-heading{font-size:3.75rem}}.hero .hero-br{display:none}@media (min-width: 768px){.hero .hero-br{display:block}}.hero .line-gradient{display:inline;background:linear-gradient(to right,#818cf8,#22d3ee,#818cf8);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 4s linear infinite}@keyframes gradient-shift{0%{background-position:0% center}to{background-position:200% center}}.hero .hero-sub{font-size:1.125rem;color:var(--text-muted);line-height:1.625;max-width:42rem;margin-bottom:2rem}@media (min-width: 768px){.hero .hero-sub{font-size:1.25rem}}.hero .hero-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-start}.hero .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 32px;background:#6366f1ba;color:#fff;border-radius:12px;font-size:1rem;font-weight:500;transition:background .2s}.hero .btn-outline{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;background:var(--btn-outline-bg);border:1px solid var(--border);border-radius:999px;font-size:1rem;font-weight:500;color:var(--text);transition:background .2s}.hero .btn-outline:hover{background:var(--btn-outline-hover-bg)}@media (max-width: 768px){.hero{text-align:center;padding-top:var(--nav-h)}.hero .hero-grid{grid-template-columns:1fr;gap:24px}.hero .hero-content{align-items:center}.hero .hero-btns{justify-content:center}}@media (max-width: 540px){.hero{padding:45px 20px 71px}.hero-btns{flex-direction:row;align-items:center;width:auto;flex-wrap:nowrap}.hero .btn-primary,.hero .btn-outline{width:auto;justify-content:center;padding:12px 18px;font-size:.9375rem;white-space:nowrap}}.services-section{position:relative;overflow:hidden;background:var(--services-bg);border-top:1px solid var(--section-tint-border);border-bottom:1px solid var(--section-tint-border)}.services-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--services-ambient);pointer-events:none}.services-section .container{position:relative;z-index:1}.services-section .services-grid{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width: 768px){.services-section .services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.services-section .services-grid{grid-template-columns:repeat(3,1fr)}}.services-section .service-card{background:var(--service-card-bg);border:1px solid var(--border);border-radius:24px;padding:32px;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:border-color .25s ease,transform .25s ease;transition-delay:var(--delay, 0s)}.services-section .service-card:after{content:"";position:absolute;inset:-120px -80px auto auto;width:260px;height:260px;background:radial-gradient(circle at 30% 30%,rgba(129,140,248,.18) 0%,transparent 60%),radial-gradient(circle at 60% 55%,rgba(34,211,238,.12) 0%,transparent 62%);opacity:0;transform:translate3d(16px,-8px,0);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.services-section .service-card:hover{border-color:var(--border-lite);transform:translateY(-3px);transition-delay:0s}.services-section .service-card:hover:after{opacity:1;transform:translateZ(0)}.services-section .service-card.is-open{border-color:var(--border-lite);transform:translateY(0);transition-delay:0s;grid-column:1 / -1}.services-section .service-card.is-open:after{opacity:1;transform:translateZ(0)}.services-section .service-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.services-section .service-lead{display:flex;align-items:center;gap:12px;min-width:0}.services-section .service-thumb{width:64px;height:64px;border-radius:14px;border:1px solid var(--border);background:var(--service-icon-bg);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto}.services-section .service-thumb img{width:100%;height:100%;object-fit:contain;padding:10px}.services-section .service-thumb img.theme-dark,html[data-theme=dark] .services-section .service-thumb img.theme-light{display:none}html[data-theme=dark] .services-section .service-thumb img.theme-dark{display:block}.services-section .service-toggle{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;border:1px solid var(--border);background:var(--hover-bg);color:var(--text-muted);font-size:.875rem;font-weight:600;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.services-section .service-toggle:hover{background:var(--hover-bg-strong);border-color:var(--border-lite)}.services-section .service-toggle:active{transform:translateY(1px)}.services-section .service-toggle:focus-visible{outline:3px solid rgba(129,140,248,.28);outline-offset:2px}.services-section .service-toggle i{font-size:12px;transition:transform .25s ease}.services-section .service-card.is-open .service-toggle i{transform:rotate(180deg)}.services-section .service-icon{width:64px;height:64px;border-radius:16px;background:var(--service-icon-bg);display:flex;align-items:center;justify-content:center;margin-bottom:0;flex-shrink:0;transition:transform .2s}.services-section .service-icon i{font-size:30px;line-height:1}.services-section .service-card:hover .service-icon{transform:scale(1.1)}.services-section .icon-blue{color:#818cf8}.services-section .icon-cyan{color:#22d3ee}.services-section .icon-purple{color:#c084fc}.services-section .service-card h3{font-size:1.25rem;font-weight:700;color:var(--text);margin-bottom:12px;letter-spacing:-.015em}.services-section .service-card p{font-size:.875rem;color:var(--service-text);line-height:1.625}.services-section .service-summary{margin-top:-2px}.services-section .service-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .35s cubic-bezier(.22,1,.36,1),opacity .2s ease;pointer-events:none}.services-section .service-card:not(.is-open) .service-details{transition:none}.services-section .service-details-inner{overflow:hidden;border-top:1px solid var(--border);padding-top:18px;margin-top:8px;cursor:default}.services-section .service-card.is-open .service-details{grid-template-rows:1fr;opacity:1;pointer-events:auto}.services-section .service-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.services-section .service-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--badge-bg);color:var(--text-muted);font-size:.75rem;font-weight:600;line-height:1}.services-section .service-points{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-direction:column;gap:10px}.services-section .service-points li{position:relative;padding-left:16px;color:var(--text-muted);font-size:.875rem;line-height:1.6}.services-section .service-points li:before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:99px;background:var(--accent)}.services-section .service-point-title{color:var(--text);font-weight:700}.services-section .service-meta{display:grid;gap:10px}.services-section .service-meta-row{display:grid;grid-template-columns:160px 1fr;gap:10px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--hover-bg)}.services-section .service-meta-k{color:var(--text);font-weight:700;font-size:.8125rem}.services-section .service-meta-v{color:var(--text-muted);font-size:.8125rem;line-height:1.55}@media (max-width: 420px){.services-section .service-meta-row{grid-template-columns:1fr}}.portfolio-section{position:relative;overflow:hidden;background:var(--portfolio-bg)}.portfolio-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--portfolio-ambient);pointer-events:none}.portfolio-section .container{position:relative;z-index:1}.portfolio-section .portfolio-actions{display:flex;justify-content:flex-end;margin-top:18px}.portfolio-section .view-all{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--accent);white-space:nowrap;transition:gap .2s}.portfolio-section .view-all:hover{gap:10px}.portfolio-section .projects-grid{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width: 768px){.portfolio-section .projects-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.portfolio-section .projects-grid{grid-template-columns:repeat(3,1fr)}}.portfolio-section .project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;overflow:hidden;cursor:pointer;transition:border-color .25s ease,transform .25s ease;transition-delay:var(--delay, 0s)}.portfolio-section .project-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-section .project-card:hover{border-color:var(--border-lite);transform:translateY(-4px);transition-delay:0s}.portfolio-section .project-img-wrap{width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--border)}.portfolio-section .project-img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.portfolio-section .project-img--top{object-position:top}.portfolio-section .project-card:hover .project-img{transform:scale(1.05)}.portfolio-section .project-footer{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.portfolio-section .project-info h4{font-size:.875rem;font-weight:700;color:var(--text);letter-spacing:-.01em;margin-bottom:3px}.portfolio-section .project-info span{font-size:.75rem;color:var(--text-muted)}.portfolio-section .project-arrow{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-lite);background:transparent;padding:0;font:inherit;display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.portfolio-section .project-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-section .project-card:hover .project-arrow,.portfolio-section .project-arrow:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translate(1px,-1px)}.testimonials-section{position:relative;overflow:hidden;background:var(--testimonials-bg);border-top:1px solid var(--section-tint-border);border-bottom:1px solid var(--section-tint-border)}.testimonials-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--testimonials-ambient);pointer-events:none}.testimonials-section .container{position:relative;z-index:1}.testimonials-section .testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonials-section .testimonials-actions{display:flex;justify-content:flex-end;margin-top:18px}.testimonials-section .view-all{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--accent);white-space:nowrap;transition:gap .2s}.testimonials-section .view-all:hover{gap:10px}.testimonials-section .testimonial-card{background:var(--testimonial-card-bg);border:1px solid var(--border);border-radius:24px;padding:32px;position:relative;transition:border-color .25s ease,transform .25s ease;transition-delay:var(--delay, 0s)}.testimonials-section .testimonial-card:hover{border-color:var(--border-lite);transform:translateY(-3px);transition-delay:0s}.testimonials-section .quote-icon{position:absolute;top:32px;right:32px;width:40px;height:40px;color:var(--quote-color)}.testimonials-section .stars{display:flex;gap:4px;margin-bottom:24px;color:#818cf8}.testimonials-section .stars svg{width:16px;height:16px;fill:currentColor}.testimonials-section .testimonial-text{font-size:.9375rem;color:var(--testimonial-text);line-height:1.625;margin-bottom:32px;position:relative;z-index:1}.testimonials-section .testimonial-author{display:flex;align-items:center;gap:16px}.testimonials-section .author-avatar{width:48px;height:48px;border-radius:50%;border:1px solid var(--avatar-border);background:var(--avatar-bg);flex-shrink:0;overflow:hidden}.testimonials-section .testimonial-author strong{display:block;font-size:.875rem;font-weight:600;color:var(--text)}.testimonials-section .testimonial-author span{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:1px}@media (max-width: 768px){.testimonials-section .testimonials-grid{grid-template-columns:1fr}}.footer{position:relative;overflow:visible;background:var(--bg-card);padding:15px 24px;border-top:1px solid var(--border)}.footer:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:transparent;pointer-events:none}.footer .container{position:relative;z-index:1}.footer .footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer .footer-logo{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.footer .footer-copy{font-size:.8125rem;color:var(--text-dim)}.footer .footer-socials{display:flex;gap:8px;flex-wrap:wrap}.footer .footer-socials a{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);position:relative;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:color .2s,border-color .2s,background .2s}.footer .footer-socials a:after{content:attr(data-tooltip);position:absolute;z-index:60;opacity:0;pointer-events:none;white-space:nowrap;font-size:.75rem;line-height:1;padding:8px 10px;border-radius:12px;color:var(--text);background:var(--tooltip-bg);border:1px solid var(--tooltip-border);box-shadow:var(--tooltip-shadow);transition:opacity .25s ease,transform .25s ease;left:50%;bottom:calc(100% + 10px);transform:translate(-50%) translateY(4px)}.footer .footer-socials a:hover:after,.footer .footer-socials a:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.footer .footer-socials i{font-size:16px;line-height:1}.footer .footer-socials a:hover{color:var(--text);border-color:var(--border-lite);background:var(--hover-bg)}@media (max-width: 768px){.footer .footer-inner{flex-direction:column;align-items:center;text-align:center}.footer .footer-socials{justify-content:center}}.portfolio-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .18s ease}.portfolio-modal.is-open{opacity:1;pointer-events:auto}.portfolio-modal__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--modal-overlay)}.portfolio-modal__panel{position:relative;width:min(860px,100%);max-height:min(82svh,860px);overflow:hidden;border-radius:20px;border:1px solid var(--modal-border);background:var(--modal-bg);box-shadow:var(--modal-shadow)}.portfolio-modal__panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(900px 420px at 18% 0%,rgba(129,140,248,.16),transparent 55%),radial-gradient(800px 420px at 92% 12%,rgba(34,211,238,.12),transparent 60%);pointer-events:none}.portfolio-modal__header{position:sticky;top:0;z-index:2;padding:18px 18px 14px;display:flex;gap:14px;align-items:center;justify-content:space-between;background:var(--modal-header-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.portfolio-modal__titleWrap{min-width:0}.portfolio-modal__title{font-size:1.125rem;font-weight:800;letter-spacing:-.02em;color:var(--text);line-height:1.2}.portfolio-modal__subtitle{margin-top:4px;font-size:.875rem;color:var(--text-muted);line-height:1.4}.portfolio-modal__close{width:40px;height:40px;border-radius:14px;border:1px solid var(--border);background:var(--modal-close-bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.portfolio-modal__close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.portfolio-modal__close:active{transform:translateY(0)}.portfolio-modal__close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-modal__nav{display:inline-flex;align-items:center;gap:4px;margin-left:auto}.portfolio-modal__nav-btn{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:var(--modal-close-bg);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.portfolio-modal__nav-btn:hover:not(:disabled){background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text);transform:translateY(-1px)}.portfolio-modal__nav-btn:active:not(:disabled){transform:translateY(0)}.portfolio-modal__nav-btn:disabled{opacity:.35;cursor:default}.portfolio-modal__nav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-modal__nav-counter{min-width:40px;text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);-webkit-user-select:none;user-select:none}.portfolio-modal__loader{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--modal-item-bg);border-radius:16px;z-index:1}.portfolio-modal__spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:pm-spin .7s linear infinite}@keyframes pm-spin{to{transform:rotate(360deg)}}.portfolio-modal__img--loading{opacity:0}.portfolio-modal__body{position:relative;z-index:1;padding:18px 18px 20px;overflow:auto;max-height:calc(min(82svh,860px) - 72px)}.portfolio-modal__media{display:grid;gap:12px;margin-bottom:14px}.portfolio-modal__main{position:relative;border-radius:16px;border:1px solid var(--border);background:var(--modal-item-bg);overflow:hidden}.portfolio-modal__img{width:100%;height:auto;display:block}.portfolio-modal__thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.portfolio-modal__thumb{border:1px solid var(--border);background:var(--modal-item-bg);border-radius:12px;padding:0;overflow:hidden;cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease}.portfolio-modal__thumb:hover{border-color:var(--border-lite);transform:translateY(-1px)}.portfolio-modal__thumb.is-active{border-color:#818cf88c;background:var(--modal-action-bg-hover)}.portfolio-modal__thumb:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-modal__thumb img{width:100%;height:56px;object-fit:cover;display:block}.portfolio-modal__desc{font-size:.95rem;color:var(--text-muted);line-height:1.7;white-space:pre-line}.portfolio-modal__tags{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.portfolio-modal__tag{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;border:1px solid var(--border);background:var(--modal-item-bg);color:var(--text);font-size:.75rem;font-weight:700;line-height:1}.portfolio-modal__actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.portfolio-modal__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--modal-action-bg);color:var(--text);font-size:.875rem;font-weight:700;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.portfolio-modal__btn:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.portfolio-modal__btn:active{transform:translateY(0)}.portfolio-modal__btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio-modal__btn--primary{border-color:#818cf859}@media (max-width: 520px){.portfolio-modal{padding:14px}.portfolio-modal__panel{border-radius:16px}.portfolio-modal__header{padding:14px 14px 12px}.portfolio-modal__body{padding:14px 14px 57px}.portfolio-modal__title{font-size:15px}.portfolio-modal__thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}.contact-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;background:var(--modal-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.contact-popup-overlay[hidden]{display:none!important}.contact-popup{width:100%;max-width:560px;max-height:calc(100svh - 48px);display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:var(--modal-bg);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow)}.contact-popup-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:9px 18px;border-bottom:1px solid var(--modal-border);background:var(--modal-header-bg)}.contact-popup-title{font-size:1rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.contact-popup-close{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;touch-action:manipulation;cursor:pointer;border:1px solid var(--modal-border);background:var(--modal-close-bg);color:var(--text-muted);transition:background .2s,border-color .2s,color .2s}.contact-popup-close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text)}.contact-popup-body{flex:1;min-height:0;overflow:auto;padding:14px 14px 16px}.contact-popup .contact-list{display:flex;flex-direction:column;gap:10px}.contact-popup .contact-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:16px;background:var(--modal-item-bg)}.contact-popup .contact-item[data-open-wechat-popup],.contact-popup .contact-item[data-open-whatsapp-popup]{cursor:pointer}.contact-popup .contact-meta{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.contact-popup .contact-meta>div{min-width:0;overflow:hidden}.contact-popup .contact-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--modal-border);background:var(--modal-icon-bg);color:var(--text);flex-shrink:0}.contact-popup .contact-icon i{font-size:18px;line-height:1}.contact-popup .contact-name{font-size:.9rem;font-weight:700;color:var(--text)}.contact-popup .contact-value{font-size:.8125rem;color:var(--text-muted);margin-top:2px;overflow-wrap:anywhere;word-break:break-word}.contact-popup .contact-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.contact-popup .contact-action{border-radius:12px;border:1px solid var(--modal-border);background:var(--modal-action-bg);color:var(--text);transition:background .2s,border-color .2s,transform .2s}.contact-popup .contact-link{padding:10px 12px;font-size:.8125rem;font-weight:600;white-space:nowrap;opacity:1;background:var(--bg-card);cursor:pointer}.contact-popup .contact-copy{width:40px;height:40px;display:grid;place-items:center;cursor:pointer}.contact-popup .contact-copy i{font-size:16px;line-height:1}.contact-popup .contact-link:hover,.contact-popup .contact-copy:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.contact-popup .contact-link:hover{background:var(--border)}@media (max-width: 540px){.contact-popup-overlay{padding:14px}.contact-popup{max-height:calc(100svh - 28px)}.contact-popup .contact-item{flex-direction:column;align-items:stretch}.contact-popup .contact-actions{justify-content:space-between}.contact-popup .contact-link{flex:1;text-align:center}}.wechat-popup-overlay,.whatsapp-popup-overlay,.email-popup-overlay,.signal-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;background:var(--modal-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.wechat-popup{width:100%;max-width:420px;max-height:calc(100svh - 48px);border-radius:18px;overflow:hidden;background:var(--modal-bg);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow);display:flex;flex-direction:column}.wechat-popup-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--modal-border);background:var(--modal-header-bg)}.wechat-popup-title{font-size:.98rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.wechat-popup-close{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;touch-action:manipulation;cursor:pointer;border:1px solid var(--modal-border);background:var(--modal-close-bg);color:var(--text-muted);transition:background .2s,border-color .2s,color .2s}.wechat-popup-close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text)}.wechat-popup-body{padding:14px;display:grid;gap:12px;overflow:auto}.wechat-popup-row{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;background:var(--modal-item-bg)}.wechat-popup-meta{min-width:0}.wechat-popup-label{font-size:.78rem;font-weight:700;color:var(--text-muted)}.wechat-popup-value{font-size:.95rem;font-weight:800;color:var(--text);letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-word}.wechat-popup-copy{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--modal-border);background:var(--modal-action-bg);color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.wechat-popup-copy:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.wechat-popup-qr{border-radius:16px;overflow:hidden;background:var(--modal-item-bg);padding:12px;display:flex;justify-content:center}.wechat-popup-qr img{width:min(220px,100%);height:auto;display:block}.whatsapp-popup{width:100%;max-width:460px;max-height:calc(100svh - 48px);border-radius:18px;overflow:hidden;background:var(--modal-bg);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow);display:flex;flex-direction:column}.whatsapp-popup-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--modal-border);background:var(--modal-header-bg)}.whatsapp-popup-title{font-size:.98rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.whatsapp-popup-close{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;touch-action:manipulation;cursor:pointer;border:1px solid var(--modal-border);background:var(--modal-close-bg);color:var(--text-muted);transition:background .2s,border-color .2s,color .2s}.whatsapp-popup-close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text)}.whatsapp-popup-body{padding:14px;display:grid;gap:12px;overflow:auto}.whatsapp-popup-qr{border-radius:16px;overflow:hidden;background:var(--modal-item-bg);padding:12px;display:flex;justify-content:center}.whatsapp-popup-qr img{width:min(220px,100%);height:auto;display:block}.whatsapp-popup-row{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;background:var(--modal-item-bg)}.whatsapp-popup-meta{min-width:0}.whatsapp-popup-label{font-size:.78rem;font-weight:700;color:var(--text-muted)}.whatsapp-popup-value{font-size:.95rem;font-weight:800;color:var(--text);letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-word}.whatsapp-popup-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}.whatsapp-popup-link{flex:1;padding:10px 12px;font-size:.8125rem;font-weight:700;border-radius:12px;border:1px solid var(--modal-border);background:var(--bg-card);color:var(--text);white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,transform .2s;text-align:center}.whatsapp-popup-link:hover{background:var(--border);border-color:var(--border-lite);transform:translateY(-1px)}.whatsapp-popup-copy{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--modal-border);background:var(--modal-action-bg);color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.whatsapp-popup-copy:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.email-popup{width:100%;max-width:420px;max-height:calc(100svh - 48px);border-radius:18px;overflow:hidden;background:var(--modal-bg);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow);display:flex;flex-direction:column}.email-popup-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--modal-border);background:var(--modal-header-bg)}.email-popup-title{font-size:.98rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.email-popup-close{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;touch-action:manipulation;cursor:pointer;border:1px solid var(--modal-border);background:var(--modal-close-bg);color:var(--text-muted);transition:background .2s,border-color .2s,color .2s}.email-popup-close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text)}.email-popup-body{padding:14px;display:grid;gap:12px;overflow:auto}.email-popup-row{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;border:1px solid var(--modal-border);background:var(--modal-item-bg)}.email-popup-meta{min-width:0}.email-popup-label{font-size:.78rem;font-weight:700;color:var(--text-muted)}.email-popup-value{font-size:.95rem;font-weight:800;color:var(--text);letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-word}.email-popup-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}.email-popup-link{flex:1;padding:10px 12px;font-size:.8125rem;font-weight:700;border-radius:12px;border:1px solid var(--modal-border);background:var(--bg-card);color:var(--text);white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,transform .2s;text-align:center}.email-popup-link:hover{background:var(--border);border-color:var(--border-lite);transform:translateY(-1px)}.email-popup-copy{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--modal-border);background:var(--modal-action-bg);color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.email-popup-copy:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}.signal-popup{width:100%;max-width:420px;max-height:calc(100svh - 48px);border-radius:18px;overflow:hidden;background:var(--modal-bg);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow);display:flex;flex-direction:column}.signal-popup-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--modal-border);background:var(--modal-header-bg)}.signal-popup-title{font-size:.98rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.signal-popup-close{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;touch-action:manipulation;cursor:pointer;border:1px solid var(--modal-border);background:var(--modal-close-bg);color:var(--text-muted);transition:background .2s,border-color .2s,color .2s}.signal-popup-close:hover{background:var(--modal-close-bg-hover);border-color:var(--border-lite);color:var(--text)}.signal-popup-body{padding:14px;display:grid;gap:12px;overflow:auto}.signal-popup-row{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:16px;background:var(--modal-item-bg)}.signal-popup-meta{min-width:0}.signal-popup-label{font-size:.78rem;font-weight:700;color:var(--text-muted)}.signal-popup-value{font-size:.95rem;font-weight:800;color:var(--text);letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-word}.signal-popup-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}.signal-popup-link{flex:1;padding:10px 12px;font-size:.8125rem;font-weight:700;border-radius:12px;border:1px solid var(--modal-border);background:var(--bg-card);color:var(--text);white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,transform .2s;text-align:center}.signal-popup-link:hover{background:var(--border);border-color:var(--border-lite);transform:translateY(-1px)}.signal-popup-copy{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--modal-border);background:var(--modal-action-bg);color:var(--text);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.signal-popup-copy:hover{background:var(--modal-action-bg-hover);border-color:var(--border-lite);transform:translateY(-1px)}@media (max-width: 540px){.wechat-popup-overlay,.whatsapp-popup-overlay,.email-popup-overlay,.signal-popup-overlay{padding:14px}}.section-sticky-label{display:none}@media (max-width: 768px){.section-sticky-label{display:block;position:fixed;top:var(--nav-h);left:0;right:0;z-index:45;padding:5px 20px;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility 0s linear .18s;transform:translateZ(0);will-change:opacity}.section-sticky-label--visible{opacity:1;visibility:visible;transition:opacity .18s ease,visibility 0s linear 0s}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #fafafa;--bg-section: #f4f4f5;--bg-card: #ffffff;--border: #e4e4e7;--border-lite: #d4d4d8;--text: #09090b;--text-muted: #52525b;--text-dim: #71717a;--green: #22c55e;--accent: #818cf8;--scrollbar-thumb: var(--border-lite);--nav-bg: rgba(250, 250, 250, .8);--nav-bg-scrolled: rgba(250, 250, 250, .95);--menu-bg: rgba(250, 250, 250, .96);--nav-h: 60px;--hover-bg: rgba(9, 9, 11, .04);--hover-bg-strong: rgba(9, 9, 11, .08);--pill-bg: #09090b;--pill-text: #fafafa;--pill-hover-bg: #18181b;--floating-bg: #ffffff;--floating-bg-hover: #ffffff;--tooltip-bg: rgba(250, 250, 250, .98);--tooltip-border: var(--border);--tooltip-shadow: 0 18px 40px rgba(0, 0, 0, .12);--section-tint-bg: rgba(9, 9, 11, .02);--section-tint-border: rgba(9, 9, 11, .06);--video-card-bg: rgba(255, 255, 255, .75);--video-card-border: rgba(9, 9, 11, .08);--media-bg: #ffffff;--badge-bg: rgba(9, 9, 11, .04);--btn-outline-bg: var(--bg-card);--btn-outline-hover-bg: var(--bg-section);--service-card-bg: var(--bg-card);--service-icon-bg: var(--bg-section);--service-text: var(--text-muted);--testimonial-card-bg: var(--bg-card);--quote-color: var(--border-lite);--testimonial-text: var(--text-muted);--avatar-border: var(--border);--avatar-bg: var(--bg-section);--dock-bg: rgba(250, 250, 250, .9);--dock-border: rgba(9, 9, 11, .1);--dock-shadow: 0 20px 50px rgba(0, 0, 0, .12);--modal-overlay: rgba(0, 0, 0, .35);--modal-bg: #ffffff;--modal-border: rgba(9, 9, 11, .1);--modal-shadow: 0 30px 80px rgba(0, 0, 0, .18);--modal-header-bg: rgba(255, 255, 255, .96);--modal-item-bg: rgba(9, 9, 11, .03);--modal-icon-bg: rgba(9, 9, 11, .04);--modal-close-bg: rgba(9, 9, 11, .04);--modal-close-bg-hover: rgba(9, 9, 11, .08);--modal-action-bg: var(--bg-card);--modal-action-bg-hover: var(--bg-section);--hero-bg: radial-gradient(ellipse at 50% 0%, rgba(129, 140, 248, .18) 0%, transparent 60%), radial-gradient(ellipse at 18% 22%, rgba(34, 211, 238, .14) 0%, transparent 55%), linear-gradient(to bottom, var(--bg) 0%, var(--bg-section) 100%);--hero-ambient: radial-gradient(ellipse at 50% 0%, rgba(129,140,248,.12) 0%, transparent 60%);--services-bg: linear-gradient(180deg, var(--bg-section) 0%, var(--bg) 65%);--services-ambient: radial-gradient(ellipse at 14% 18%, rgba(34, 211, 238, .18) 0%, transparent 55%), radial-gradient(ellipse at 86% 6%, rgba(129, 140, 248, .12) 0%, transparent 60%);--portfolio-bg: linear-gradient(180deg, var(--bg) 0%, #ffffff 100%);--portfolio-ambient: radial-gradient(ellipse at 88% 12%, rgba(129, 140, 248, .16) 0%, transparent 60%), radial-gradient(ellipse at 18% 80%, rgba(192, 132, 252, .1) 0%, transparent 55%);--testimonials-bg: linear-gradient(180deg, var(--bg) 0%, var(--bg-section) 100%);--testimonials-ambient: radial-gradient(ellipse at 84% 18%, rgba(192, 132, 252, .16) 0%, transparent 55%), radial-gradient(ellipse at 10% 85%, rgba(34, 211, 238, .1) 0%, transparent 60%);--footer-bg: linear-gradient(180deg, var(--bg-section) 0%, var(--bg) 100%);--footer-ambient: radial-gradient(ellipse at 12% 30%, rgba(129, 140, 248, .1) 0%, transparent 55%), radial-gradient(ellipse at 82% 40%, rgba(34, 211, 238, .08) 0%, transparent 55%)}html[data-theme=dark]{--bg: #09090b;--bg-section: #0f0f11;--bg-card: #18181b;--border: #27272a;--border-lite: #3f3f46;--text: #fafafa;--text-muted: #a1a1aa;--text-dim: #71717a;--accent: #818cf8;--scrollbar-thumb: #3f3f46;--nav-bg: rgba(9, 9, 11, .8);--nav-bg-scrolled: rgba(9, 9, 11, .95);--menu-bg: rgba(9, 9, 11, .96);--hover-bg: rgba(255, 255, 255, .04);--hover-bg-strong: rgba(255, 255, 255, .08);--pill-bg: #ffffff;--pill-text: #000000;--pill-hover-bg: #e5e7eb;--floating-bg: rgba(9, 9, 11, .65);--floating-bg-hover: rgba(24, 24, 27, .9);--tooltip-bg: rgba(9, 9, 11, .92);--tooltip-border: rgba(38, 38, 38, .9);--tooltip-shadow: 0 18px 40px rgba(0, 0, 0, .45);--section-tint-bg: rgba(23, 23, 23, .5);--section-tint-border: rgba(38, 38, 38, .5);--video-card-bg: rgba(23, 23, 23, .5);--video-card-border: rgba(38, 38, 38, .5);--media-bg: #0a0a0a;--badge-bg: rgba(39, 39, 42, .5);--btn-outline-bg: #171717;--btn-outline-hover-bg: #262626;--service-card-bg: #171717;--service-icon-bg: #0a0a0a;--service-text: #a3a3a3;--testimonial-card-bg: #0a0a0a;--quote-color: #262626;--testimonial-text: #d4d4d4;--avatar-border: #404040;--avatar-bg: #262626;--dock-bg: rgba(9, 9, 11, .88);--dock-border: rgba(38, 38, 38, .85);--dock-shadow: 0 20px 50px rgba(0, 0, 0, .5);--modal-overlay: rgba(0, 0, 0, .55);--modal-bg: rgba(9, 9, 11, .92);--modal-border: rgba(38, 38, 38, .9);--modal-shadow: 0 30px 80px rgba(0, 0, 0, .55);--modal-header-bg: rgba(9, 9, 11, .96);--modal-item-bg: rgba(24, 24, 27, .45);--modal-icon-bg: rgba(9, 9, 11, .45);--modal-close-bg: rgba(24, 24, 27, .6);--modal-close-bg-hover: rgba(24, 24, 27, .9);--modal-action-bg: rgba(9, 9, 11, .35);--modal-action-bg-hover: rgba(24, 24, 27, .8);--hero-bg: transparent;--hero-ambient: radial-gradient(ellipse at 50% 0%, rgba(129,140,248,.12) 0%, transparent 60%);--services-bg: var(--section-tint-bg);--services-ambient: transparent;--portfolio-bg: transparent;--portfolio-ambient: transparent;--testimonials-bg: var(--section-tint-bg);--testimonials-ambient: transparent;--footer-bg: transparent;--footer-ambient: transparent}html{background:var(--bg)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--bg);line-height:1.5;min-height:100svh;overflow-x:hidden}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}section{padding:96px 24px}.container{max-width:1200px;margin:0 auto}.section-header{margin-bottom:64px}.section-header.centered{text-align:center}.section-header.centered .section-desc{margin:0 auto}.section-title{font-size:1.875rem;font-weight:700;letter-spacing:-.025em;color:var(--text);margin-bottom:12px;line-height:1.2}@media (min-width: 768px){.section-title{font-size:2.25rem}}.section-desc{font-size:1rem;color:var(--text-muted);line-height:1.625;max-width:36rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease var(--delay, 0s),transform .6s ease var(--delay, 0s)}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){:root{--nav-h: 65px}}@media (max-width: 540px){section{padding:64px 20px}}
