/* --- ARIA SYSTEM NAV DROPDOWN, LOGO & MOBILE CSS --- */
.logo { display: flex !important; align-items: center; gap: 12px; text-decoration: none; }
.logo-hex { 
  width: 34px; 
  height: 34px; 
  background: var(--red, #E8192C) !important; 
  display: flex !important; 
  align-items: center; 
  justify-content: center; 
  font-weight: 800; 
  font-size: 13px; 
  color: #fff !important; 
  clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%); 
}
.logo-name { 
  font-weight: 700; 
  font-size: 17px; 
  color: var(--white, var(--white-dim, #F5F5F7)) !important; 
  letter-spacing: -.3px; 
}
.logo-name span { color: var(--red, #E8192C) !important; }

.drop { position: relative; }
.drop:hover .drop-panel { opacity: 1; pointer-events: all; transform: translateY(0); }
.drop-panel { 
  position: absolute; 
  top: 100%; 
  left: -16px; 
  padding-top: 14px; 
  min-width: 280px; 
  opacity: 0; 
  pointer-events: none; 
  transform: translateY(-8px); 
  transition: all .2s; 
  z-index: 999; 
}
.drop-inner { 
  background: var(--b3, var(--black-3, #161618)); 
  border: 1px solid var(--border, rgba(245,245,247,0.08)); 
  border-radius: 12px; 
  padding: 8px; 
  box-shadow: 0 10px 30px rgba(0,0,0,0.5);
}
.drop-inner a { 
  display: flex !important; 
  align-items: center; 
  gap: 12px; 
  padding: 12px 16px; 
  border-radius: 8px; 
  color: var(--w60, var(--white-dim, rgba(245,245,247,0.6))) !important; 
  text-decoration: none; 
  transition: all .2s; 
  margin-bottom: 4px; 
  line-height: 1.4;
}
.drop-inner a:last-child { margin-bottom: 0; }
.drop-inner a:hover { 
  background: var(--w04, var(--white-faint, rgba(245,245,247,0.04))) !important; 
  color: var(--white, #F5F5F7) !important; 
}
.drop-inner a .di { font-size: 18px; flex-shrink: 0; }
.drop-inner a div { display: flex; flex-direction: column; text-align: left; }

/* Mobile Menu Hamburger */
.menu-toggle {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 22px;
  height: 16px;
  cursor: pointer;
  z-index: 1001;
  margin-left: 12px;
}
.menu-toggle span {
  display: block;
  height: 2px;
  width: 100%;
  background-color: var(--white, #F5F5F7);
  border-radius: 2px;
  transition: all 0.3s ease;
}
.menu-toggle.active span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.menu-toggle.active span:nth-child(2) {
  opacity: 0;
}
.menu-toggle.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

@media(max-width: 1024px) {
  .menu-toggle {
    display: flex !important;
  }
  .nav-links {
    display: flex !important;
    flex-direction: column;
    position: fixed;
    top: 0;
    right: -100% !important;
    width: 280px;
    height: 100vh;
    background: rgba(7, 7, 8, 0.98) !important;
    backdrop-filter: blur(24px);
    border-left: 1px solid var(--border, rgba(245, 245, 247, 0.08));
    padding: 100px 32px 40px !important;
    gap: 24px;
    transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    z-index: 998;
    align-items: flex-start;
    box-shadow: -10px 0 30px rgba(0,0,0,0.5);
  }
  .nav-links.active {
    right: 0 !important;
  }
  .nav-links .drop-panel {
    position: static !important;
    opacity: 1 !important;
    pointer-events: all !important;
    transform: none !important;
    display: none;
    min-width: 100%;
    padding-top: 10px;
    background: transparent !important;
  }
  .nav-links .drop.active .drop-panel {
    display: block !important;
  }
  .nav-links .drop-inner {
    background: rgba(245, 245, 247, 0.03) !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
  }
  .nav-links .drop-inner a {
    padding: 10px 0 !important;
    gap: 8px !important;
  }
}
@media(max-width: 640px) {
  .nav-cta .btn-ghost {
    display: none !important;
  }
}
/* --- END ARIA SYSTEM NAV DROPDOWN, LOGO & MOBILE CSS --- */




*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--white);font-family:var(--font-body);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:20px 60px;background:rgba(7,7,8,0.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav-logo-mark{width:36px;height:36px;background:var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:16px;color:white;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}
.nav-logo-text{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--white)}
.nav-logo-text span{color:var(--red)}
.nav-links{display:flex;align-items:center;gap:32px;list-style:none}
.nav-links a{color:var(--white-dim);text-decoration:none;font-size:14px;transition:color 0.2s}
.nav-links a:hover{color:var(--white)}
.btn-red{padding:9px 20px;background:var(--red);border-radius:8px;color:white;text-decoration:none;font-size:13px;font-weight:600}

/* HERO */
.page-hero{padding:140px 60px 80px;position:relative;overflow:hidden;min-height:70vh;display:flex;align-items:center}
.page-hero-bg{position:absolute;inset:0}
.page-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(245,245,247,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(245,245,247,0.03) 1px,transparent 1px);background-size:60px 60px}
.page-hero-glow{position:absolute;width:700px;height:500px;background:radial-gradient(ellipse,rgba(232,25,44,0.12) 0%,transparent 70%);top:-100px;right:0}
.page-hero-content{position:relative;z-index:1;max-width:700px}
.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:24px;font-family:var(--font-mono);font-size:11px;color:var(--white-dim)}
.breadcrumb a{color:var(--white-dim);text-decoration:none}
.breadcrumb a:hover{color:var(--white)}
.breadcrumb span{color:var(--red)}
.service-label{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(232,25,44,0.1);border:1px solid rgba(232,25,44,0.2);border-radius:100px;font-family:var(--font-mono);font-size:11px;color:var(--red);letter-spacing:1px;text-transform:uppercase;margin-bottom:24px}
.page-title{font-family:var(--font-display);font-size:clamp(44px,5.5vw,80px);font-weight:800;line-height:1.05;letter-spacing:-3px;margin-bottom:24px}
.page-title em{color:var(--red);font-style:normal}
.page-sub{font-size:18px;color:var(--white-dim);line-height:1.7;max-width:540px;margin-bottom:40px;font-weight:300}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.btn-primary{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:var(--red);border-radius:10px;color:white;text-decoration:none;font-size:15px;font-weight:600;transition:all 0.25s;box-shadow:0 0 40px rgba(232,25,44,0.3)}
.btn-primary:hover{background:#c41224;transform:translateY(-2px)}
.btn-secondary{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;border:1px solid var(--border);border-radius:10px;color:var(--white-dim);text-decoration:none;font-size:15px;font-weight:500;transition:all 0.25s}
.btn-secondary:hover{border-color:rgba(245,245,247,0.2);color:var(--white);background:var(--white-faint)}

/* CONTENT SECTIONS */
section{padding:80px 60px}
.section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--red);margin-bottom:16px}
.section-title{font-family:var(--font-display);font-size:clamp(32px,3.5vw,48px);font-weight:800;line-height:1.1;letter-spacing:-2px;color:var(--white);margin-bottom:20px}
.section-title em{color:var(--red);font-style:normal}
.section-sub{font-size:16px;color:var(--white-dim);max-width:540px;line-height:1.7;font-weight:300;margin-bottom:0}

/* USE CASES */
.usecases{background:var(--black-2)}
.usecase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}
.usecase-card{background:var(--black-3);border:1px solid var(--border);border-radius:14px;padding:32px;transition:all 0.2s}
.usecase-card:hover{border-color:rgba(232,25,44,0.25);transform:translateY(-4px)}
.usecase-icon{font-size:32px;margin-bottom:20px}
.usecase-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--white);margin-bottom:10px;letter-spacing:-0.3px}
.usecase-desc{font-size:14px;color:var(--white-dim);line-height:1.7;margin-bottom:16px}
.usecase-result{font-family:var(--font-mono);font-size:12px;color:var(--red);padding:6px 12px;background:rgba(232,25,44,0.08);border-radius:6px;display:inline-block}

/* HOW IT WORKS */
.how{background:var(--black)}
.how-steps{margin-top:60px;display:flex;flex-direction:column;gap:0}
.how-step{display:grid;grid-template-columns:80px 1fr;gap:40px;padding:40px 0;border-bottom:1px solid var(--border);align-items:start}
.how-step:last-child{border-bottom:none}
.step-number{font-family:var(--font-display);font-size:48px;font-weight:800;color:var(--red);line-height:1;opacity:0.4}
.step-content{}
.step-title{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--white);margin-bottom:10px;letter-spacing:-0.5px}
.step-desc{font-size:15px;color:var(--white-dim);line-height:1.7;max-width:600px}

