:root{--base:#0e1030;--surface:#141742;--surface-2:#1b1f52;--border:#2e3470;--border-lit:#4a3f9e;--accent:#2b6bf0;--accent-lit:#5b87ff;--sky:#30b4f0;--violet:#6a4bd8;--magenta:#c078f0;--text:#e9e9f7;--text-muted:#a6a8c8;--text-dim:#8e90b2;--green:#10b981;--danger:#f87171;--base-rgb:14, 16, 48;--accent-rgb:43, 107, 240;--sky-rgb:48, 180, 240;--violet-rgb:106, 75, 216;--magenta-rgb:192, 120, 240;--green-rgb:16, 185, 129;--danger-rgb:248, 113, 113;--grad-accent:linear-gradient(100deg, var(--accent) 0%, var(--violet) 55%, var(--magenta) 100%);--card-bg:#ffffff08;--input-bg:#ffffff0a;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Space Grotesk", "Inter", sans-serif;--radius:12px;--radius-lg:20px;--shadow:0 4px 24px #0000004d;--shadow-glow:0 0 40px rgba(var(--accent-rgb), .15);--accent-glow:rgba(var(--accent-rgb), .32);--transition:.2s ease}.section-light{--base:#fff;--surface:#f3f5fd;--surface-2:#fff;--border:#dee3f6;--border-lit:#a9b5ee;--accent:#2b6bf0;--accent-lit:#1b4fc4;--sky:#12628f;--violet:#5a36c4;--magenta:#9b3fd0;--text:#12142e;--text-muted:#494e73;--text-dim:#5f6485;--green:#067a56;--danger:#c41f38;--base-rgb:255, 255, 255;--sky-rgb:18, 98, 143;--violet-rgb:90, 54, 196;--magenta-rgb:155, 63, 208;--green-rgb:6, 122, 86;--danger-rgb:196, 31, 56;--card-bg:#fff;--input-bg:#fff;--shadow:0 4px 24px #12142e1a;--shadow-glow:0 0 40px rgba(var(--accent-rgb), .12);--accent-glow:rgba(var(--accent-rgb), .28);z-index:2;background:var(--surface);color:var(--text);position:relative}.section-light .feature-card,.section-light .project-card,.section-light .pricing-card,.section-light .contact-form-wrap{box-shadow:0 1px 3px #12142e0f,0 8px 24px #12142e0d}.section-light .contact-form-wrap{background:var(--surface-2)}.section-light .feature-icon,.section-light .contact-info-icon,.section-light .about-inline-icon,.section-light .browser-url svg{color:var(--accent)}@keyframes slideFromRight{0%{opacity:0;transform:translate(70px)}to{opacity:1;transform:translate(0)}}@keyframes slideFromLeft{0%{opacity:0;transform:translate(-70px)}to{opacity:1;transform:translate(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes heroLogoEnter{0%{opacity:0;transform:translateY(-16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes floatLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes mobileMenuIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileItemIn{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalPanelIn{0%{opacity:0;transform:translateY(52px)scale(.93)}60%{opacity:1;transform:translateY(-5px)scale(1.006)}80%{transform:translateY(2px)scale(.999)}to{transform:translateY(0)scale(1)}}@keyframes accentBarIn{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes revealFromRight{0%{opacity:0;transform:translate(80px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes revealFromLeft{0%{opacity:0;transform:translate(-80px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes shimmerSweep{0%{transform:translate(-110%)skew(-12deg)}to{transform:translate(220%)skew(-12deg)}}@media (prefers-reduced-motion:reduce){.hero-line,.hero-sub,.hero-actions,.hero-logo,.modal-overlay,.contact-modal,.legal-modal,.contact-modal:before,.contact-modal-header .section-label,.contact-modal-title,.contact-modal-sub,.contact-modal form{opacity:1!important;animation:none!important;transform:none!important}[data-reveal]{opacity:1!important;transition:none!important;transform:none!important}.btn-primary:after{display:none!important}.modal-close:hover{transform:none!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,#root{max-width:100%;overflow-x:hidden}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background-color:var(--base);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--sky);background:rgba(var(--sky-rgb), .12);border:1px solid rgba(var(--sky-rgb), .25);border-radius:100px;margin-bottom:20px;padding:6px 14px;font-size:.75rem;font-weight:600;display:inline-block}.section-headline{font-family:var(--font-display);color:var(--text);margin-bottom:16px;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.2}.section-subheadline{color:var(--text-muted);max-width:640px;font-size:1.1rem;line-height:1.7}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius);transition:background var(--transition), transform var(--transition), box-shadow var(--transition);align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff38 50%,#0000 60%);position:absolute;inset:0;transform:translate(-110%)}.btn-primary:hover{background:var(--accent-lit);box-shadow:0 8px 28px var(--accent-glow), 0 0 0 1px rgba(var(--accent-rgb), .42);transform:translateY(-1px)}.btn-primary:hover:after{animation:.55s forwards shimmerSweep}.btn-secondary{color:var(--sky);border-radius:var(--radius);border:1px solid rgba(var(--sky-rgb), .3);transition:background var(--transition), border-color var(--transition);background:0 0;align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-secondary:hover{background:rgba(var(--sky-rgb), .08);border-color:var(--sky)}.check-icon{width:18px;height:18px;color:var(--sky);flex-shrink:0}.header{z-index:100;transition:background var(--transition), backdrop-filter var(--transition), border-color var(--transition);border-bottom:1px solid #0000;max-width:100vw;position:fixed;top:0;left:0;right:0;overflow:hidden}.header.scrolled{background:rgba(var(--base-rgb), .92);-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--border)}.header-inner{justify-content:flex-start;align-items:center;gap:12px;min-width:0;height:70px;display:flex}.logo{flex-shrink:0;align-items:center;min-width:0;margin-right:36px;transition:transform .22s;display:flex}.logo:hover{transform:translateY(-1px)}.logo-text{font-family:var(--font-display);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem;font-weight:700;transition:color .22s,text-shadow .22s;overflow:hidden}.logo:hover .logo-text{color:var(--sky);text-shadow:0 0 22px rgba(var(--sky-rgb), .55)}.nav-links{align-items:center;gap:36px;margin-right:auto;display:flex}.nav-links a,.nav-link-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.9rem;font-weight:500;transition:color .22s;position:relative}.nav-links a:after,.nav-link-btn:after{content:"";background:var(--grad-accent);border-radius:1px;width:0;height:1.5px;transition:width .3s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-5px;left:0}.nav-links a:hover,.nav-link-btn:hover{color:var(--text)}.nav-links a:hover:after,.nav-link-btn:hover:after{width:100%}.header-actions{flex-shrink:0;align-items:center;gap:16px;margin-left:32px;display:flex}.lang-toggle{border:1px solid var(--border);background:#ffffff0f;border-radius:100px;gap:2px;padding:3px;display:flex}.lang-btn{letter-spacing:.04em;color:var(--text-muted);transition:background var(--transition), color var(--transition);background:0 0;border-radius:100px;padding:5px 11px;font-size:.78rem;font-weight:600}.lang-btn.active{background:var(--accent);color:#fff}.menu-btn{color:var(--text);background:0 0;padding:8px;display:none}@media (width<=768px){.header .container{padding:0 16px}.nav-links{display:none}.menu-btn{display:flex}.logo{flex:auto;min-width:0;max-width:calc(100% - 124px);margin-right:0}.header-actions{flex-shrink:0;gap:6px;margin-left:auto}.header-actions .lang-toggle{flex-shrink:0;display:flex}.header-actions .lang-btn{padding:4px 9px;font-size:.72rem}.header-actions .btn-primary,.header-actions .user-menu{display:none}}.mobile-menu{background:linear-gradient(180deg, rgba(var(--base-rgb),.97) 0%, #1b1f52f7 100%);-webkit-backdrop-filter:blur(20px);z-index:99;border-top:1px solid var(--border);overscroll-behavior:contain;flex-direction:column;gap:4px;width:100%;max-width:100vw;padding:20px 16px 32px;animation:.3s cubic-bezier(.22,1,.36,1) both mobileMenuIn;display:flex;position:fixed;inset:70px 0 0;overflow-x:hidden}.mobile-menu a,.mobile-menu .nav-link-btn{color:var(--text-muted);border-radius:var(--radius);cursor:pointer;text-align:left;opacity:0;background:0 0;border:none;width:100%;padding:14px 16px;font-family:inherit;font-size:1.1rem;font-weight:600;transition:color .2s,background .2s;animation:.38s cubic-bezier(.22,1,.36,1) both mobileItemIn}.mobile-menu a:hover,.mobile-menu .nav-link-btn:hover{color:var(--text);background:rgba(var(--accent-rgb),.1)}.mobile-menu>:first-child{animation-delay:60ms}.mobile-menu>:nth-child(2){animation-delay:.12s}.mobile-menu>:nth-child(3){animation-delay:.18s}.mobile-menu>:nth-child(4){animation-delay:.24s}.mobile-menu>:nth-child(5){animation-delay:.3s}.mobile-menu>:nth-child(6){animation-delay:.36s}.mobile-menu .btn-primary{box-sizing:border-box;justify-content:center;width:100%;margin-top:12px;animation-delay:.22s}.hero{align-items:center;min-height:60vh;padding:110px 0 30px;display:flex;position:relative;overflow:hidden}@media (width<=768px){.hero{min-height:auto;padding:118px 0 24px}}.hero-bg{z-index:0;background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(var(--violet-rgb), .12) 0%, transparent 70%), linear-gradient(to bottom, rgba(var(--base-rgb), .7) 0%, rgba(var(--base-rgb), .15) 22%, transparent 55%, rgba(var(--base-rgb), .85) 88%, var(--base) 100%), linear-gradient(100deg, rgba(var(--base-rgb), .82) 0%, rgba(var(--base-rgb), .58) 45%, rgba(var(--base-rgb), .34) 100%), url(/images/Hero5.png) center right / cover no-repeat;position:absolute;inset:0}.hero-grid{background-image:linear-gradient(rgba(var(--sky-rgb),.04) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--sky-rgb),.04) 1px, transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80% at 50% 0,#000 30%,#0000 100%);mask-image:radial-gradient(80% 80% at 50% 0,#000 30%,#0000 100%)}.hero-content{z-index:2;max-width:1080px;position:relative}.hero-intro{align-items:center;gap:40px;margin-bottom:32px;display:flex}.hero-card{background:linear-gradient(135deg, rgba(var(--base-rgb), .88) 0%, rgba(var(--base-rgb), .74) 100%);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(var(--sky-rgb), .22);border-radius:var(--radius-lg);flex:1;min-width:0;padding:32px 36px 28px}.hero-copy{min-width:0}.hero-logo{filter:drop-shadow(0 10px 30px #00000047);will-change:transform;flex-shrink:0;width:min(360px,34vw);height:auto;animation:.8s cubic-bezier(.22,1,.36,1) both heroLogoEnter,5s ease-in-out .8s infinite floatLogo}.hero-headline{font-family:var(--font-sans);color:var(--text);letter-spacing:-.02em;margin-bottom:18px;font-size:clamp(2.4rem,5.5vw,4rem);font-weight:800;line-height:1.1}.hero-headline .highlight{background:var(--grad-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-line{animation:.7s cubic-bezier(.22,1,.36,1) both slideFromRight;animation-delay:calc(var(--line-i,0) * .18s + .15s);display:block}.hero-sub{color:var(--text-muted);max-width:620px;margin-bottom:12px;font-size:1.15rem;line-height:1.75;animation:.7s cubic-bezier(.22,1,.36,1) .72s both fadeSlideUp}.hero-tagline{letter-spacing:.06em;text-transform:uppercase;color:var(--sky);margin-bottom:0;font-size:.9rem;font-weight:600;animation:.7s cubic-bezier(.22,1,.36,1) .86s both fadeSlideUp}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:28px;margin-bottom:0;animation:.7s cubic-bezier(.22,1,.36,1) .92s both fadeSlideUp;display:flex}@media (width<=900px){.hero-intro{flex-direction:column;align-items:flex-start;gap:24px}.hero-logo{width:min(320px,72vw)}.hero-card{width:100%;padding:24px 20px 20px}}.hero-stats{border-top:1px solid var(--border);flex-wrap:wrap;gap:40px;padding-top:40px;display:flex}.stat-item{align-items:center;gap:10px;display:flex}.stat-dot{background:var(--green);width:8px;height:8px;box-shadow:0 0 8px var(--green);border-radius:50%;flex-shrink:0}.stat-text{color:var(--text-muted);font-size:.85rem;font-weight:500}.hero-visual{opacity:.75;pointer-events:none;width:460px;height:580px;position:absolute;top:50%;right:-40px;overflow:hidden;transform:translateY(-50%);-webkit-mask-image:linear-gradient(#0000 0%,#000 12% 80%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 12% 80%,#0000 100%)}@media (width<=1100px){.hero-visual{display:none}}.features{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:100px 0}.features-header{text-align:center;margin-bottom:64px}.features-header .section-subheadline{text-align:center;margin:0 auto}.features-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=900px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=580px){.features-grid{grid-template-columns:1fr}}.feature-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition), background var(--transition), transform var(--transition), box-shadow var(--transition);padding:32px}.feature-card:hover{border-color:var(--border-lit);background:rgba(var(--accent-rgb),.07);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.2), 0 20px 48px rgba(var(--magenta-rgb),.16);transform:translateY(-5px)}.feature-card:hover .feature-icon{background:rgba(var(--accent-rgb),.22);border-color:var(--border-lit);box-shadow:0 0 16px rgba(var(--accent-rgb),.3)}.feature-icon{background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.2);width:48px;height:48px;color:var(--text);transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);border-radius:12px;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.feature-title{font-family:var(--font-display);color:var(--text);margin-bottom:10px;font-size:1.05rem;font-weight:600}.feature-desc{color:var(--text-dim);font-size:.9rem;line-height:1.7}.portfolio{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);z-index:2;padding:100px 0;position:relative}.portfolio-header{text-align:center;margin-bottom:64px}.portfolio-header .section-subheadline{text-align:center;margin:0 auto}.portfolio-grid{flex-direction:column;gap:64px;display:flex}.portfolio-carousel{min-height:560px;position:relative;overflow:hidden}.portfolio-slide{opacity:0;pointer-events:none;grid-template-columns:1.12fr .88fr;align-items:center;gap:48px;display:grid;position:absolute;inset:0;transform:translate(0,0)}.portfolio-slide.is-current{opacity:1;pointer-events:auto;z-index:2}.portfolio-slide.is-enter{opacity:1;pointer-events:none;z-index:3}.portfolio-slide.is-exit.is-next{animation:.65s cubic-bezier(.22,1,.36,1) forwards portfolio-exit-left}.portfolio-slide.is-exit.is-prev{animation:.65s cubic-bezier(.22,1,.36,1) forwards portfolio-exit-right}.portfolio-slide.is-enter.is-next{animation:.65s cubic-bezier(.22,1,.36,1) forwards portfolio-enter-right}.portfolio-slide.is-enter.is-prev{animation:.65s cubic-bezier(.22,1,.36,1) forwards portfolio-enter-left}@media (width<=900px){.portfolio-carousel{min-height:820px}.portfolio-slide{grid-template-columns:1fr;gap:28px}.portfolio-controls-section{margin-bottom:24px}}@media (width<=640px){.portfolio-carousel{min-height:760px}.portfolio-controls-section{gap:12px;margin-bottom:20px}.portfolio-controls{gap:12px}}.portfolio-controls-section{flex-direction:column;align-items:center;gap:16px;margin-bottom:32px;display:flex}.portfolio-controls{justify-content:center;align-items:center;gap:18px;display:flex}.portfolio-arrow{border:2px solid var(--border);background:rgba(var(--base-rgb), .72);width:58px;height:58px;color:var(--text);transition:transform var(--transition), border-color var(--transition), background var(--transition), opacity var(--transition);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:inline-flex}.portfolio-arrow:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .75);background:#1b1f52e6;transform:translateY(-2px)}.portfolio-arrow:disabled{opacity:.45;cursor:not-allowed}@media (width<=640px){.portfolio-arrow{border-width:2px;width:48px;height:48px;font-size:1.25rem}}.portfolio-dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.portfolio-dot{border:1.5px solid rgba(var(--accent-rgb), .35);background:rgba(var(--accent-rgb), .18);width:11px;height:11px;transition:transform var(--transition), background var(--transition), border-color var(--transition), width var(--transition);cursor:pointer;border-radius:999px}.portfolio-dot.is-active{background:var(--accent);border-color:var(--accent);width:30px}.portfolio-dot:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .6);transform:scale(1.08)}.portfolio-dot:disabled{cursor:default}@media (width<=640px){.portfolio-dot{gap:6px;width:13px;height:13px}.portfolio-dot.is-active{width:28px}}@keyframes portfolio-enter-right{0%{transform:translate(72px)}to{transform:translate(0,0)}}@keyframes portfolio-enter-left{0%{transform:translate(-72px)}to{transform:translate(0,0)}}@keyframes portfolio-exit-left{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(-72px)}}@keyframes portfolio-exit-right{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(72px)}}.browser-mockup{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--base);will-change:transform;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1);overflow:hidden;box-shadow:0 24px 64px #00000080}.browser-mockup:hover{box-shadow:0 36px 80px #000000a6, 0 0 52px var(--accent-glow);transform:translateY(-6px)scale(1.012)}.browser-bar{background:var(--base);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 16px;display:flex}.browser-dots{flex-shrink:0;gap:6px;display:flex}.bdot{border-radius:50%;width:10px;height:10px}.bdot-red{background:#ff5f57}.bdot-yellow{background:#ffbd2e}.bdot-green{background:#28ca41}.browser-url{border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;background:#00000040;border-radius:6px;flex:1;align-items:center;gap:8px;padding:5px 12px;font-size:.78rem;display:flex;overflow:hidden}.browser-url svg{color:var(--text);flex-shrink:0}.browser-viewport{aspect-ratio:16/10;background:var(--surface-2);position:relative;overflow:hidden}.browser-screenshot{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.portfolio-info{flex-direction:column;gap:20px;display:flex}.portfolio-meta{flex-direction:column;gap:8px;display:flex}.portfolio-name{font-family:var(--font-display);color:var(--text);font-size:1.75rem;font-weight:700;line-height:1.2}.portfolio-link{color:var(--sky);transition:color var(--transition);align-items:center;gap:6px;font-size:.88rem;font-weight:500;display:inline-flex}.portfolio-link:hover{color:var(--text)}.portfolio-desc{color:var(--text-muted);font-size:1rem;line-height:1.75}.portfolio-tags{flex-wrap:wrap;gap:8px;display:flex}.portfolio-tag{letter-spacing:.04em;background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.25);color:var(--sky);border-radius:100px;padding:5px 12px;font-size:.75rem;font-weight:600}.projects{background:var(--base);border-top:1px solid var(--border);padding:100px 0}.projects-header{text-align:center;margin-bottom:64px}.projects-header .section-subheadline{text-align:center;margin:0 auto}.projects-grid{grid-template-columns:repeat(3,minmax(0,360px));justify-content:center;align-items:stretch;gap:24px;display:grid}@media (width<=1180px){.projects-grid{grid-template-columns:repeat(2,minmax(0,420px))}}@media (width<=800px){.projects-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition), transform var(--transition);flex-direction:column;gap:20px;padding:36px 32px;display:flex;position:relative}.project-card:hover{border-color:var(--border-lit);transform:translateY(-3px)}.project-name{font-family:var(--font-display);color:var(--text);font-size:1.15rem;font-weight:700}.project-price{font-family:var(--font-display);color:var(--sky);font-size:2rem;font-weight:700;line-height:1}.project-price-suffix{color:var(--text-dim);margin-top:4px;font-size:.8rem;font-weight:400;display:block}.project-desc{color:var(--text-dim);font-size:.9rem;line-height:1.65}.project-features{flex-direction:column;flex:1;gap:10px;list-style:none;display:flex}.project-features li{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:.875rem;display:flex}.project-card .btn-primary{text-align:center;justify-content:center;width:100%}.project-deposit{color:var(--text-dim);text-align:center;margin-top:4px;font-size:.78rem}.pricing{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:100px 0}.pricing-header{text-align:center;margin-bottom:64px}.pricing-header .section-subheadline{text-align:center;margin:0 auto}.pricing-grid{grid-template-columns:repeat(2,minmax(0,360px));justify-content:center;align-items:stretch;gap:24px;padding-top:20px;display:grid}@media (width<=1060px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,360px))}}@media (width<=700px){.pricing-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}}.pricing-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition), transform var(--transition);flex-direction:column;gap:20px;padding:36px 32px;display:flex;position:relative}.pricing-card:hover{border-color:var(--border-lit);transform:translateY(-3px)}.pricing-card.popular{border-color:var(--accent);background:rgba(var(--accent-rgb),.06);box-shadow:var(--shadow-glow);transform:scale(1.02)}.pricing-card.popular:hover{transform:scale(1.02)translateY(-3px)}.popular-badge{background:var(--grad-accent);color:var(--base);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:100px;padding:5px 14px;font-size:.72rem;font-weight:700;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.pricing-name{font-family:var(--font-display);color:var(--text);font-size:1.15rem;font-weight:700}.pricing-price-row{align-items:baseline;gap:4px;display:flex}.pricing-price{font-family:var(--font-display);color:var(--text);font-size:2.5rem;font-weight:700;line-height:1}.pricing-period{color:var(--text-dim);font-size:.9rem}.pricing-desc{color:var(--text-dim);font-size:.88rem;line-height:1.6}.pricing-divider{background:var(--border);height:1px}.pricing-features{flex-direction:column;flex:1;gap:12px;list-style:none;display:flex}.pricing-features li{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:.875rem;display:flex}.pricing-card .btn-primary,.pricing-card .btn-secondary{text-align:center;justify-content:center;width:100%}.contact{padding:100px 0}.contact-inner{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;align-items:start;gap:32px 80px;display:grid}.contact-header{grid-area:1/1}.contact-form-wrap{grid-area:1/2/3}.contact-info{grid-area:2/1}@media (width<=900px){.contact-inner{grid-template-rows:auto;grid-template-columns:1fr;gap:32px}.contact-header{grid-area:1/1}.contact-form-wrap{grid-area:2/1}.contact-info{grid-area:3/1}}.contact-form-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=580px){.form-row{grid-template-columns:1fr}}.form-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-group label{color:var(--text-muted);font-size:.83rem;font-weight:500}.form-group input,.form-group textarea{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-sans);color:var(--text);transition:border-color var(--transition);resize:vertical;outline:none;padding:12px 16px;font-size:.9rem}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);background:rgba(var(--accent-rgb), .07);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .14)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-dim)}.form-submit{justify-content:center;width:100%;margin-top:8px;padding:15px;font-size:1rem}.form-message{border-radius:var(--radius);margin-top:16px;padding:12px 16px;font-size:.88rem;font-weight:500}.form-message.success{background:rgba(var(--green-rgb),.1);border:1px solid rgba(var(--green-rgb),.3);color:var(--green)}.form-message.error{background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.3);color:var(--danger)}.form-group.has-error input,.form-group.has-error textarea{border-color:var(--danger)}.field-error-star{color:var(--danger);margin-left:4px;font-weight:700}.field-error-msg{color:var(--danger);margin-top:5px;font-size:.78rem;display:block}.contact-info{flex-direction:column;gap:32px;display:flex}.contact-info-item{align-items:flex-start;gap:16px;display:flex}.contact-info-icon{background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.2);width:44px;height:44px;color:var(--text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-info-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px;font-size:.78rem;font-weight:600}.contact-info-value{color:var(--text);font-size:.95rem;font-weight:500}.footer{background:var(--surface);border-top:1px solid var(--border);z-index:2;padding:16px 0;position:relative}.footer-inner{flex-wrap:wrap;align-items:center;gap:8px 22px;display:flex}.footer-copy{color:var(--text-dim);white-space:nowrap;font-size:.8rem}.footer-legal{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;margin-left:auto;display:flex}.footer-legal a,.footer-legal-btn{color:var(--text-dim);white-space:nowrap;transition:color var(--transition);background:0 0;border:none;padding:0;font-size:.8rem}.footer-legal a:hover,.footer-legal-btn:hover{color:var(--text-muted)}@media (width<=480px){.footer-legal{margin-left:0}}.cookie-banner{z-index:220;justify-content:center;display:flex;position:fixed;bottom:24px;left:24px;right:24px}.cookie-banner__content{border:1px solid var(--border);background:#141742fa;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:1200px;padding:12px 16px;display:flex;box-shadow:0 18px 48px #00000059}.cookie-banner__copy{flex:auto;min-width:0}.cookie-banner__text{color:var(--text-muted);margin:0;font-size:.84rem;line-height:1.45}.cookie-banner__actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.cookie-banner__button{white-space:nowrap;border-radius:10px;min-height:36px;padding:8px 14px;font-size:.78rem}.cookie-banner__button--primary{padding-inline:14px}@media (width<=768px){.cookie-banner{bottom:12px;left:12px;right:12px}.cookie-banner__content{align-items:flex-start;gap:10px;padding:10px 12px}.cookie-banner__actions{flex-shrink:0;gap:6px}.cookie-banner__actions .cookie-banner__button{justify-content:center;width:auto;min-height:34px;padding:7px 12px;font-size:.74rem}.cookie-banner__text{font-size:.76rem;line-height:1.35}}@media (width<=560px){.cookie-banner__content{flex-direction:column;align-items:stretch}.cookie-banner__actions{justify-content:flex-start;width:100%}}.form-loading{align-items:center;gap:8px;display:inline-flex}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.contact-modal{background:var(--surface);border:1px solid var(--border);border-top-color:rgba(var(--accent-rgb), .4);border-radius:var(--radius-lg);width:100%;max-width:620px;max-height:90vh;box-shadow:0 24px 64px #00000080, 0 0 60px rgba(var(--accent-rgb),.08);padding:40px 40px 36px;animation:.5s cubic-bezier(.22,1,.36,1) 40ms both modalPanelIn;position:relative;overflow:hidden auto}.contact-modal:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent) 25%, var(--violet) 55%, var(--magenta) 80%, transparent 100%);border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform-origin:0;height:2px;animation:.6s cubic-bezier(.22,1,.36,1) .25s both accentBarIn;position:absolute;top:0;left:0;right:0}.legal-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:760px;max-height:90vh;padding:40px 40px 36px;animation:.4s cubic-bezier(.22,1,.36,1) 50ms both modalPanelIn;position:relative;overflow:hidden auto;box-shadow:0 24px 64px #00000080}.legal-modal__header{margin-bottom:28px}.legal-modal__title{font-family:var(--font-display);color:var(--text);margin:8px 0;font-size:1.6rem;font-weight:700;line-height:1.2}.legal-modal__meta{color:var(--text-dim);margin:0;font-size:.88rem}.legal-modal__body{gap:22px;display:grid}.legal-modal__section{gap:10px;display:grid}.legal-modal__section-title{color:var(--text);margin:0;font-size:1rem;font-weight:700}.legal-modal__paragraph{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.7}.contact-modal-header{margin-bottom:28px}.contact-modal-header .section-label{animation:.42s cubic-bezier(.22,1,.36,1) .18s both fadeSlideUp}.contact-modal-title{font-family:var(--font-display);color:var(--text);margin:8px 0;font-size:1.5rem;font-weight:700;line-height:1.2;animation:.42s cubic-bezier(.22,1,.36,1) .3s both fadeSlideUp}.contact-modal-sub{color:var(--text-dim);margin:0;font-size:.9rem;line-height:1.6;animation:.42s cubic-bezier(.22,1,.36,1) .4s both fadeSlideUp}.contact-modal form{animation:.45s cubic-bezier(.22,1,.36,1) .48s both fadeSlideUp}@media (width<=680px){.modal-overlay{padding:12px}.contact-modal{border-radius:16px;max-width:100%;max-height:calc(100dvh - 24px);padding:24px 16px 20px}.contact-modal .form-row{grid-template-columns:1fr}.legal-modal{border-radius:16px;max-width:100%;max-height:calc(100dvh - 24px);padding:24px 16px 20px}}.payment-modal{background:var(--surface);border:1px solid var(--border);border-top-color:rgba(var(--accent-rgb), .4);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;box-shadow:0 24px 64px #00000080, 0 0 60px rgba(var(--accent-rgb),.08);padding:40px 40px 36px;animation:.5s cubic-bezier(.22,1,.36,1) 40ms both modalPanelIn;position:relative;overflow-y:auto}.payment-modal:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent) 25%, var(--violet) 55%, var(--magenta) 80%, transparent 100%);border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform-origin:0;height:2px;animation:.6s cubic-bezier(.22,1,.36,1) .25s both accentBarIn;position:absolute;top:0;left:0;right:0}.payment-modal-header{margin-bottom:20px}.payment-modal-name{font-family:var(--font-display);color:var(--text);margin:8px 0 4px;font-size:1.7rem;font-weight:700;line-height:1.2}.payment-modal-price-row{align-items:baseline;gap:6px;margin-bottom:10px;display:flex}.payment-modal-desc{color:var(--text-dim);margin:0;font-size:.9rem;line-height:1.6}.payment-modal-features{gap:10px;margin:16px 0 24px;padding:0;list-style:none;display:grid}.payment-modal-features li{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:.88rem;line-height:1.5;display:flex}.payment-modal-cta{justify-content:center;gap:8px;width:100%;margin-bottom:14px}.payment-modal-secure{color:var(--text-dim);justify-content:center;align-items:center;gap:5px;margin:0;font-size:.78rem;display:flex}.payment-modal-error{background:rgba(var(--danger-rgb),.1);border:1px solid rgba(var(--danger-rgb),.25);color:var(--danger);border-radius:var(--radius);margin-bottom:14px;padding:10px 14px;font-size:.85rem}.payment-modal-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@media (width<=680px){.payment-modal{padding:32px 20px 28px}}.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);overscroll-behavior:contain;background:#000000a6;justify-content:center;align-items:center;padding:24px;animation:.3s both modalBackdropIn;display:flex;position:fixed;inset:0;overflow-x:hidden}.modal-close{color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:50%;padding:7px;transition:color .2s,background .2s,border-color .2s,transform .28s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;top:16px;right:16px}.modal-close:hover{color:var(--text);background:#ffffff17;border-color:#ffffff26;transform:rotate(90deg)}.form-message.success{background:rgba(var(--green-rgb), .1);border:1px solid rgba(var(--green-rgb), .25);color:var(--green);border-radius:var(--radius);margin-bottom:12px;padding:10px 14px;font-size:.85rem}[data-reveal-right]{opacity:0;transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translate(80px)scale(.97)}[data-reveal-right].visible{opacity:1;transform:translate(0)scale(1)}[data-reveal-left]{opacity:0;transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translate(-80px)scale(.97)}[data-reveal-left].visible{opacity:1;transform:translate(0)scale(1)}@media (prefers-reduced-motion:reduce){[data-reveal-right],[data-reveal-left]{opacity:1!important;transition:none!important;transform:none!important}}[data-reveal]{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translateY(40px)}[data-reveal].visible{opacity:1;transform:translateY(0)}@media (width<=768px){.features,.portfolio,.projects,.contact{padding:64px 0}.features-header,.portfolio-header,.projects-header{margin-bottom:40px}.section-headline{font-size:clamp(1.6rem,6vw,2.2rem)}.hero-sub{font-size:1rem}.hero-actions{margin-bottom:40px}.hero-stats{gap:16px 28px;padding-top:28px}.contact-form-wrap{padding:28px 20px}}@media (width<=580px){.hero-actions{flex-direction:column;gap:12px}.hero-actions .btn-primary,.hero-actions .btn-secondary{justify-content:center;width:100%}.feature-card{padding:24px 20px}.portfolio-name{font-size:1.35rem}.portfolio-card{gap:28px}.portfolio-desc{font-size:.92rem}.project-card,.pricing-card{padding:28px 20px}.contact-info{gap:22px}}.about{padding:120px 0 80px}.about-mission{align-items:flex-start;gap:56px;margin-bottom:64px;display:flex}.about-photo-wrap{flex-shrink:0;width:280px;position:relative}.about-photo{object-fit:cover;object-position:center top;border-radius:var(--radius-lg);border:1px solid var(--border);width:280px;height:340px;box-shadow:var(--shadow), 0 0 60px rgba(var(--accent-rgb), .1)}.about-photo-badge{background:var(--accent);border-radius:var(--radius);box-shadow:0 8px 24px rgba(var(--accent-rgb), .4);flex-direction:column;align-items:center;padding:12px 16px;display:flex;position:absolute;bottom:-20px;right:-20px}.about-badge-years{font-family:var(--font-display);color:var(--text);font-size:1.6rem;font-weight:700;line-height:1}.about-badge-label{color:#ffffffd9;letter-spacing:.04em;text-transform:uppercase;text-align:center;max-width:80px;margin-top:4px;font-size:.68rem;font-weight:600;line-height:1.3}.about-mission-copy{flex:1;min-width:0;padding-top:8px}.about-body{color:var(--text-muted);max-width:680px;font-size:1.05rem;line-height:1.8}.about-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:24px;padding:36px 40px}.about-block-icon-row{align-items:center;gap:12px;margin-bottom:16px;display:flex}.about-inline-icon{color:var(--text);flex-shrink:0}.about-block-title{font-family:var(--font-display);color:var(--text);font-size:1.25rem;font-weight:700;line-height:1.3}.about-cta{align-items:center;gap:16px;margin-top:48px;display:flex}@media (width<=768px){.about{padding:100px 0 64px}.about-mission{text-align:center;flex-direction:column;align-items:center;gap:40px}.about-photo-wrap{width:220px}.about-photo{width:220px;height:270px}.about-photo-badge{bottom:-14px;right:-12px}.about-mission-copy{padding-top:0}.about-body{font-size:1rem}.about-block{padding:28px 24px}.about-cta{flex-direction:column;align-items:stretch}.about-cta .btn-primary,.about-cta .btn-secondary{justify-content:center}}
