:root{--primary:#1565d8;--primary-dark:#0b4da8;--primary-light:#e8f1ff;--accent:#22d3ee;--dark:#0a1f44;--body:#4a5568;--heading:#0f2552;--light:#f4f7fb;--border:#e5ebf3;--white:#fff;--radius:16px;--shadow-sm:0 6px 20px rgba(15,37,82,.06);--shadow:0 18px 50px rgba(15,37,82,.1);--shadow-primary:0 16px 40px rgba(21,101,216,.28);--grad:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);--grad-accent:linear-gradient(135deg,#22d3ee,#3b82f6);--font-head:var(--font-head-src),"Be Vietnam Pro",system-ui,sans-serif;--font-body:var(--font-body-src),"Open Sans",system-ui,sans-serif}*{box-sizing:border-box}iframe,img,svg,video{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}body{font-family:var(--font-body);color:var(--body);font-size:16px;line-height:1.7;overflow-x:hidden;background:var(--white)}h1,h2,h3,h4,h5,h6{font-family:var(--font-head);color:var(--heading);font-weight:700;line-height:1.25}a{text-decoration:none;transition:all .25s ease}img{max-width:100%}section{position:relative}#preloader{position:fixed;inset:0;background:var(--white);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity .5s ease,visibility .5s ease}#preloader.hidden{opacity:0;visibility:hidden}.preloader-spinner{width:56px;height:56px;border-radius:50%;border:5px solid var(--primary-light);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.btn{font-family:var(--font-head);font-weight:600;border-radius:50px;padding:11px 26px;transition:all .3s ease}.btn-lg{padding:13px 32px;font-size:1rem}.btn-sm{padding:8px 20px;font-size:.9rem}.btn-primary{background:var(--grad);border:none;color:#fff;box-shadow:var(--shadow-primary)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(21,101,216,.4);background:var(--grad)}.btn-light{background:#fff;color:var(--primary);border:none;font-weight:700}.btn-light:hover{transform:translateY(-3px);color:var(--primary-dark);box-shadow:0 16px 36px rgba(0,0,0,.18)}.btn-outline-light{border:2px solid hsla(0,0%,100%,.7);color:#fff}.btn-outline-light:hover{background:#fff;color:var(--primary);transform:translateY(-3px)}.btn-link{color:var(--primary);font-weight:600}.topbar{background:var(--dark);font-size:.86rem;padding:9px 0}.topbar,.topbar a{color:hsla(0,0%,100%,.75)}.topbar a:hover{color:#fff}.topbar .bi{color:var(--accent);margin-right:4px}.topbar .divider{display:inline-block;width:1px;height:14px;background:hsla(0,0%,100%,.2);margin:0 14px;vertical-align:middle}.topbar-right a{margin-left:12px;font-size:1rem}#mainNav{background:var(--white);padding:16px 0;transition:all .3s ease;box-shadow:0 2px 20px rgba(15,37,82,.05)}#mainNav.scrolled{padding:10px 0;box-shadow:var(--shadow-sm)}.navbar-brand{gap:10px}.logo-mark,.navbar-brand{display:flex;align-items:center}.logo-mark{width:40px;height:40px;border-radius:11px;background:var(--grad);color:#fff;font-size:1.3rem;justify-content:center;box-shadow:var(--shadow-primary)}.logo-mark,.logo-text{font-family:var(--font-head);font-weight:800}.logo-text{font-size:1.6rem;color:var(--heading);letter-spacing:-.5px}.logo-dot{color:var(--primary)}.navbar-nav .nav-link{font-family:var(--font-head);font-weight:500;color:var(--heading);margin:0 4px;padding:8px 14px;position:relative}.navbar-nav .nav-link:after{content:"";position:absolute;bottom:2px;left:14px;right:14px;height:2px;background:var(--primary);transform:scaleX(0);transition:transform .3s ease;transform-origin:left}.navbar-nav .nav-link.active,.navbar-nav .nav-link:hover{color:var(--primary)}.navbar-nav .nav-link.active:after,.navbar-nav .nav-link:hover:after{transform:scaleX(1)}.navbar-toggler{border:none;padding:6px;width:44px;height:40px;position:relative}.navbar-toggler:focus{box-shadow:none}.navbar-toggler span{display:block;width:24px;height:2px;background:var(--heading);margin:5px auto;transition:.3s}.offcanvas{background:var(--dark)}.offcanvas-header{padding:20px 24px}.offcanvas .navbar-nav .nav-link{color:hsla(0,0%,100%,.8)}.offcanvas .navbar-nav .nav-link.active,.offcanvas .navbar-nav .nav-link:hover{color:#fff}@media (min-width:992px){.offcanvas{background:transparent;position:static;transform:none;visibility:visible!important}.offcanvas-header{display:none}.offcanvas-body{padding:0}.offcanvas .navbar-nav .nav-link{color:var(--heading)}.offcanvas .navbar-nav .nav-link.active,.offcanvas .navbar-nav .nav-link:hover{color:var(--primary)}}.section{padding:100px 0}.bg-light{background:var(--light)!important}.section-head{margin-bottom:54px}.section-label{display:inline-block;font-family:var(--font-head);font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:2px;font-size:.82rem;margin-bottom:14px;padding:6px 16px;background:var(--primary-light);border-radius:50px}.section-label.light{background:hsla(0,0%,100%,.15);color:#fff}.section-title{font-size:2.3rem;margin-bottom:18px;font-weight:800}.section-text{color:var(--body);font-size:1.04rem}.text-white-75{color:hsla(0,0%,100%,.82)!important}.hero{background:linear-gradient(135deg,#0b4da8,#1565d8 55%,#1e7bf0);color:#fff;padding:70px 0 90px;position:relative;overflow:hidden}.hero-shapes .shape{position:absolute;border-radius:50%;opacity:.12}.shape-1{width:320px;height:320px;background:#fff;top:-120px;right:-80px}.shape-2{width:200px;height:200px;background:var(--accent);bottom:-60px;left:-60px;opacity:.2}.shape-3{width:120px;height:120px;border:20px solid hsla(0,0%,100%,.1);background:transparent;top:40%;left:8%}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:hsla(0,0%,100%,.14);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:8px 18px;border-radius:50px;font-size:.9rem;font-weight:600;font-family:var(--font-head);margin-bottom:22px}.hero-badge .bi{color:var(--accent)}.hero-title{font-size:3.2rem;color:#fff;font-weight:800;line-height:1.15;margin-bottom:22px;letter-spacing:-1px}.hero-title span{background:linear-gradient(90deg,#a5f3fc,#67e8f9);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-text{font-size:1.12rem;color:hsla(0,0%,100%,.9);max-width:540px;margin-bottom:30px}.hero-actions{gap:14px;margin-bottom:40px}.hero-actions,.hero-stats{display:flex;flex-wrap:wrap}.hero-stats{gap:36px}.hero-stats strong{display:block;font-family:var(--font-head);font-size:2rem;font-weight:800;color:#fff}.hero-stats span{font-size:.9rem;color:hsla(0,0%,100%,.8)}.hero-visual{position:relative;display:flex;justify-content:center}.hero-illustration{width:100%;max-width:480px;filter:drop-shadow(0 30px 60px rgba(0,0,0,.3));animation:float 6s ease-in-out infinite}.hero-illustration .eye{animation:blink 4s infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes blink{0%,45%,55%,to{opacity:1}50%{opacity:.3}}.partners{padding:40px 0;border-bottom:1px solid var(--border)}.partners-label{text-align:center;font-size:.85rem;letter-spacing:1px;text-transform:uppercase;color:#94a3b8;margin-bottom:20px;font-weight:600}.partners-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:44px}.partners-logos span{font-family:var(--font-head);font-weight:700;font-size:1.4rem;color:#c3ccd9;transition:color .3s ease}.partners-logos span:hover{color:var(--primary)}.about-visual{position:relative;padding:20px 20px 20px 0;min-height:420px}.about-visual:before{content:"";position:absolute;inset:0 40px 40px 0;background:var(--grad);border-radius:24px;opacity:.1}.about-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:26px;position:absolute;width:270px}.about-card i{font-size:2rem;color:var(--primary);margin-bottom:10px;display:block}.about-card h5{font-size:1.1rem;margin-bottom:6px}.about-card p{font-size:.9rem;margin:0}.about-card-1{top:20px;left:0}.about-card-2{bottom:30px;right:0;z-index:2}.about-badge{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);background:var(--grad);color:#fff;border-radius:50%;width:150px;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:var(--shadow-primary);z-index:3}.about-badge strong{font-family:var(--font-head);font-size:2.4rem;font-weight:800;line-height:1}.about-badge span{font-size:.78rem;margin-top:4px;line-height:1.3}.check-list{list-style:none;padding:0;margin:22px 0 0}.check-list li{margin-bottom:12px;font-weight:500;color:var(--heading)}.check-list .bi{color:var(--primary);margin-right:10px;font-size:1.1rem}.service-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:36px 30px;height:100%;transition:all .35s ease;position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow);border-color:transparent}.service-card:hover:before{transform:scaleX(1)}.service-icon{width:64px;height:64px;border-radius:16px;background:var(--primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:22px;font-size:1.7rem;color:var(--primary);transition:all .35s ease}.service-card:hover .service-icon{background:var(--grad);color:#fff;transform:rotate(-6deg)}.service-card h4{font-size:1.22rem;margin-bottom:12px}.service-card p{margin-bottom:18px;font-size:.96rem}.service-link{font-family:var(--font-head);font-weight:600;color:var(--primary)}.service-link .bi{transition:transform .3s ease}.service-link:hover .bi{transform:translateX(5px)}.feature{background:linear-gradient(135deg,#0b4da8,#1565d8);color:#fff;padding:100px 0;position:relative;overflow:hidden}.feature:after{content:"";position:absolute;right:-100px;top:-100px;width:300px;height:300px;border:40px solid hsla(0,0%,100%,.05);border-radius:50%}.feature-list{margin-top:30px}.feature-item{display:flex;gap:18px;margin-bottom:22px}.feature-item .bi{font-size:1.4rem;color:var(--primary);background:#fff;border-radius:12px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-item h5{color:#fff;font-size:1.1rem;margin-bottom:4px}.feature-item p{color:hsla(0,0%,100%,.8);margin:0;font-size:.94rem}.counter-card{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.15);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius);padding:32px 24px;text-align:center;transition:all .3s ease}.counter-card:hover{background:hsla(0,0%,100%,.18);transform:translateY(-6px)}.counter-card .bi{font-size:2rem;color:var(--accent);margin-bottom:10px}.counter-card h3{font-family:var(--font-head);font-size:2.6rem;font-weight:800;color:#fff;margin-bottom:4px}.counter-card p{color:hsla(0,0%,100%,.8);margin:0;font-size:.92rem}.process-row,.process-step{position:relative}.process-step{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:36px 26px;text-align:center;height:100%;transition:all .35s ease}.process-step:hover{box-shadow:var(--shadow);transform:translateY(-8px)}.process-num{position:absolute;top:18px;right:22px;font-family:var(--font-head);font-size:2.4rem;font-weight:800;color:var(--primary-light)}.process-step i{font-size:2rem;color:var(--primary);background:var(--primary-light);width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.process-step h5{font-size:1.14rem;margin-bottom:10px}.process-step p{font-size:.92rem;margin:0}.project-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:all .35s ease;height:100%}.project-card:hover{transform:translateY(-10px);box-shadow:var(--shadow)}.project-thumb{height:180px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:3.4rem;position:relative}.project-thumb:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,hsla(0,0%,100%,.25),transparent 60%)}.project-body{padding:26px;position:relative}.project-cat{display:inline-block;font-family:var(--font-head);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;color:var(--primary);background:var(--primary-light);padding:4px 12px;border-radius:50px;margin-bottom:12px}.project-body h5{font-size:1.18rem;margin-bottom:8px}.project-body p{font-size:.94rem;margin:0}.project-arrow{position:absolute;top:24px;right:24px;width:42px;height:42px;border-radius:50%;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem}.project-card:hover .project-arrow{background:var(--grad);color:#fff}.grad-1{background:linear-gradient(135deg,#1565d8,#22d3ee)}.grad-2{background:linear-gradient(135deg,#7c3aed,#3b82f6)}.grad-3{background:linear-gradient(135deg,#0ea5e9,#2dd4bf)}.grad-4{background:linear-gradient(135deg,#f59e0b,#ef4444)}.grad-5{background:linear-gradient(135deg,#10b981,#0ea5e9)}.grad-6{background:linear-gradient(135deg,#6366f1,#ec4899)}.team-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:32px 20px;text-align:center;transition:all .35s ease}.team-card:hover{box-shadow:var(--shadow);transform:translateY(-8px);border-color:transparent}.team-avatar{width:96px;height:96px;border-radius:50%;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:1.8rem;color:#fff}.team-card h5{font-size:1.15rem;margin-bottom:2px}.team-card>span{font-size:.9rem;color:var(--primary);font-weight:600}.team-social{margin-top:14px;gap:8px}.team-social,.team-social a{display:flex;justify-content:center}.team-social a{width:36px;height:36px;border-radius:50%;background:var(--light);color:var(--heading);align-items:center}.team-social a:hover{background:var(--primary);color:#fff}.testi-card{background:#fff;border-radius:var(--radius);padding:32px 30px;box-shadow:var(--shadow-sm);height:100%;transition:all .3s ease;position:relative}.testi-card:hover{box-shadow:var(--shadow);transform:translateY(-6px)}.testi-stars{color:#fbbf24;margin-bottom:14px;font-size:.95rem}.testi-card>p{font-style:italic;color:var(--heading);margin-bottom:22px}.testi-author{gap:14px}.testi-author,.testi-avatar{display:flex;align-items:center}.testi-avatar{width:52px;height:52px;border-radius:50%;color:#fff;flex-shrink:0;justify-content:center;font-family:var(--font-head);font-weight:700}.testi-author strong{display:block;color:var(--heading);font-family:var(--font-head)}.testi-author span{font-size:.86rem;color:var(--body)}.accordion-item{border:1px solid var(--border);border-radius:var(--radius)!important;margin-bottom:14px;overflow:hidden}.accordion-button{font-family:var(--font-head);font-weight:600;color:var(--heading);background:#fff;padding:20px 24px;font-size:1.04rem}.accordion-button:not(.collapsed){background:var(--primary-light);color:var(--primary);box-shadow:none}.accordion-button:focus{box-shadow:none;border:none}.accordion-button:after{background-image:none;content:"\F64D";font-family:bootstrap-icons;width:auto;height:auto;transform:none;transition:transform .3s ease}.accordion-button:not(.collapsed):after{transform:rotate(180deg)}.accordion-body{padding:4px 24px 22px;color:var(--body)}.contact-info{list-style:none;padding:0;margin:26px 0 0}.contact-info li{display:flex;align-items:center;gap:14px;margin-bottom:16px;font-weight:500}.contact-info a,.contact-info li{color:var(--heading)}.ci-icon,.contact-info a:hover{color:var(--primary)}.ci-icon{width:46px;height:46px;border-radius:12px;background:var(--primary-light);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.contact-card{background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:40px}.form-label{font-family:var(--font-head);font-weight:600;color:var(--heading);font-size:.92rem;margin-bottom:6px}.form-control{border:1px solid var(--border);border-radius:12px;padding:12px 16px;font-size:.96rem;background:var(--light)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(21,101,216,.1);background:#fff}.form-note{margin:16px 0 0;font-size:.92rem;font-weight:600}.form-note.ok{color:#16a34a}.form-note.err{color:#dc2626}.footer{background:var(--dark);color:hsla(0,0%,100%,.7);padding:80px 0 0}.footer-brand{display:flex;align-items:center;gap:10px}.footer .logo-text{color:#fff}.footer p{font-size:.94rem}.footer h6{color:#fff;font-family:var(--font-head);font-weight:700;margin-bottom:20px;font-size:1.05rem}.footer ul{list-style:none;padding:0;margin:0}.footer ul li{margin-bottom:11px}.footer ul a{color:hsla(0,0%,100%,.7);font-size:.94rem}.footer ul a:hover{color:var(--accent);padding-left:5px}.footer-social{display:flex;gap:10px;margin-top:20px}.footer-social a{width:40px;height:40px;border-radius:10px;background:hsla(0,0%,100%,.08);color:#fff;display:flex;align-items:center;justify-content:center}.footer-social a:hover{background:var(--primary);transform:translateY(-3px)}.footer-newsletter{display:flex;margin-top:14px;background:hsla(0,0%,100%,.08);border-radius:50px;overflow:hidden;padding:5px}.footer-newsletter input{flex:1 1;background:transparent;border:none;color:#fff;padding:8px 16px;outline:none;font-size:.92rem}.footer-newsletter input::placeholder{color:hsla(0,0%,100%,.5)}.footer-newsletter button{background:var(--grad);border:none;color:#fff;width:44px;height:42px;border-radius:50px;flex-shrink:0}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.1);margin-top:60px;padding:24px 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}.footer-bottom p{margin:0;font-size:.88rem}.footer-bottom a{color:var(--accent)}.back-to-top{position:fixed;bottom:30px;right:30px;width:48px;height:48px;border-radius:50%;background:var(--grad);color:#fff;z-index:999;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:var(--shadow-primary);opacity:0;visibility:hidden;transform:translateY(20px)}.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{color:#fff;transform:translateY(-4px)}@media (max-width:991px){.feature,.section{padding:72px 0}.hero{padding:50px 0 70px}.hero-title{font-size:2.4rem}.section-title{font-size:1.9rem}.hero-visual{margin-top:20px}.about-visual{min-height:360px;margin-bottom:20px}}@media (max-width:767px){.feature,.section{padding:60px 0}.section-head{margin-bottom:36px}.hero-actions{gap:10px}.hero-actions .btn{flex:1 1 auto;justify-content:center}.partners{padding:30px 0}}@media (max-width:575px){.hero{padding:40px 0 56px}.hero-title{font-size:2rem}.hero-text{font-size:1rem}.hero-stats{gap:24px}.hero-stats strong{font-size:1.6rem}.section-title{font-size:1.65rem}.section-text{font-size:.98rem}.contact-card{padding:26px}.about-card{width:230px}.partners-logos{gap:26px}.partners-logos span{font-size:1.1rem}.logo-text{font-size:1.4rem}}@media (max-width:400px){.hero-title{font-size:1.75rem}.hero-stats{gap:18px}.hero-stats strong{font-size:1.4rem}}.footer-info{list-style:none;padding:0;margin:18px 0 20px}.footer-info li{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-size:.92rem;color:hsla(0,0%,100%,.72);line-height:1.5}.footer-info li i{color:var(--accent);margin-top:3px}.footer-info a{color:hsla(0,0%,100%,.72)}.footer-info a:hover{color:#fff}.footer-legal{margin-top:36px;padding-top:20px;border-top:1px solid hsla(0,0%,100%,.1);display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.84rem;color:hsla(0,0%,100%,.6)}.footer-legal span{position:relative}.footer-legal strong{color:hsla(0,0%,100%,.85)}.page-hero{background:linear-gradient(135deg,#0b4da8,#1565d8);color:#fff;padding:120px 0 60px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border:40px solid hsla(0,0%,100%,.06);border-radius:50%}.page-hero h1{color:#fff;font-size:2.6rem;font-weight:800;margin-bottom:10px}.breadcrumb-nav{font-size:.92rem}.breadcrumb-nav,.breadcrumb-nav a{color:hsla(0,0%,100%,.8)}.breadcrumb-nav a:hover{color:#fff}.breadcrumb-nav span{margin:0 8px;opacity:.6}.blog-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;height:100%;transition:all .35s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent}.blog-thumb{height:190px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:3rem;position:relative}.blog-thumb img{width:100%;height:100%;object-fit:cover}.blog-card-body{padding:24px;display:flex;flex-direction:column;flex:1 1}.blog-meta{font-size:.82rem;color:#94a3b8;margin-bottom:10px;display:flex;gap:14px;flex-wrap:wrap}.blog-meta .cat{color:var(--primary);font-weight:600}.blog-card-body h3{font-size:1.2rem;margin-bottom:10px;line-height:1.35}.blog-card-body h3 a{color:var(--heading)}.blog-card-body h3 a:hover{color:var(--primary)}.blog-card-body p{font-size:.94rem;margin-bottom:16px;flex:1 1}.blog-readmore{font-family:var(--font-head);font-weight:600;color:var(--primary)}.article{max-width:820px;margin:0 auto}.article-cover{border-radius:var(--radius);overflow:hidden;margin-bottom:30px;height:360px;font-size:4rem}.article-cover img{width:100%;height:100%;object-fit:cover}.article-body{font-size:1.08rem;color:#334155;line-height:1.9}.article-body h2{font-size:1.6rem;margin:32px 0 14px}.article-body h3{font-size:1.3rem;margin:26px 0 12px}.article-body p{margin-bottom:18px}.article-body ol,.article-body ul{margin-bottom:18px;padding-left:22px}.article-body img{border-radius:var(--radius);margin:20px 0}.article-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.article-tags .tag{font-size:.82rem;background:var(--primary-light);color:var(--primary);padding:6px 14px;border-radius:50px;font-weight:600}.pagination-nav{display:flex;justify-content:center;gap:8px;margin-top:50px}.pagination-nav a,.pagination-nav span{min-width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);color:var(--heading);font-weight:600;padding:0 10px}.pagination-nav a:hover{border-color:var(--primary);color:var(--primary)}.pagination-nav .active{background:var(--grad);color:#fff;border-color:transparent}.pagination-nav .disabled{opacity:.4;pointer-events:none}.detail-sidebar{background:var(--light);border-radius:var(--radius);padding:28px}.detail-sidebar h5{margin-bottom:16px}.cat-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}.cat-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:999px;background:var(--light);border:1px solid var(--border);color:var(--heading);font-family:var(--font-head);font-weight:600;font-size:.9rem;line-height:1;transition:all .2s ease}.cat-chip:hover{border-color:var(--primary);color:var(--primary)}.cat-chip.active{background:var(--grad);border-color:transparent;color:#fff;box-shadow:var(--shadow-primary)}.cat-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgba(15,37,82,.08);color:inherit;font-size:.72rem;font-weight:700}.cat-chip.active .cat-chip-count{background:hsla(0,0%,100%,.25)}.empty-state{text-align:center;padding:60px 0;color:#94a3b8}.empty-state i{font-size:3rem;display:block;margin-bottom:14px;opacity:.6}.navbar-collapse-custom{display:flex;flex-basis:100%;flex-grow:1;align-items:center}@media (max-width:991px){#mainNav{padding:12px 0}#mainNav .container{position:relative}.navbar-collapse-custom{position:absolute;top:calc(100% + 10px);left:12px;right:12px;display:block;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 50px rgba(15,37,82,.16);max-height:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-8px);transition:max-height .32s ease,opacity .22s ease,transform .22s ease,visibility .22s;flex-basis:auto}.navbar-collapse-custom.open{max-height:calc(100vh - 90px);overflow-y:auto;opacity:1;visibility:visible;transform:translateY(0)}.navbar-collapse-custom .navbar-nav{padding:10px}.navbar-collapse-custom .nav-item{width:100%}.navbar-collapse-custom .nav-link{padding:13px 14px;border-radius:10px;font-size:1rem;font-weight:600}.navbar-collapse-custom .nav-link:after{display:none}.navbar-collapse-custom .nav-link.active,.navbar-collapse-custom .nav-link:hover{background:var(--primary-light);color:var(--primary)}.navbar-collapse-custom .nav-item.ms-lg-3{margin-top:8px;padding:0 4px}.navbar-collapse-custom .btn{display:block;width:100%;text-align:center;padding:13px}}@media (max-width:767px){.page-hero{padding:92px 0 46px}.page-hero h1{font-size:1.9rem}.page-hero:after{width:180px;height:180px}.cat-filter{gap:8px;margin-bottom:28px}.cat-chip{padding:7px 14px;font-size:.85rem}.blog-card-body{padding:20px}.article-body img{height:auto;border-radius:10px}.article-body table{display:block;width:100%;overflow-x:auto}.article-body pre{overflow-x:auto}}@media (max-width:480px){.page-hero{padding:84px 0 40px}.page-hero h1{font-size:1.55rem}}.back-to-top{border:none;cursor:pointer}.navbar-toggler{background:transparent}.navbar-toggler[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.navbar-toggler[aria-expanded=true] span:nth-child(2){opacity:0}.navbar-toggler[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.project-hero-cover{height:340px;border-radius:18px;overflow:hidden;margin-bottom:30px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:5rem;box-shadow:var(--shadow)}.project-hero-cover img{width:100%;height:100%;object-fit:cover}.project-lead{font-size:1.2rem;color:var(--heading);font-weight:500;line-height:1.7;margin-bottom:26px;padding-left:16px;border-left:4px solid var(--primary)}.article-body ul li strong{color:var(--primary)}.project-aside{position:-webkit-sticky;position:sticky;top:100px;display:flex;flex-direction:column;gap:20px}.project-info-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--shadow-sm)}.project-info-card h3{font-size:1.15rem;margin-bottom:14px}.project-info-card ul{list-style:none;padding:0;margin:0}.project-info-card li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);font-size:.95rem}.project-info-card li:last-child{border-bottom:none}.project-info-card li span{color:#94a3b8}.project-info-card li a,.project-info-card li strong{color:var(--heading);font-weight:600;text-align:right}.project-info-card li a:hover{color:var(--primary)}.project-cta-card{background:var(--grad);color:#fff;border-radius:16px;padding:28px;text-align:center;box-shadow:var(--shadow-primary)}.project-cta-card i{font-size:2rem;margin-bottom:10px;display:block}.project-cta-card h4{color:#fff;font-size:1.2rem;margin-bottom:8px}.project-cta-card p{color:hsla(0,0%,100%,.88);font-size:.92rem;margin-bottom:18px}.project-cta-card .btn{background:#fff;color:var(--primary);font-weight:600;width:100%;justify-content:center}.project-cta-card .btn:hover{background:#f0f6ff;color:var(--primary-dark)}.cta-band{background:var(--grad);color:#fff;padding:72px 0;text-align:center}.cta-band h2{color:#fff;font-size:2rem;font-weight:800;margin-bottom:12px}.cta-band p{color:hsla(0,0%,100%,.9);max-width:560px;margin:0 auto 26px}.cta-band .btn-light{background:#fff;color:var(--primary);font-weight:700}.cta-band .btn-light:hover{background:#f0f6ff;color:var(--primary-dark)}@media (max-width:991px){.project-aside{position:static;margin-top:4px}.project-hero-cover{height:240px;font-size:3.4rem}.cta-band{padding:56px 0}.cta-band h2{font-size:1.6rem}}.market-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:36px}.cat-filter.mb-0{margin-bottom:0;justify-content:flex-start}.market-toolbar-right{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.market-search{display:flex;align-items:center;gap:8px;background:var(--light);border:1px solid var(--border);border-radius:50px;padding:8px 16px}.market-search i{color:#94a3b8}.market-search input{border:none;background:transparent;outline:none;font-size:.92rem;width:180px}.market-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all .3s ease}.market-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.market-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.market-icon{width:54px;height:54px;border-radius:14px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.6rem;overflow:hidden;flex-shrink:0}.market-icon img{width:100%;height:100%;object-fit:cover}.market-icon.lg{width:72px;height:72px;font-size:2.2rem;border-radius:18px}.market-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.market-type{font-family:var(--font-head);font-weight:700;font-size:.72rem;padding:4px 10px;border-radius:50px;text-transform:uppercase;letter-spacing:.4px;background:var(--primary-light);color:var(--primary)}.market-type-mcp{background:#e0f2fe;color:#0369a1}.market-type-workflow{background:#ede9fe;color:#6d28d9}.market-price{font-size:.76rem;font-weight:600;color:#16a34a;background:#dcfce7;padding:3px 10px;border-radius:50px}.market-card h3{font-size:1.2rem;margin-bottom:8px;color:var(--heading)}.market-card p{font-size:.94rem;color:var(--body);flex:1 1;margin-bottom:14px}.market-card-foot{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:#94a3b8}.market-cat{background:var(--light);padding:3px 10px;border-radius:50px}.market-detail-head{display:flex;gap:18px;align-items:center;margin-bottom:26px}.market-detail-head h2{font-size:1.7rem;margin:6px 0 4px}.muted-sm{font-size:.86rem;color:#94a3b8}.install-box{background:#0f1b33;border-radius:14px;padding:18px 20px;margin-bottom:28px}.install-label{color:#94a3b8;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.install-cmd{display:flex;align-items:center;justify-content:space-between;gap:12px}.install-cmd code{color:#67e8f9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92rem;overflow-x:auto}.copy-btn{background:hsla(0,0%,100%,.1);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:.82rem;cursor:pointer;white-space:nowrap;transition:background .2s}.copy-btn:hover{background:hsla(0,0%,100%,.2)}.share-backdrop{position:fixed;inset:0;background:rgba(10,31,68,.55);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto}.share-modal{background:#fff;border-radius:18px;width:100%;max-width:640px;padding:28px;box-shadow:0 30px 70px rgba(0,0,0,.3)}.share-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.share-head h3{font-size:1.3rem;margin:0}.share-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--body)}.share-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.share-field{display:flex;flex-direction:column}.share-field.full{grid-column:1/-1}.share-field label{font-family:var(--font-head);font-weight:600;font-size:.86rem;color:var(--heading);margin-bottom:6px}.share-field .req{color:#dc2626}.share-field input,.share-field select,.share-field textarea{border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:.92rem;font-family:inherit;width:100%}.share-field input:focus,.share-field select:focus,.share-field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(21,101,216,.12)}.share-err{background:#fee2e2;color:#b91c1c;padding:10px 14px;border-radius:10px;font-size:.88rem;margin-top:14px}.share-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.share-done{text-align:center;padding:20px 0}.share-done i{font-size:3rem;color:#16a34a;display:block;margin-bottom:14px}.share-done p{margin-bottom:20px;color:var(--body)}@media (max-width:767px){.market-toolbar{flex-direction:column;align-items:stretch}.market-toolbar-right{justify-content:space-between}.market-search{flex:1 1}.market-search input{width:100%}.share-grid{grid-template-columns:1fr}.share-foot{flex-direction:column-reverse}.share-foot .btn{width:100%}}.article-cover{display:flex;align-items:center;justify-content:center;color:#fff}.article-cover-icon{font-size:4rem;opacity:.9}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:.9rem;color:#94a3b8;margin-bottom:20px}.post-meta i{margin-right:4px}.post-cat{background:var(--primary-light);color:var(--primary);font-weight:600;padding:5px 14px;border-radius:50px;font-size:.85rem}.post-cat:hover{background:var(--primary);color:#fff}.post-lead{font-size:1.22rem;line-height:1.75;color:var(--heading);font-weight:500;margin:26px 0;padding-bottom:24px;border-bottom:1px solid var(--border)}.post-footer{flex-wrap:wrap;gap:18px;justify-content:space-between;margin-top:34px;padding:22px 24px;background:var(--light);border-radius:16px}.post-author,.post-footer{display:flex;align-items:center}.post-author{gap:14px}.post-author-avatar{width:48px;height:48px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:1.05rem}.post-author-label{display:block;font-size:.78rem;color:#94a3b8}.post-author strong{color:var(--heading);font-size:1rem}.share-bar{display:flex;align-items:center;gap:8px}.share-bar-label{font-size:.85rem;color:#94a3b8;margin-right:2px}.share-ico{width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:#fff;color:var(--heading);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .2s}.share-ico:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.post-back{margin-top:30px}.newsletter-band{padding:60px 0;background:var(--dark)}.newsletter-band-inner{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0b4da8,#1565d8);border-radius:20px;padding:40px}.newsletter-band h2{color:#fff;font-size:1.6rem;font-weight:800;margin-bottom:8px}.newsletter-band p{color:hsla(0,0%,100%,.85);margin:0;max-width:460px}.newsletter-band .footer-newsletter{max-width:360px}@media (max-width:767px){.post-footer{flex-direction:column;align-items:flex-start}.newsletter-band-inner{padding:28px}.post-lead{font-size:1.1rem}}