/* roulang page: index */
:root{
      --brand:#2563EB;
      --brand-2:#2F6FDB;
      --brand-soft:#EAF3FF;
      --bg:#F8FBFF;
      --panel:#FFFFFF;
      --panel-2:#F3F7FB;
      --ink:#101828;
      --text:#475467;
      --muted:#667085;
      --line:rgba(148,163,184,.24);
      --teal:#14B8A6;
      --orange:#F59E0B;
      --radius-xl:24px;
      --radius-2xl:32px;
      --shadow:0 18px 60px rgba(15,23,42,.08);
      --shadow-hover:0 24px 72px rgba(37,99,235,.15);
      --nav-h:78px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
      color:var(--text);
      background:linear-gradient(180deg,#F8FBFF 0%,#FFFFFF 42%,#F3F7FB 100%);
      line-height:1.75;
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:color .22s ease,background .22s ease,transform .22s ease}
    img{display:block;max-width:100%;height:auto}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    ::selection{background:rgba(37,99,235,.16);color:var(--ink)}
    .site-container{width:min(100% - 40px,1240px);margin-inline:auto}
    .section{padding:92px 0}
    .section-tight{padding:72px 0}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 12px;border-radius:999px;
      background:rgba(234,243,255,.88);
      color:#1D4ED8;font-weight:700;font-size:14px;
      border:1px solid rgba(37,99,235,.12);
    }
    .eyebrow:before{
      content:"";width:8px;height:8px;border-radius:999px;
      background:linear-gradient(135deg,var(--teal),var(--brand));
      box-shadow:0 0 0 6px rgba(20,184,166,.10);
    }
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      min-height:46px;padding:12px 20px;border-radius:999px;
      font-weight:750;border:1px solid transparent;
      transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
      white-space:nowrap;
    }
    .btn-primary{
      color:#fff;background:linear-gradient(135deg,var(--brand),#1D4ED8);
      box-shadow:0 14px 32px rgba(37,99,235,.24);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(37,99,235,.30);background:linear-gradient(135deg,#1D4ED8,#1E40AF)}
    .btn-secondary{
      color:#1D4ED8;background:rgba(255,255,255,.78);
      border-color:rgba(37,99,235,.18);
      box-shadow:0 10px 26px rgba(15,23,42,.06);
    }
    .btn-secondary:hover{transform:translateY(-2px);background:#EEF6FF;border-color:rgba(37,99,235,.32)}
    .btn-text{display:inline-flex;align-items:center;gap:6px;color:#1D4ED8;font-weight:750}
    .btn-text span{transition:transform .22s ease}
    .btn-text:hover span{transform:translateX(4px)}
    .focusable:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
      outline:3px solid rgba(37,99,235,.28);outline-offset:3px;
    }
    .glass-header{
      position:fixed;z-index:60;top:14px;left:0;right:0;
      transition:top .25s ease,background .25s ease,box-shadow .25s ease;
      pointer-events:none;
    }
    .nav-shell{
      pointer-events:auto;
      width:min(100% - 40px,1240px);
      margin:0 auto;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.66);
      background:rgba(255,255,255,.68);
      backdrop-filter:blur(18px) saturate(160%);
      -webkit-backdrop-filter:blur(18px) saturate(160%);
      box-shadow:0 14px 44px rgba(15,23,42,.08);
      padding:10px 12px 10px 16px;
    }
    .glass-header.scrolled{top:0}
    .glass-header.scrolled .nav-shell{
      width:100%;
      max-width:none;
      border-radius:0;
      border-left:0;border-right:0;border-top:0;
      background:rgba(255,255,255,.94);
      box-shadow:0 12px 36px rgba(15,23,42,.10);
      padding-inline:max(20px,calc((100vw - 1240px)/2 + 12px));
    }
    .brand-mark{
      width:42px;height:42px;border-radius:15px;
      background:linear-gradient(135deg,#2563EB 0%,#14B8A6 100%);
      color:#fff;display:grid;place-items:center;
      font-weight:900;letter-spacing:-.04em;
      box-shadow:0 12px 26px rgba(37,99,235,.22);
      flex:0 0 auto;
    }
    .nav-link{
      display:inline-flex;align-items:center;min-height:38px;
      padding:8px 13px;border-radius:999px;
      color:#344054;font-weight:700;font-size:14px;
    }
    .nav-link:hover,.nav-link.active{color:#1D4ED8;background:rgba(37,99,235,.08)}
    .nav-search{
      display:flex;align-items:center;gap:8px;
      min-width:190px;height:42px;padding:0 13px;
      border-radius:999px;background:rgba(248,251,255,.78);
      border:1px solid rgba(148,163,184,.22);
      color:#667085;
    }
    .nav-search input{width:100%;border:0;outline:0;background:transparent;color:#344054;font-size:14px}
    .mobile-panel{
      display:none;overflow:hidden;border-top:1px solid var(--line);
      margin-top:10px;padding-top:12px;
    }
    .mobile-panel.open{display:block}
    .hero{
      position:relative;min-height:760px;padding:150px 0 86px;
      overflow:hidden;
      background:
        radial-gradient(circle at 16% 18%,rgba(37,99,235,.18),transparent 32%),
        radial-gradient(circle at 85% 24%,rgba(20,184,166,.12),transparent 30%),
        linear-gradient(135deg,rgba(248,251,255,.96),rgba(255,255,255,.82)),
        url('/assets/images/backpic/back-1.webp') center/cover no-repeat;
    }
    .hero:before{
      content:"";position:absolute;inset:0;
      background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);
      background-size:34px 34px;
      mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.7) 52%,transparent 100%);
      pointer-events:none;
    }
    .hero:after{
      content:"NG28";position:absolute;right:-30px;bottom:36px;
      font-size:168px;line-height:1;font-weight:900;letter-spacing:-.08em;
      color:rgba(37,99,235,.055);pointer-events:none;
    }
    .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}
    .hero h1{
      margin:20px 0 20px;color:var(--ink);
      font-size:clamp(38px,5vw,64px);line-height:1.12;
      letter-spacing:-.045em;font-weight:850;
    }
    .hero-lead{font-size:18px;color:#475467;max-width:640px}
    .trust-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
    .trust-chip{
      display:inline-flex;align-items:center;gap:8px;
      padding:9px 12px;border-radius:999px;
      background:rgba(255,255,255,.72);border:1px solid rgba(148,163,184,.22);
      color:#475467;font-weight:650;font-size:14px;
    }
    .trust-chip i{width:9px;height:9px;border-radius:999px;background:var(--teal)}
    .dashboard{
      position:relative;border-radius:34px;padding:18px;
      background:rgba(255,255,255,.64);
      border:1px solid rgba(255,255,255,.72);
      backdrop-filter:blur(16px);
      box-shadow:0 28px 80px rgba(15,23,42,.13);
    }
    .dashboard-main{
      border-radius:26px;background:linear-gradient(180deg,#fff,#F8FBFF);
      border:1px solid rgba(148,163,184,.20);
      padding:24px;overflow:hidden;position:relative;
    }
    .mini-card{
      border-radius:22px;background:#fff;border:1px solid rgba(148,163,184,.18);
      box-shadow:0 12px 34px rgba(15,23,42,.07);
      padding:18px;
    }
    .progress-bar{height:9px;border-radius:999px;background:#EAF3FF;overflow:hidden}
    .progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}
    .floating-card{
      position:absolute;left:-18px;bottom:58px;width:206px;
      background:rgba(255,255,255,.90);border:1px solid rgba(148,163,184,.22);
      border-radius:24px;padding:16px;box-shadow:0 20px 50px rgba(15,23,42,.11);
    }
    .card{
      background:rgba(255,255,255,.92);
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow);
      transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;
    }
    .card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);border-color:rgba(37,99,235,.24)}
    .icon-box{
      width:48px;height:48px;border-radius:17px;
      display:grid;place-items:center;
      background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(20,184,166,.12));
      color:#1D4ED8;font-weight:900;
    }
    .tag{
      display:inline-flex;align-items:center;border-radius:999px;
      padding:6px 10px;font-size:13px;font-weight:750;
      color:#1D4ED8;background:#EAF3FF;border:1px solid rgba(37,99,235,.10);
    }
    .tag-teal{color:#0F766E;background:rgba(20,184,166,.10);border-color:rgba(20,184,166,.16)}
    .tag-orange{color:#B45309;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.16)}
    .image-card{overflow:hidden}
    .image-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
    .image-card:hover img{transform:scale(1.055)}
    .stat-card{
      position:relative;overflow:hidden;
      background:#fff;border:1px solid rgba(148,163,184,.20);
      border-radius:26px;padding:24px;box-shadow:0 14px 40px rgba(15,23,42,.06);
    }
    .stat-card:after{
      content:"";position:absolute;right:-30px;top:-30px;width:98px;height:98px;border-radius:999px;background:rgba(37,99,235,.08)
    }
    .stat-num{font-size:clamp(34px,4vw,50px);line-height:1;font-weight:900;letter-spacing:-.05em;color:#1D4ED8}
    .case-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
    .solution-card{border-radius:28px;border:1px solid rgba(148,163,184,.22);box-shadow:0 14px 45px rgba(15,23,42,.06);transition:.22s ease}
    .solution-card:hover{transform:translateY(-4px);box-shadow:0 22px 60px rgba(37,99,235,.12)}
    .timeline-step{position:relative;padding-left:34px}
    .timeline-step:before{
      content:"";position:absolute;left:7px;top:9px;bottom:-28px;width:2px;background:#DCEBFF
    }
    .timeline-step:last-child:before{display:none}
    .timeline-step:after{
      content:"";position:absolute;left:0;top:8px;width:16px;height:16px;border-radius:999px;background:#fff;border:4px solid var(--brand)
    }
    .faq-item{
      border:1px solid rgba(148,163,184,.22);border-radius:22px;background:#fff;
      overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.045);
    }
    .faq-question{
      width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
      padding:20px 22px;color:var(--ink);font-weight:800;text-align:left;
    }
    .faq-icon{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#EAF3FF;color:#1D4ED8;transition:transform .22s ease}
    .faq-answer{display:none;padding:0 22px 20px;color:#475467}
    .faq-item.open{background:linear-gradient(180deg,#fff,#F8FBFF);border-color:rgba(37,99,235,.22)}
    .faq-item.open .faq-answer{display:block}
    .faq-item.open .faq-icon{transform:rotate(45deg)}
    .cta-panel{
      position:relative;overflow:hidden;border-radius:34px;
      background:
        radial-gradient(circle at 20% 20%,rgba(255,255,255,.58),transparent 34%),
        linear-gradient(135deg,#2563EB,#14B8A6);
      color:#fff;box-shadow:0 26px 76px rgba(37,99,235,.24);
    }
    .cta-panel:after{
      content:"";position:absolute;right:-80px;bottom:-110px;width:280px;height:280px;border-radius:999px;
      border:44px solid rgba(255,255,255,.13)
    }
    .form-field{
      width:100%;height:48px;border-radius:16px;border:1px solid rgba(148,163,184,.22);
      background:#fff;padding:0 14px;color:#344054;outline:0;transition:border-color .2s ease,box-shadow .2s ease;
    }
    .form-field:focus{border-color:rgba(37,99,235,.54);box-shadow:0 0 0 4px rgba(37,99,235,.12)}
    .footer{
      background:#111827;color:#D0D5DD;position:relative;overflow:hidden;
    }
    .footer:before{
      content:"";position:absolute;inset:0;
      background:radial-gradient(circle at 18% 0%,rgba(37,99,235,.18),transparent 32%),radial-gradient(circle at 88% 20%,rgba(20,184,166,.14),transparent 28%);
      pointer-events:none;
    }
    .footer a:hover{color:#93C5FD}
    .footer-line{border-color:rgba(255,255,255,.10)}
    @media (max-width:1024px){
      .site-container{width:min(100% - 32px,960px)}
      .hero{min-height:auto;padding-top:132px}
      .hero-grid{grid-template-columns:1fr;gap:36px}
      .case-grid{grid-template-columns:1fr}
      .desktop-nav,.desktop-actions{display:none!important}
      .mobile-menu-btn{display:inline-flex!important}
      .nav-shell{border-radius:28px}
      .glass-header.scrolled .nav-shell{padding-inline:16px}
      .floating-card{left:auto;right:14px;bottom:24px}
    }
    @media (max-width:768px){
      .section{padding:68px 0}
      .section-tight{padding:56px 0}
      .site-container{width:min(100% - 28px,720px)}
      .hero{padding:118px 0 64px}
      .hero h1{font-size:clamp(34px,10vw,44px)}
      .hero-lead{font-size:16px}
      .dashboard{padding:10px;border-radius:26px}
      .dashboard-main{padding:18px;border-radius:22px}
      .floating-card{position:relative;right:auto;bottom:auto;left:auto;width:100%;margin-top:14px}
      .nav-shell{width:min(100% - 22px,720px);padding:9px 10px}
      .glass-header.scrolled .nav-shell{width:100%}
      .btn{width:100%;white-space:normal}
      .hero-actions{display:grid!important;grid-template-columns:1fr;gap:12px}
      .cta-panel{border-radius:26px}
    }
    @media (max-width:520px){
      .brand-sub{display:none}
      .brand-mark{width:40px;height:40px}
      .trust-row{gap:8px}
      .trust-chip{font-size:13px;padding:8px 10px}
      .stat-card{padding:20px}
      .faq-question{padding:18px}
      .faq-answer{padding:0 18px 18px}
    }

/* roulang page: category1 */
:root{
  --bg: #F8FBFF;
  --bg-2: #F3F7FB;
  --card: rgba(255,255,255,.82);
  --card-strong: #FFFFFF;
  --line: rgba(148,163,184,.20);
  --line-2: rgba(37,99,235,.14);
  --primary: #2563EB;
  --primary-2: #2F6FDB;
  --primary-soft: rgba(37,99,235,.08);
  --accent: #14B8A6;
  --warning: #F59E0B;
  --text: #101828;
  --text-2: #475467;
  --text-3: #667085;
  --footer: #0F172A;
  --radius-xl: 24px;
  --radius-2xl: 32px;
  --shadow-soft: 0 18px 60px rgba(15,23,42,.08);
  --shadow-card: 0 16px 42px rgba(37,99,235,.10);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 20% 0%, rgba(37,99,235,.08), transparent 30%),
    radial-gradient(circle at 85% 10%, rgba(20,184,166,.05), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #F8FBFF 48%, #F3F7FB 100%);
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; }
button, input, textarea{
  font:inherit;
}
button{
  cursor:pointer;
}
::selection{
  background:rgba(37,99,235,.18);
  color:#0F172A;
}
.site-container{
  width:min(100% - 2rem, 1240px);
  margin-inline:auto;
}
.glass-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:60;
  padding:1rem 0 0;
  transition:all .28s ease;
}
.glass-header.scrolled{
  padding-top:.65rem;
}
.nav-shell{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:.75rem;
  padding:.95rem 1rem;
  border:1px solid rgba(255,255,255,.55);
  border-radius:9999px;
  background:rgba(255,255,255,.70);
  backdrop-filter:blur(18px) saturate(160%);
  box-shadow:0 18px 60px rgba(15,23,42,.08);
  transition:all .28s ease;
}
.glass-header.scrolled .nav-shell{
  background:rgba(255,255,255,.94);
  border-color:rgba(148,163,184,.20);
  box-shadow:0 20px 56px rgba(15,23,42,.12);
}
.brand-mark{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  color:#fff;
  font-weight:800;
  letter-spacing:-.02em;
  background:linear-gradient(135deg, var(--primary), #4F8CFF 54%, var(--accent));
  box-shadow:0 12px 24px rgba(37,99,235,.24);
  flex:none;
}
.brand-sub{
  letter-spacing:.02em;
}
.nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:.55rem .95rem;
  border-radius:9999px;
  color:#334155;
  font-size:.98rem;
  font-weight:600;
  transition:all .22s ease;
}
.nav-link:hover,
.nav-link:focus-visible,
.nav-link.active{
  color:var(--primary);
  background:var(--primary-soft);
  outline:none;
}
.nav-link.active{
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.10);
}
.nav-search{
  display:flex;
  align-items:center;
  gap:.6rem;
  min-width:260px;
  height:42px;
  padding:0 .9rem;
  border:1px solid rgba(148,163,184,.20);
  border-radius:9999px;
  background:rgba(255,255,255,.82);
  color:#64748B;
  transition:all .22s ease;
}
.nav-search:focus-within{
  border-color:rgba(37,99,235,.35);
  box-shadow:0 0 0 4px rgba(37,99,235,.10);
}
.nav-search input{
  width:100%;
  border:none;
  outline:none;
  background:transparent;
  color:#0F172A;
}
.nav-search input::placeholder{
  color:#94A3B8;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:46px;
  padding:.78rem 1.2rem;
  border-radius:9999px;
  border:1px solid transparent;
  font-weight:700;
  letter-spacing:-.01em;
  transition:all .22s ease;
  will-change:transform;
}
.btn:hover,
.btn:focus-visible{
  transform:translateY(-2px);
  outline:none;
}
.btn-primary{
  color:#fff;
  background:linear-gradient(135deg, var(--primary), var(--primary-2));
  box-shadow:0 16px 34px rgba(37,99,235,.22);
}
.btn-primary:hover,
.btn-primary:focus-visible{
  box-shadow:0 18px 40px rgba(37,99,235,.28);
}
.btn-secondary{
  color:var(--primary);
  background:rgba(255,255,255,.92);
  border-color:rgba(37,99,235,.16);
  box-shadow:0 12px 24px rgba(15,23,42,.05);
}
.btn-secondary:hover,
.btn-secondary:focus-visible{
  background:#ECF4FF;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.42rem .82rem;
  border-radius:9999px;
  border:1px solid rgba(37,99,235,.12);
  background:rgba(255,255,255,.72);
  color:var(--primary);
  font-size:.88rem;
  font-weight:700;
  letter-spacing:.01em;
}
.section{
  padding:clamp(3.5rem, 6vw, 6.5rem) 0;
}
.section-soft{
  background:linear-gradient(180deg, rgba(255,255,255,.55), rgba(243,247,251,.88));
}
.section-title{
  font-size:clamp(1.75rem, 3vw, 2.65rem);
  line-height:1.16;
  letter-spacing:-.03em;
  color:var(--text);
  font-weight:800;
}
.section-desc{
  color:var(--text-3);
  font-size:1rem;
  line-height:1.8;
}
.hero-shell{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(148,163,184,.12);
}
.hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(248,251,255,.70), rgba(248,251,255,.84)),
    url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
  filter:saturate(1.02);
}
.hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 16% 24%, rgba(37,99,235,.10), transparent 28%),
    radial-gradient(circle at 90% 10%, rgba(20,184,166,.08), transparent 24%),
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.18));
  pointer-events:none;
}
.hero-grid{
  position:relative;
}
.hero-panel{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.70);
  box-shadow:var(--shadow-soft);
  backdrop-filter:blur(14px) saturate(150%);
}
.soft-card{
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  transition:all .25s ease;
}
.soft-card:hover{
  transform:translateY(-3px);
  border-color:rgba(37,99,235,.18);
  box-shadow:0 22px 64px rgba(15,23,42,.10);
}
.content-card{
  overflow:hidden;
  background:var(--card-strong);
  border:1px solid var(--line);
  border-radius:1.5rem;
  box-shadow:var(--shadow-soft);
  transition:all .26s ease;
}
.content-card:hover{
  transform:translateY(-4px);
  border-color:rgba(37,99,235,.20);
  box-shadow:0 24px 64px rgba(15,23,42,.11);
}
.card-media{
  overflow:hidden;
  background:#EAF3FF;
}
.card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s ease;
}
.content-card:hover .card-media img{
  transform:scale(1.05);
}
.sidebar-card{
  background:rgba(255,255,255,.90);
  border:1px solid rgba(148,163,184,.18);
  border-radius:1.5rem;
  box-shadow:var(--shadow-soft);
}
.kbd{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:2rem;
  height:2rem;
  padding:0 .6rem;
  border-radius:9999px;
  background:#EFF6FF;
  color:var(--primary);
  font-weight:800;
}
.topic-chip{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.62rem .95rem;
  border-radius:9999px;
  border:1px solid rgba(37,99,235,.12);
  background:rgba(255,255,255,.82);
  color:#334155;
  font-size:.95rem;
  font-weight:650;
  transition:all .22s ease;
}
.topic-chip:hover,
.topic-chip:focus-visible{
  color:var(--primary);
  border-color:rgba(37,99,235,.22);
  background:#EFF6FF;
  transform:translateY(-1px);
  outline:none;
}
.topic-chip.active{
  background:linear-gradient(135deg, rgba(37,99,235,.12), rgba(20,184,166,.08));
  border-color:rgba(37,99,235,.22);
  color:var(--primary);
}
.metric{
  border-radius:1.25rem;
  padding:1.1rem 1.15rem;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(239,246,255,.88));
  border:1px solid rgba(37,99,235,.10);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.metric strong{
  display:block;
  color:var(--primary);
  font-size:clamp(1.5rem, 3vw, 2.25rem);
  line-height:1;
  letter-spacing:-.03em;
  font-weight:900;
}
.metric span{
  display:block;
  margin-top:.45rem;
  color:var(--text-2);
  font-size:.92rem;
  line-height:1.5;
}
.process-step{
  position:relative;
  padding:1.4rem 1.35rem;
  border-radius:1.5rem;
  background:#fff;
  border:1px solid rgba(148,163,184,.18);
  box-shadow:var(--shadow-soft);
}
.process-step::before{
  content:"";
  position:absolute;
  inset:auto auto 100% 1.5rem;
  width:1px;
  height:28px;
  background:linear-gradient(180deg, rgba(37,99,235,.35), rgba(20,184,166,.10));
}
.process-step:first-child::before{ display:none; }
.faq-item{
  overflow:hidden;
  border-radius:1.25rem;
  border:1px solid rgba(148,163,184,.18);
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.faq-toggle{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1.15rem 1.2rem;
  text-align:left;
  background:transparent;
  color:var(--text);
  font-weight:700;
}
.faq-toggle:focus-visible{
  outline:none;
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.18);
}
.faq-icon{
  flex:none;
  width:2rem;
  height:2rem;
  border-radius:9999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--primary);
  background:#EFF6FF;
  transition:transform .24s ease;
}
.faq-item.open .faq-icon{
  transform:rotate(45deg);
}
.faq-panel{
  max-height:0;
  opacity:0;
  overflow:hidden;
  transition:max-height .32s ease, opacity .24s ease;
}
.faq-item.open .faq-panel{
  max-height:240px;
  opacity:1;
}
.faq-panel > div{
  padding:0 1.2rem 1.15rem;
  color:var(--text-2);
}
.footer{
  background:
    linear-gradient(180deg, rgba(15,23,42,.98), rgba(15,23,42,.94)),
    radial-gradient(circle at 20% 0%, rgba(37,99,235,.24), transparent 32%);
  color:#E2E8F0;
}
.footer a{
  color:#CBD5E1;
  transition:color .22s ease, transform .22s ease;
}
.footer a:hover,
.footer a:focus-visible{
  color:#FFFFFF;
  transform:translateX(2px);
  outline:none;
}
.footer .brand-mark{
  box-shadow:none;
}
.footer-line{
  border-color:rgba(148,163,184,.18);
}
.mobile-panel{
  max-height:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  transform:translateY(-6px);
  transition:max-height .3s ease, opacity .25s ease, transform .25s ease;
}
.mobile-panel.open{
  max-height:520px;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.hero-fade{
  background:linear-gradient(180deg, rgba(248,251,255,.12), rgba(248,251,255,1));
}
.focus-ring:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px rgba(37,99,235,.14);
}
@media (max-width: 1024px){
  .nav-shell{
    border-radius:1.5rem;
    padding:1rem;
  }
  .nav-search{
    min-width:0;
    width:100%;
  }
}
@media (max-width: 768px){
  .section{
    padding:3.5rem 0;
  }
  .glass-header{
    padding-top:.75rem;
  }
}