/* INTEGRATIONS */
.integrations{background:var(--black-2)}
.integ-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:48px}
.integ-card{background:var(--black-3);border:1px solid var(--border);border-radius:12px;padding:20px;text-align:center;transition:all 0.2s}
.integ-card:hover{border-color:rgba(232,25,44,0.2);background:var(--black-4)}
.integ-icon{font-size:28px;margin-bottom:10px}
.integ-name{font-size:13px;color:var(--white-dim);font-weight:500}

/* RESULTS */
.results{background:var(--black)}
.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:60px;border-radius:16px;overflow:hidden;border:1px solid var(--border)}
.result-item{background:var(--black-2);padding:40px;text-align:center}
.result-num{font-family:var(--font-display);font-size:56px;font-weight:800;color:var(--red);letter-spacing:-3px;line-height:1;margin-bottom:8px}
.result-label{font-size:14px;color:var(--white-dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.result-desc{font-size:13px;color:rgba(245,245,247,0.35)}

/* CTA */
.cta-section{background:var(--black-3);padding:80px 60px;text-align:center;border-top:1px solid var(--border)}
.cta-title{font-family:var(--font-display);font-size:clamp(32px,4vw,56px);font-weight:800;letter-spacing:-2px;margin-bottom:20px}
.cta-sub{font-size:17px;color:var(--white-dim);margin-bottom:40px}
.cta-actions{display:flex;gap:16px;justify-content:center}

/* FOOTER */
footer{background:var(--black);border-top:1px solid var(--border);padding:40px 60px;display:flex;align-items:center;justify-content:space-between}
.footer-copy{font-size:13px;color:var(--white-dim)}
.footer-links-bottom{display:flex;gap:24px}
.footer-links-bottom a{font-size:13px;color:var(--white-dim);text-decoration:none}
.footer-links-bottom a:hover{color:var(--white)}

@media(max-width:1024px){nav{padding:16px 24px}.nav-links{display:none}.page-hero{padding:120px 24px 60px}section{padding:60px 24px}.usecase-grid{grid-template-columns:1fr}.integ-grid{grid-template-columns:repeat(2,1fr)}.results-grid{grid-template-columns:1fr}.how-step{grid-template-columns:1fr;gap:16px}.step-number{font-size:32px}.cta-section{padding:60px 24px}footer{flex-direction:column;gap:16px;padding:32px 24px}}

/* --- ARIA SYSTEM COMPREHENSIVE MOBILE RESPONSIVE FIX --- */
@media (max-width: 1024px) {
  /* Ep toan bo grid va flex ve 1 cot */
  .metrics-inner, .ind-grid, .proc-steps, .process-steps, .blog-cards-grid, 
  .pillar-grid, .grid-2, .grid-3, .grid-4, .testi-grid, .pricing-grid, 
  .hero-stats, .why-table, .why-row {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 20px !important;
  }
}

@media (max-width: 768px) {
  /* Khong che tran ngang toan cuc */
  html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
    position: relative;
  }
  
  /* Giam padding ngang cua tat ca cac phan lon xuong 16px */
  .section, .hero, .cta-banner, .site-footer, .metrics-bar, .why {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  
  nav {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  
  /* Xu ly cac khoi co kich thuoc co dinh gay tran */
  .serp-preview, .serp-box, .terminal, .hero-terminal, .contact-left, .contact-right, .why-cell {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    margin: 20px 0 0 0 !important;
    border-right: none !important;
    border-left: none !important;
  }
  
  /* Dieu chinh terminal va serp preview */
  .hero-terminal, .serp-preview {
    margin-top: 30px !important;
  }
  
  /* Dieu chinh kich thuoc font chu tieu de tranh tran dong */
  h1, .h1, .hero-h1 {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.15 !important;
    letter-spacing: -1px !important;
  }
  
  h2, .h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.5px !important;
  }
  
  /* An cac hieu ung phat sang nen gay loi rendering tren mobile */
  .glow-top, .glow-tr, .hero-glow-1, .hero-glow-2, .cta-glow, .contact-left-glow {
    display: none !important;
  }
  
  /* Bang so sanh (Why Us) tren mobile */
  .why-table {
    border-radius: 12px !important;
  }
  .why-cell {
    padding: 14px 16px !important;
    border-bottom: 1px solid var(--border) !important;
  }
  .why-cell:last-child {
    border-bottom: none !important;
  }
}

@media (max-width: 480px) {
  /* Man hinh cuc nho */
  .section, .hero, .cta-banner, .site-footer, .metrics-bar {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  nav {
    padding: 12px !important;
  }
}
/* --- END ARIA SYSTEM COMPREHENSIVE MOBILE RESPONSIVE FIX --- */

/* FAQ ACCORDION STYLE (INJECTED FOR SEO) */
.faq-section{background:var(--black);padding:90px 60px;border-top:1px solid var(--border)}
.faq-list{display:flex;flex-direction:column;gap:10px;margin-top:56px;max-width:800px;margin-left:auto;margin-right:auto}
.faq-item{background:var(--b2);border:1px solid var(--border);border-radius:var(--r14);overflow:hidden;transition:border-color .2s}
.faq-item:hover{border-color:rgba(232,25,44,.2)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;cursor:pointer;gap:16px}
.faq-q-text{font-size:15px;font-weight:600;color:var(--white)}
.faq-arrow{font-size:18px;color:var(--red);flex-shrink:0;transition:transform .25s}
.faq-item.open .faq-arrow{transform:rotate(180deg)}
.faq-a{font-size:14px;color:var(--w60);line-height:1.75;padding:0 24px 20px;display:none}
.faq-item.open .faq-a{display:block}
@media(max-width:1024px){
  .faq-section{padding:60px 20px}
}




#n8n-chat .chat-toggle{width:56px!important;height:56px!important;bottom:24px!important;right:24px!important;box-shadow:0 8px 32px rgba(232,25,44,0.4)!important}

/* FAQ ACCORDION STYLE (INJECTED FOR SEO) */
.faq-section{background:var(--black);padding:90px 60px;border-top:1px solid var(--border)}
.faq-list{display:flex;flex-direction:column;gap:10px;margin-top:56px;max-width:800px;margin-left:auto;margin-right:auto}
.faq-item{background:var(--b2);border:1px solid var(--border);border-radius:var(--r14);overflow:hidden;transition:border-color .2s}
.faq-item:hover{border-color:rgba(232,25,44,.2)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;cursor:pointer;gap:16px}
.faq-q-text{font-size:15px;font-weight:600;color:var(--white)}
.faq-arrow{font-size:18px;color:var(--red);flex-shrink:0;transition:transform .25s}
.faq-item.open .faq-arrow{transform:rotate(180deg)}
.faq-a{font-size:14px;color:var(--w60);line-height:1.75;padding:0 24px 20px;display:none}
.faq-item.open .faq-a{display:block}
@media(max-width:1024px){
  .faq-section{padding:60px 20px}
}