/* ==========================================================================
   Dmedia Marketing — main.css
   Master stylesheet assembled from the approved static design-system samples
   (home.html, services.html, service-detail.html, solution-detail.html,
   industry-detail.html, location-country.html, work-hub.html,
   case-study-detail.html, about.html, blog-hub.html, blog-single.html,
   tools-hub.html, tool-ai-readiness.html, tool-roi-calculator.html,
   faq-hub.html, contact.html, thank-you.html, 404.html).
   Dark theme system: #0B0C0E background, Space Grotesk + Inter, #F47C30 accent.
   ========================================================================== */


/* ============================== from home.html ============================== */
  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}

  /* Nav */
  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  /* Hero */
  .hero{position:relative; overflow:hidden; padding:96px 0 88px; border-bottom:1px solid var(--border-soft);}
  .hero::before{content:""; position:absolute; top:-220px; right:-160px; width:620px; height:620px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.18), rgba(244,124,48,0) 70%); pointer-events:none; animation:heroBlobDrift 16s ease-in-out infinite alternate;}
  .hero::after{content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px); background-size:26px 26px; -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,0.5), transparent 75%); mask-image:linear-gradient(to bottom, rgba(0,0,0,0.5), transparent 75%); pointer-events:none; animation:dotDrift 46s linear infinite;}
  @keyframes heroBlobDrift{0%{transform:translate(0,0) scale(1);}100%{transform:translate(-30px,24px) scale(1.08);}}
  @keyframes dotDrift{0%{background-position:0 0;}100%{background-position:-260px 260px;}}
  .hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:center;}
  .hero h1{font-size:56px; line-height:1.06;}
  .hero-sub{font-size:17px; line-height:1.6; color:var(--text-soft); max-width:520px; margin-top:22px;}
  .hero-ctas{display:flex; gap:16px; margin-top:32px; flex-wrap:wrap;}
  .growth-os{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px 30px;}
  .growth-os .label{font-size:11px; letter-spacing:0.1em; color:var(--text-faint); font-weight:600; margin-bottom:18px;}
  .os-step{display:flex; align-items:center; gap:14px;}
  .os-icon{width:34px; height:34px; border-radius:9px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0;}
  .os-icon.accent{background:var(--accent-soft); border-color:var(--accent); color:var(--accent);}
  .os-name{font-size:14px; font-weight:500;}
  .os-name.accent{color:var(--accent); font-weight:600;}
  .os-line{width:1px; height:26px; margin-left:17px; background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.5) 45%, rgba(255,255,255,0.06)); background-size:100% 260%; animation:osFlow 3.2s linear infinite;}
  .os-line.accent{background:linear-gradient(180deg, rgba(244,124,48,0.18), var(--accent) 45%, rgba(244,124,48,0.18)); background-size:100% 260%;}
  @keyframes osFlow{0%{background-position:0 0;}100%{background-position:0 -160%;}}

  /* Trust */
  .trust{padding:40px 0; border-bottom:1px solid var(--border-soft);}
  .trust .label{font-size:11px; letter-spacing:0.1em; color:var(--text-faint); font-weight:600; margin-bottom:18px;}
  .logo-row{display:flex; gap:14px; flex-wrap:wrap;}
  .logo-pill{width:128px; height:40px; border:1px solid var(--border); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:11px; color:var(--text-faint);}

  /* Problem */
  .section{padding:88px 0; border-bottom:1px solid var(--border-soft);}
  .section-head{max-width:680px; margin-bottom:40px;}
  .section-head h2{font-size:36px; margin-top:14px; line-height:1.15;}
  .problem-list{display:grid; grid-template-columns:1fr 1fr; gap:0 48px;}
  .problem-list li{padding:16px 0; border-top:1px solid var(--border-soft); font-size:15px; color:#D6D5D1;}
  .problem-list li:nth-last-child(-n+2){border-bottom:1px solid var(--border-soft);}
  .equation{display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:32px;}
  .chip{font-size:13px; font-weight:600; padding:9px 16px; border-radius:999px; background:var(--surface-2); color:#E7E6E2;}
  .chip.accent{background:var(--accent-soft); color:var(--accent);}
  .equation .plus{color:var(--text-faint);}
  .equation .result{font-size:14px; color:var(--text-soft); margin-left:4px;}

  /* Capabilities */
  .cap-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:20px;}
  .cap-card{border:1px solid var(--border); border-radius:18px; padding:28px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .cap-card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .cap-top{display:flex; align-items:center; justify-content:space-between;}
  .cap-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .cap-num.accent{color:var(--accent);}
  .cap-icon{width:84px; height:40px; border-radius:8px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center;}
  .cap-title{font-size:20px; font-weight:600;}
  .cap-desc{font-size:13px; color:var(--text-soft); line-height:1.7;}

  /* Method */
  .method-track{position:relative; display:flex; justify-content:space-between; padding-top:10px; flex-wrap:wrap; gap:24px;}
  .method-track::before{content:""; position:absolute; top:21px; left:40px; right:40px; height:1px; background:rgba(255,255,255,0.12);}
  .method-step{display:flex; flex-direction:column; gap:16px; width:18%; min-width:150px;}
  .method-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .method-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .method-step h3{font-size:17px;}
  .method-step p{font-size:13px; color:var(--text-soft); line-height:1.6;}

  /* AI showcase */
  .ai-showcase{background:rgba(255,255,255,0.015);}
  .flow-row{display:flex; align-items:center; justify-content:space-between; gap:6px; margin-top:40px; flex-wrap:wrap;}
  .flow-node{display:flex; flex-direction:column; align-items:center; gap:10px; width:90px;}
  .flow-icon{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .flow-icon.accent{width:64px; height:64px; background:var(--accent-soft); border-color:var(--accent); color:var(--accent); font-size:20px;}
  .flow-node span.name{font-size:11px; text-align:center; color:#D6D5D1;}
  .flow-node span.name.accent{color:var(--accent); font-weight:600;}
  .flow-arrow{color:#4C4B48; font-size:16px;}
  .flow-note{margin:28px auto 0; max-width:460px; text-align:center; background:var(--bg-alt); border:1px solid var(--border); border-radius:12px; padding:14px 20px; font-size:12px; color:var(--text-soft);}
  .flow-note strong{color:var(--accent); font-weight:600;}

  /* Interactive demo */
  .demo-grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
  .demo-copy p{font-size:13px; color:var(--text-soft); line-height:1.6; margin-top:16px;}
  .demo-copy .btn{margin-top:22px;}
  .demo-card{background:var(--bg-alt); border:1px solid var(--border); border-radius:18px; padding:26px; display:flex; flex-direction:column; gap:18px;}
  .demo-bubble{background:var(--surface-2); border-radius:12px; padding:14px 16px; font-size:13px; align-self:flex-start; max-width:90%;}
  .demo-steps{display:flex; flex-direction:column; gap:10px; background:var(--accent-soft); border:1px solid var(--accent); border-radius:12px; padding:16px 18px;}
  .demo-steps div{display:flex; align-items:center; gap:10px; font-size:13px;}
  .demo-steps span{color:var(--accent); font-weight:600;}

  /* Industries */
  .industries-row{display:flex; align-items:baseline; gap:40px; flex-wrap:wrap;}
  .industries-row p{font-size:15px; color:#C7C6C2; line-height:1.9;}

  /* Why us */
  .why-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:36px;}
  .why-num{font-family:'Space Grotesk',sans-serif; font-size:34px; font-weight:700; color:var(--accent);}
  .why-card h3{font-size:15px; margin-top:10px;}
  .why-card p{font-size:13px; color:var(--text-soft); line-height:1.6; margin-top:6px;}

  /* Blog */
  .blog-head{display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:30px;}
  .blog-head a{font-size:13px; color:var(--text-soft);}
  .blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .blog-card{border:1px solid var(--border); border-radius:14px; padding:22px; background:var(--surface); display:flex; flex-direction:column; gap:30px; justify-content:space-between; min-height:140px;}
  .blog-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600;}
  .blog-card h3{font-size:15px; font-weight:600; line-height:1.4;}

  /* Final CTA */
  .final-cta{position:relative; overflow:hidden; padding:110px 0; text-align:center; border-bottom:1px solid var(--border-soft);}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:640px; margin:0 auto;}
  .final-cta h2{font-size:42px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:18px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:28px;}

  /* Footer */
  footer.site{padding:56px 0 32px;}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--text-soft); transition:border-color .15s ease, color .15s ease, transform .15s ease;}
  .social-pill svg{width:16px; height:16px; fill:currentColor;}
  .social-pill:hover{border-color:var(--accent); color:var(--accent); transform:translateY(-2px);}
  .stats-strip{display:flex; gap:56px; flex-wrap:wrap;}
  .stat-item{display:flex; align-items:baseline; gap:14px;}
  .stat-num{font-family:'Space Grotesk',sans-serif; font-size:38px; font-weight:700; color:var(--accent); min-width:56px;}
  .stat-label{font-size:13px; color:var(--text-soft); max-width:280px; line-height:1.55;}
  .foot-cols{display:flex; gap:56px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .hero-grid{grid-template-columns:1fr;}
    .hero h1{font-size:38px;}
    .problem-list{grid-template-columns:1fr;}
    .cap-grid{grid-template-columns:1fr;}
    .method-track{flex-direction:column;}
    .method-track::before{display:none;}
    .method-step{width:100%;}
    .demo-grid{grid-template-columns:1fr;}
    .why-grid{grid-template-columns:1fr 1fr;}
    .blog-grid{grid-template-columns:1fr;}
    .flow-row{justify-content:flex-start;}
    .foot-cols{gap:32px;}
  }

  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
    .hero::before, .hero::after, .os-line{animation:none !important;}
    .social-pill{transition:none;}
  }

/* ============================== from services.html ============================== */
  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-secondary{background:transparent; color:var(--text); border:1px solid rgba(255,255,255,0.18);}
  .btn-small{padding:10px 18px; font-size:13px;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  /* Page hero */
  .page-hero{padding:88px 0 64px; border-bottom:1px solid var(--border-soft);}
  .page-hero h1{font-size:52px; line-height:1.08; max-width:760px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:600px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px;}

  .section{padding:0; border-bottom:1px solid var(--border-soft);}
  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:72px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:30px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:420px;}
  .service-tags{display:flex; flex-wrap:wrap; gap:8px; margin-top:20px;}
  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px;}
  .service-block .btn{margin-top:26px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:280px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  /* mini visuals */
  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint);}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:44px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .service-defs{margin-top:18px; display:flex; flex-direction:column; gap:10px;}
  .service-defs li{font-size:13px; color:var(--text-soft); line-height:1.65; padding-left:20px; position:relative; max-width:460px;}
  .service-defs li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}
  .service-defs strong{color:var(--text);}
  .viz-yield{width:100%;}
  .viz-yield .yield-labels{display:flex; justify-content:space-between; margin-top:14px; font-size:11px; color:var(--text-faint); letter-spacing:0.04em; text-transform:uppercase;}

  /* Process strip */
  .process{padding:80px 0;}
  .process h2{font-size:30px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:44px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .final-cta{position:relative; overflow:hidden; padding:100px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:600px; margin:0 auto;}
  .final-cta h2{font-size:38px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px;}

  footer.site{padding:48px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}
  .foot-bottom a:hover{color:var(--text-soft);}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:36px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn{transition:none;}
  }

/* ============================== from service-detail.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .who-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .who-card{border:1px solid var(--border); border-radius:14px; padding:22px; background:var(--surface);}
  .who-card h3{font-size:15px; margin-bottom:8px;}
  .who-card p{font-size:13px; color:var(--text-soft); line-height:1.6;}
  .problem-solution{display:grid; grid-template-columns:1fr 1fr; gap:32px;}
  .ps-col h3{font-size:14px; color:var(--text-faint); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:16px;}
  .ps-col ul{display:flex; flex-direction:column; gap:12px;}
  .ps-col li{font-size:14px; color:#D6D5D1; line-height:1.6; padding-left:22px; position:relative;}
  .ps-col.problem li::before{content:"\2715"; position:absolute; left:0; color:var(--text-faint);}
  .ps-col.solution li::before{content:"\2713"; position:absolute; left:0; color:var(--accent);}
  .deliv-list{display:grid; grid-template-columns:1fr 1fr; gap:12px 32px;}
  .deliv-list li{font-size:14px; color:#D6D5D1; padding:12px 0; border-top:1px solid var(--border-soft);}
  .tech-row{display:flex; flex-wrap:wrap; gap:10px;}
  .related-cols{display:grid; grid-template-columns:1fr 1fr; gap:32px;}
  .related-cols h3{font-size:13px; text-transform:uppercase; letter-spacing:0.06em; color:var(--text-faint); margin-bottom:14px;}
  .related-cols ul{display:flex; flex-direction:column; gap:10px;}
  .related-cols a{font-size:14px; color:var(--text-soft);}
  .related-cols a:hover{color:var(--accent);}
  @media (max-width:900px){
    .who-grid{grid-template-columns:1fr;}
    .problem-solution, .deliv-list, .related-cols{grid-template-columns:1fr;}
  }


/* ============================== from solution-detail.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .opp-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .rec-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .rec-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .rec-card .num{font-family:'Space Grotesk',sans-serif; color:var(--accent); font-size:13px; font-weight:600;}
  .rec-card h3{font-size:17px;}
  .rec-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}
  .rec-card a{font-size:13px; color:var(--accent); margin-top:auto;}
  .next-step{border:1px solid var(--accent); background:var(--accent-soft); border-radius:18px; padding:32px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;}
  .next-step h3{font-size:20px; color:var(--text);}
  .next-step p{font-size:13.5px; color:var(--text-soft); margin-top:8px;}
  @media (max-width:900px){ .opp-grid, .rec-cards{grid-template-columns:1fr;} }


/* ============================== from industry-detail.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .challenge-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:20px;}
  .opp-table{display:flex; flex-direction:column; gap:1px; background:var(--border-soft); border:1px solid var(--border-soft); border-radius:14px; overflow:hidden;}
  .opp-row{display:grid; grid-template-columns:180px 1fr; gap:20px; background:var(--surface); padding:20px 22px;}
  .opp-row .lbl{font-family:'Space Grotesk',sans-serif; font-size:14px; font-weight:600; color:var(--accent);}
  .opp-row p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}
  @media (max-width:900px){ .challenge-grid{grid-template-columns:1fr;} .opp-row{grid-template-columns:1fr; gap:8px;} }


/* ============================== from location-country.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .local-info{display:grid; grid-template-columns:1fr 1fr; gap:40px;}
  .info-list{display:flex; flex-direction:column; gap:0;}
  .info-list li{display:flex; justify-content:space-between; gap:16px; font-size:13.5px; padding:14px 0; border-top:1px solid var(--border-soft);}
  .info-list li span:first-child{color:var(--text-faint);}
  .info-list li span:last-child{color:var(--text-soft); text-align:right;}
  .local-map{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center;}
  @media (max-width:900px){ .local-info{grid-template-columns:1fr;} }


/* ============================== from work-hub.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .work-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  @media (max-width:900px){ .work-grid{grid-template-columns:1fr;} }


/* ============================== from case-study-detail.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .cs-meta{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding:28px 0; border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft); margin:32px 0;}
  .cs-meta div{display:flex; flex-direction:column; gap:6px;}
  .cs-meta .k{font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint);}
  .cs-meta .v{font-size:14px; color:var(--text);}
  .cs-results{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .cs-result{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:26px; text-align:center;}
  .cs-result .num{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent); line-height:1.2;}
  .cs-result .lbl{font-size:12.5px; color:var(--text-soft); margin-top:10px; line-height:1.6; text-align:left;}
  .lessons-list li{font-size:14px; color:#D6D5D1; line-height:1.7; padding:14px 0; border-top:1px solid var(--border-soft);}
  @media (max-width:900px){ .cs-meta{grid-template-columns:1fr 1fr;} .cs-results{grid-template-columns:1fr;} }


/* ============================== from about.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .values-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
  .about-links{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .about-link-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface);}
  .about-link-card h3{font-size:17px; margin-bottom:8px;}
  .about-link-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6; margin-bottom:16px;}
  @media (max-width:900px){ .values-grid{grid-template-columns:1fr 1fr;} .about-links{grid-template-columns:1fr;} }


/* ============================== from blog-hub.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  @media (max-width:900px){ .blog-grid{grid-template-columns:1fr;} }


/* ============================== from blog-single.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .post-header{padding:56px 0 40px; border-bottom:1px solid var(--border-soft);}
  .post-header h1{font-size:40px; line-height:1.15; max-width:820px; margin-top:16px;}
  .byline{display:flex; align-items:center; gap:14px; margin-top:24px;}
  .avatar{width:40px; height:40px; border-radius:50%; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:13px; color:var(--text-faint);}
  .byline-info{font-size:13px; color:var(--text-soft);}
  .byline-info strong{color:var(--text); display:block; font-size:13.5px;}
  .article-body{max-width:760px;}
  .article-body h2{font-size:24px; margin:40px 0 14px;}
  .article-body h3{font-size:18px; margin:28px 0 10px;}
  .article-body p{font-size:15.5px; color:#D6D5D1; line-height:1.85; margin-top:16px;}
  .article-body ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .article-body ul li{font-size:15px; color:#D6D5D1; line-height:1.7; padding-left:22px; position:relative;}
  .article-body ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}
  .related-posts{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  @media (max-width:900px){ .post-header h1{font-size:30px;} .related-posts{grid-template-columns:1fr;} }


/* ============================== from tools-hub.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .tools-grid-live{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
  .tools-grid-soon{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  @media (max-width:900px){ .tools-grid-live, .tools-grid-soon{grid-template-columns:1fr;} }


/* ============================== from tool-ai-readiness.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .tool-wrap{display:flex; justify-content:center; padding:48px 0 80px;}
  .band-title{font-family:'Space Grotesk',sans-serif; font-size:26px; color:var(--accent);}
  .reason-list{display:flex; flex-direction:column; gap:10px; margin-top:18px;}
  .reason-list li{font-size:13.5px; color:var(--text-soft); line-height:1.6; padding:12px 14px; background:var(--bg-alt); border:1px solid var(--border); border-radius:10px;}
  .band-badges{display:flex; gap:10px; margin:18px 0;}
  .band-badge{flex:1; text-align:center; padding:10px 6px; border-radius:10px; font-size:11px; font-weight:600; color:var(--text-faint); background:var(--surface-2); border:1px solid var(--border);}
  .band-badge.current{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}


/* ============================== from tool-roi-calculator.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .calc-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start;}
  .calc-form{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:32px;}
  .calc-form h3{font-size:18px; margin-bottom:20px;}
  .field small{font-size:11.5px; color:var(--text-faint);}
  @media (max-width:900px){ .calc-grid{grid-template-columns:1fr;} }


/* ============================== from faq-hub.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .faq-link-note{font-size:12.5px; color:var(--text-faint); margin-top:10px;}
  .faq-link-note a{color:var(--accent);}


/* ============================== from contact.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .contact-grid{display:grid; grid-template-columns:1fr 0.9fr; gap:48px; align-items:start;}
  .contact-side h3{font-size:15px; margin-bottom:10px;}
  .contact-side p{font-size:13.5px; color:var(--text-soft); line-height:1.7;}
  .contact-side .info-item{padding:16px 0; border-top:1px solid var(--border-soft); font-size:13.5px;}
  .contact-side .info-item span{display:block; color:var(--text-faint); font-size:11px; text-transform:uppercase; letter-spacing:0.06em; margin-bottom:4px;}
  .confirm-box{text-align:center; padding:20px 0;}
  .confirm-box .ic{width:56px; height:56px; border-radius:50%; background:var(--accent-soft); color:var(--accent); display:flex; align-items:center; justify-content:center; font-size:24px; margin:0 auto 18px;}
  @media (max-width:900px){ .contact-grid{grid-template-columns:1fr;} }


/* ============================== from thank-you.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .ty-hero{padding:96px 0; text-align:center; border-bottom:1px solid var(--border-soft);}
  .ty-icon{width:64px; height:64px; border-radius:50%; background:var(--accent-soft); color:var(--accent); display:flex; align-items:center; justify-content:center; font-size:28px; margin:0 auto 24px;}
  .ty-hero h1{font-size:38px; max-width:600px; margin:0 auto;}
  .ty-hero p{font-size:15px; color:var(--text-soft); max-width:520px; margin:16px auto 0; line-height:1.7;}
  .next-steps{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  @media (max-width:900px){ .next-steps{grid-template-columns:1fr;} }


/* ============================== from 404.html ============================== */

  :root{
    --bg:#0B0C0E; --bg-alt:#101114; --surface:rgba(255,255,255,0.03); --surface-2:rgba(255,255,255,0.05);
    --border:rgba(255,255,255,0.09); --border-soft:rgba(255,255,255,0.06);
    --text:#F2F1EE; --text-soft:#ADACA8; --text-mute:#7C7B77; --text-faint:#6C6B67;
    --accent:#F47C30; --accent-ink:#06070A; --accent-soft:rgba(244,124,48,0.12);
    --radius:14px; --radius-lg:20px; --maxw:1240px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); color:var(--text); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif; margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  ul{margin:0; padding:0; list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
  .eyebrow{font-size:11px; letter-spacing:0.1em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:14px; font-weight:600; border-radius:10px; padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .15s ease, opacity .15s ease; font-family:inherit;}
  .btn:hover{transform:translateY(-1px);}
  .btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .btn-primary{background:var(--accent); color:var(--accent-ink);}
  .btn-primary:disabled{opacity:0.4; cursor:not-allowed; transform:none;}
  .btn-secondary{background:transparent; color:var(--text); border-color:rgba(255,255,255,0.18);}
  .btn-secondary:hover{border-color:rgba(255,255,255,0.4);}
  .btn-small{padding:10px 18px; font-size:13px;}
  .btn-block{width:100%;}

  header.site{position:sticky; top:0; z-index:50; background:rgba(11,12,14,0.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--border-soft);}
  .nav-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
  .logo{display:flex; align-items:center;}
  .logo img{height:28px; width:auto; display:block;}
  nav.primary ul{display:flex; gap:32px; font-size:13.5px; color:var(--text-soft);}
  nav.primary a{position:relative; padding:4px 0;}
  nav.primary a:hover{color:var(--text);}
  nav.primary a.current{color:var(--text);}
  nav.primary a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--accent); transform:scaleX(0); transition:transform .2s ease;}
  nav.primary a:hover::after, nav.primary a.current::after{transform:scaleX(1);}
  .nav-cta{display:flex; align-items:center; gap:18px;}
  .nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:0; cursor:pointer; padding:8px;}
  .nav-toggle span{width:20px; height:2px; background:var(--text); border-radius:1px;}

  .breadcrumb{display:flex; flex-wrap:wrap; gap:8px; font-size:12.5px; color:var(--text-faint); padding:20px 0 0;}
  .breadcrumb a:hover{color:var(--text-soft);}
  .breadcrumb .sep{color:var(--text-faint);}
  .breadcrumb .cur{color:var(--text-soft);}

  .page-hero{padding:56px 0 64px; border-bottom:1px solid var(--border-soft); position:relative; overflow:hidden;}
  .page-hero::before{content:""; position:absolute; top:-220px; right:-160px; width:560px; height:560px; border-radius:50%; background:radial-gradient(circle, rgba(244,124,48,0.14), rgba(244,124,48,0) 70%); pointer-events:none;}
  .page-hero .inner{position:relative; z-index:1;}
  .page-hero h1{font-size:48px; line-height:1.1; max-width:780px; margin-top:16px;}
  .page-hero p.sub{font-size:16px; color:var(--text-soft); max-width:620px; margin-top:20px; line-height:1.6;}
  .page-hero .hero-ctas{display:flex; gap:16px; margin-top:30px; flex-wrap:wrap;}
  .hero-meta{display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:12.5px; color:var(--text-faint);}
  .hero-meta strong{color:var(--text-soft); font-weight:600;}

  .section{padding:80px 0; border-bottom:1px solid var(--border-soft);}
  .section.tight{padding:56px 0;}
  .section:last-of-type{border-bottom:none;}
  .section-head{max-width:700px; margin-bottom:36px;}
  .section-head h2{font-size:32px; margin-top:14px; line-height:1.15;}
  .section-head p.lede{font-size:15px; color:var(--text-soft); margin-top:14px; line-height:1.7;}

  .prose{font-size:15px; color:#D6D5D1; line-height:1.8; max-width:760px;}
  .prose p{margin-top:16px;}
  .prose p:first-child{margin-top:0;}
  .prose strong{color:var(--text);}
  .prose ul{margin-top:16px; display:flex; flex-direction:column; gap:10px;}
  .prose ul li{padding-left:20px; position:relative;}
  .prose ul li::before{content:"\2192"; position:absolute; left:0; color:var(--accent);}

  .tag{font-size:12px; color:#D6D5D1; background:var(--surface-2); border-radius:999px; padding:7px 13px; display:inline-block;}
  .tag-row{display:flex; flex-wrap:wrap; gap:8px;}

  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}

  .card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:12px;}
  .card.accent{border-color:var(--accent); background:var(--accent-soft);}
  .card-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600;}
  .card-num.accent{color:var(--accent);}
  .card h3{font-size:17px; font-weight:600;}
  .card p{font-size:13.5px; color:var(--text-soft); line-height:1.65;}

  .service-block{display:grid; grid-template-columns:0.42fr 0.58fr; gap:56px; padding:64px 0; border-bottom:1px solid var(--border-soft); align-items:start;}
  .service-block:last-child{border-bottom:none;}
  .service-block.reverse{grid-template-columns:0.58fr 0.42fr;}
  .service-block.reverse .service-visual{order:2;}
  .service-num{font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-faint); font-weight:600; margin-bottom:14px;}
  .service-num.accent{color:var(--accent);}
  .service-block h2{font-size:28px;}
  .service-block p.desc{font-size:14px; color:var(--text-soft); line-height:1.7; margin-top:14px; max-width:440px;}
  .service-visual{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); min-height:260px; display:flex; align-items:center; justify-content:center; padding:24px;}
  .service-visual.accent{border-color:var(--accent); background:var(--accent-soft);}

  .viz-bars{display:flex; align-items:flex-end; gap:10px; height:120px;}
  .viz-bars div{width:22px; background:var(--accent); border-radius:4px 4px 0 0; opacity:0.85;}
  .viz-browser{width:100%; max-width:320px; border:1px solid var(--border); border-radius:10px; overflow:hidden; background:var(--bg-alt);}
  .viz-browser .bar{height:26px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid var(--border);}
  .viz-browser .bar span{width:7px; height:7px; border-radius:50%; background:var(--text-faint);}
  .viz-browser .body{padding:16px; display:flex; flex-direction:column; gap:8px;}
  .viz-browser .row{height:10px; border-radius:3px; background:rgba(255,255,255,0.08);}
  .viz-nodes{display:flex; align-items:center; gap:14px;}
  .viz-node{width:56px; height:56px; border-radius:14px; background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px;}
  .viz-node.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .viz-chain{display:flex; align-items:center; gap:8px; font-size:11px; color:var(--text-faint); flex-wrap:wrap;}
  .viz-pill{width:12px; height:12px; border-radius:3px; background:var(--text-faint);}
  .viz-pill.accent{background:var(--accent);}
  .viz-stat{text-align:center;}
  .viz-stat .num{font-family:'Space Grotesk',sans-serif; font-size:40px; font-weight:700; color:var(--accent);}
  .viz-stat .label{font-size:12px; color:var(--text-soft); margin-top:6px;}
  .viz-gears{display:flex; gap:14px; align-items:center; font-size:26px; color:var(--text-soft);}
  .viz-map{width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:44px; color:var(--accent);}

  .process{padding:72px 0;}
  .process h2{font-size:28px; max-width:600px;}
  .process-track{display:flex; justify-content:space-between; gap:20px; margin-top:40px; flex-wrap:wrap; position:relative;}
  .process-track::before{content:""; position:absolute; top:21px; left:20px; right:20px; height:1px; background:rgba(255,255,255,0.12);}
  .process-step{width:18%; min-width:140px; display:flex; flex-direction:column; gap:14px;}
  .process-badge{width:42px; height:42px; border-radius:50%; background:var(--surface-2); border:1px solid rgba(255,255,255,0.16); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:'Space Grotesk',sans-serif;}
  .process-badge.accent{background:var(--accent); color:var(--accent-ink); border-color:var(--accent);}
  .process-step h3{font-size:15px;}
  .process-step p{font-size:12.5px; color:var(--text-soft); line-height:1.5;}

  .accordion{display:flex; flex-direction:column; gap:12px;}
  .faq-item{border:1px solid var(--border); border-radius:12px; background:var(--surface); overflow:hidden;}
  .faq-q{width:100%; text-align:left; background:none; border:0; color:var(--text); font-family:'Space Grotesk',sans-serif; font-size:15px; font-weight:600; padding:20px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer;}
  .faq-q .ic{flex-shrink:0; color:var(--accent); font-size:18px; transition:transform .2s ease; font-weight:400;}
  .faq-item.open .faq-q .ic{transform:rotate(45deg);}
  .faq-a{max-height:0; overflow:hidden; transition:max-height .25s ease;}
  .faq-a-inner{padding:0 22px 20px; font-size:14px; color:var(--text-soft); line-height:1.7;}
  .faq-item.open .faq-a{max-height:600px;}
  .faq-group h3{font-size:13px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint); margin-bottom:16px;}
  .faq-group{margin-bottom:44px;}
  .faq-group:last-child{margin-bottom:0;}

  .filter-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px;}
  .filter-pill{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text-soft); cursor:pointer; transition:all .15s ease;}
  .filter-pill:hover{border-color:rgba(255,255,255,0.3); color:var(--text);}
  .filter-pill.active{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}

  .post-card{border:1px solid var(--border); border-radius:16px; padding:24px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .post-card:hover{border-color:rgba(255,255,255,0.2);}
  .post-tag{font-size:11px; letter-spacing:0.08em; color:var(--accent); font-weight:600; text-transform:uppercase;}
  .post-card h3{font-size:16px; font-weight:600; line-height:1.4;}
  .post-meta{font-size:12px; color:var(--text-faint); margin-top:auto; display:flex; gap:10px;}

  .case-card{border:1px solid var(--border); border-radius:16px; padding:26px; background:var(--surface); display:flex; flex-direction:column; gap:16px;}
  .case-card:hover{border-color:rgba(255,255,255,0.2);}
  .case-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px;}
  .case-card h3{font-size:18px; line-height:1.3;}
  .case-metric{font-family:'Space Grotesk',sans-serif; font-size:28px; font-weight:700; color:var(--accent);}
  .case-metric-label{font-size:12px; color:var(--text-faint); margin-top:4px;}
  .case-tags{display:flex; gap:8px; flex-wrap:wrap;}

  .tool-card{border:1px solid var(--border); border-radius:18px; padding:30px; background:var(--surface); display:flex; flex-direction:column; gap:14px;}
  .tool-card.live{border-color:var(--accent); background:var(--accent-soft);}
  .tool-card.soon{opacity:0.6;}
  .tool-badge{font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 11px; border-radius:999px; width:fit-content;}
  .tool-badge.live{background:var(--accent); color:var(--accent-ink);}
  .tool-badge.soon{background:var(--surface-2); color:var(--text-faint);}
  .tool-card h3{font-size:19px;}
  .tool-card p{font-size:13.5px; color:var(--text-soft); line-height:1.6;}

  .step-shell{border:1px solid var(--border); border-radius:20px; background:var(--surface); padding:40px; max-width:640px;}
  .step-progress{display:flex; gap:6px; margin-bottom:28px;}
  .step-progress span{height:4px; flex:1; border-radius:2px; background:var(--surface-2);}
  .step-progress span.done{background:var(--accent);}
  .step-progress span.active{background:var(--text-soft);}
  .step-label{font-size:12px; color:var(--text-faint); margin-bottom:8px;}
  .step-panel{display:none;}
  .step-panel.active{display:block;}
  .step-panel h3{font-size:22px; margin-bottom:8px;}
  .step-panel p.hint{font-size:13px; color:var(--text-soft); margin-bottom:22px;}
  .chip-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .chip-opt{border:1px solid var(--border); border-radius:12px; padding:16px 18px; font-size:14px; cursor:pointer; background:var(--bg-alt); transition:all .15s ease;}
  .chip-opt:hover{border-color:rgba(255,255,255,0.3);}
  .chip-opt.selected{border-color:var(--accent); background:var(--accent-soft); color:var(--accent);}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:18px;}
  .field label{font-size:12.5px; color:var(--text-soft); font-weight:600;}
  .field input, .field select, .field textarea{background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 14px; color:var(--text); font-family:inherit; font-size:14px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
  .step-nav{display:flex; justify-content:space-between; margin-top:28px; gap:12px;}
  .step-nav .btn-secondary{border-color:rgba(255,255,255,0.18);}

  .result-box{border:1px solid var(--accent); background:var(--accent-soft); border-radius:16px; padding:28px; margin-top:8px;}
  .result-box h3{font-size:20px; color:var(--accent); margin-bottom:10px;}
  .result-box p{font-size:14px; color:var(--text-soft); line-height:1.7;}
  .math-line{display:flex; justify-content:space-between; font-size:13.5px; padding:9px 0; border-top:1px solid var(--border-soft);}
  .math-line.total{font-weight:700; color:var(--text); border-top:1px solid var(--accent);}
  .math-line span:last-child{font-family:'Space Grotesk',sans-serif;}

  .pull-quote{border-left:3px solid var(--accent); padding:6px 0 6px 24px; margin:32px 0; font-size:19px; font-family:'Space Grotesk',sans-serif; line-height:1.5; color:var(--text);}

  .final-cta{position:relative; overflow:hidden; padding:96px 0; text-align:center;}
  .final-cta::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px; border-radius:50%; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%);}
  .final-cta-inner{position:relative; z-index:1; max-width:620px; margin:0 auto;}
  .final-cta h2{font-size:36px;}
  .final-cta p{font-size:15px; color:var(--text-soft); margin-top:16px;}
  .final-cta .hero-ctas{justify-content:center; margin-top:26px; display:flex; gap:16px; flex-wrap:wrap;}

  .cta-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:16px;}
  .cta-link{border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13.5px; font-weight:600; background:var(--surface);}
  .cta-link:hover{border-color:var(--accent); color:var(--accent);}

  footer.site{padding:56px 0 32px; border-top:1px solid var(--border-soft);}
  .foot-top{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap;}
  .foot-brand p{font-size:13px; color:var(--text-faint); line-height:1.6; margin-top:14px; max-width:280px;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-pill{width:32px; height:32px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-soft);}
  .foot-cols{display:flex; gap:48px; flex-wrap:wrap;}
  .foot-col h4{font-size:11px; letter-spacing:0.08em; color:var(--text-faint); font-weight:600; margin-bottom:12px;}
  .foot-col li{font-size:13px; color:var(--text-soft); padding:5px 0;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:24px; margin-top:40px; border-top:1px solid var(--border); font-size:12px; color:var(--text-faint); flex-wrap:wrap; gap:12px;}
  .foot-bottom .legal{display:flex; gap:24px;}

  .notice{font-size:12.5px; color:var(--text-faint); background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin-top:20px;}

  a:focus-visible, button:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

  @media (max-width: 900px){
    nav.primary, .nav-cta .btn{display:none;}
    .nav-toggle{display:flex;}
    .page-hero h1{font-size:34px;}
    .service-block, .service-block.reverse{grid-template-columns:1fr; gap:28px;}
    .service-block.reverse .service-visual{order:0;}
    .process-track{flex-direction:column;}
    .process-track::before{display:none;}
    .process-step{width:100%;}
    .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
    .cta-row{grid-template-columns:1fr;}
    .chip-grid{grid-template-columns:1fr;}
    .foot-cols{gap:32px;}
    .step-shell{padding:26px;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    .btn, nav.primary a::after{transition:none;}
  }


  .nf-hero{padding:100px 0 64px; text-align:center; border-bottom:1px solid var(--border-soft);}
  .nf-code{font-family:'Space Grotesk',sans-serif; font-size:96px; font-weight:700; color:var(--accent); line-height:1;}
  .nf-hero h1{font-size:28px; margin-top:12px;}
  .nf-hero p{font-size:14px; color:var(--text-soft); margin-top:12px; max-width:460px; margin-left:auto; margin-right:auto;}
  .nf-search{display:flex; gap:10px; max-width:440px; margin:28px auto 0;}
  .nf-search input{flex:1; background:var(--bg-alt); border:1px solid var(--border); border-radius:10px; padding:13px 16px; color:var(--text); font-family:inherit; font-size:14px;}
  .nf-links{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
  @media (max-width:900px){ .nf-code{font-size:64px;} .nf-links{grid-template-columns:1fr;} .nf-search{flex-direction:column;} }


/* ============================== Dmedia theme-specific additions ============================== */

/* Mega menu */
nav.primary li.has-mega{position:relative;}
.mega-menu{position:absolute; left:0; right:0; top:100%; background:var(--bg-alt); border:1px solid var(--border); border-radius:0 0 var(--radius) var(--radius); padding:28px 0; display:none; box-shadow:0 24px 48px rgba(0,0,0,0.4); z-index:60;}
nav.primary li.has-mega:hover .mega-menu, nav.primary li.has-mega:focus-within .mega-menu{display:block;}
.mega-menu-inner{display:flex; gap:36px; flex-wrap:wrap;}
.mega-col{min-width:160px;}
.mega-col h4{font-size:13px; margin-bottom:10px;}
.mega-col h4 a{color:var(--text);}
.mega-col ul li{padding:4px 0;}
.mega-col ul li a{font-size:13px; color:var(--text-soft);}
.mega-col ul li a:hover{color:var(--accent);}

/* Breadcrumbs */
.dm-breadcrumb-wrap{padding:18px 24px 0;}
.dm-breadcrumb ol{display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0;}
.dm-breadcrumb li{font-size:12px; color:var(--text-mute); display:flex; align-items:center; gap:6px;}
.dm-breadcrumb a{color:var(--text-mute);}
.dm-breadcrumb a:hover{color:var(--accent);}
.dm-breadcrumb .sep{color:var(--text-faint);}

/* Trust strip reuse */
.dm-trust-strip{padding:28px 0;}
.dm-trust-strip .label{font-size:11px; letter-spacing:0.1em; color:var(--text-faint); font-weight:600; margin-bottom:18px;}

/* Contact CTA inline block */
.dm-contact-cta{border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); padding:28px; text-align:center; margin-top:20px;}
.dm-contact-cta p{font-size:15px; color:var(--text-soft); margin-bottom:18px;}

/* FAQ accordion */
.dm-faq-block{padding:40px 0;}
.dm-faq-block h2{font-size:30px; margin-bottom:28px;}
.dm-faq-accordion{display:flex; flex-direction:column; gap:1px;}
.dm-faq-item{border-top:1px solid var(--border-soft); padding:18px 0;}
.dm-faq-item:last-child{border-bottom:1px solid var(--border-soft);}
.dm-faq-item summary{list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; font-size:15px; font-weight:600; color:var(--text);}
.dm-faq-item summary::-webkit-details-marker{display:none;}
.dm-faq-item .dm-icon-chevron-down{transition:transform .2s ease; color:var(--text-faint); flex-shrink:0;}
.dm-faq-item[open] summary .dm-icon-chevron-down{transform:rotate(180deg); color:var(--accent);}
.dm-faq-answer{font-size:14px; color:var(--text-soft); line-height:1.7; padding-top:12px; max-width:70ch;}
.dm-faq-answer p{margin-bottom:10px;}

/* Related links */
.dm-related-links{border-top:1px solid var(--border-soft); padding:32px 0;}
.dm-related-links h3{font-size:16px; margin-bottom:14px;}
.dm-related-links ul{display:flex; flex-wrap:wrap; gap:12px;}
.dm-related-links li a{display:inline-flex; align-items:center; gap:6px; font-size:13px; color:var(--text-soft); border:1px solid var(--border); border-radius:999px; padding:8px 14px;}
.dm-related-links li a:hover{color:var(--accent); border-color:var(--accent);}

/* Reviewer / EEAT byline box */
.dm-reviewer-box{display:flex; align-items:center; gap:14px; border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); padding:16px 18px; margin:24px 0;}
.dm-reviewer-avatar{width:36px; height:36px; border-radius:50%; background:var(--accent-soft); color:var(--accent); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.dm-reviewer-name{font-size:13px; font-weight:600; color:var(--text);}
.dm-reviewer-meta{font-size:12px; color:var(--text-mute); margin-top:2px;}

/* Generic icon sizing */
.dm-icon{display:inline-block; vertical-align:middle; flex-shrink:0;}

/* Ambient motion: gradient blob */
.dm-motion-blob{position:absolute; border-radius:50%; pointer-events:none; z-index:0; background:radial-gradient(circle, var(--accent-soft), rgba(0,0,0,0) 70%); width:480px; height:480px; top:-160px; right:-140px; animation:dmBlobDrift 18s ease-in-out infinite alternate;}
.dm-motion-blob-side{top:20%; right:-200px; width:420px; height:420px;}
.dm-motion-blob-cta{top:50%; left:50%; transform:translate(-50%,-50%); width:700px; height:700px;}
.dm-motion-blob-corner{bottom:-160px; left:-140px; top:auto; right:auto;}
@keyframes dmBlobDrift{0%{transform:translate(0,0) scale(1);}100%{transform:translate(-26px,20px) scale(1.07);}}

/* Ambient motion: dot grid */
.dm-motion-dotgrid{position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px); background-size:26px 26px; -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,0.5), transparent 75%); mask-image:linear-gradient(to bottom, rgba(0,0,0,0.5), transparent 75%); pointer-events:none; z-index:0; animation:dmDotDrift 46s linear infinite;}
@keyframes dmDotDrift{0%{background-position:0 0;}100%{background-position:-260px 260px;}}

/* Ambient motion: animated connector line */
.dm-motion-connector{width:100%; height:40px; overflow:visible; display:block;}
.dm-connector-path{fill:none; stroke:var(--accent); stroke-width:1.5; stroke-dasharray:6 8; opacity:0.55; animation:dmConnectorFlow 3.5s linear infinite;}
@keyframes dmConnectorFlow{to{stroke-dashoffset:-140;}}

/* Positioning contexts for motion so it never overlaps text */
.hero, .final-cta, .dm-section-motion{position:relative; overflow:hidden;}
.dm-section-motion > .wrap, .hero > .wrap, .final-cta > .wrap{position:relative; z-index:1;}

@media (prefers-reduced-motion: reduce){
  .dm-motion-blob, .dm-motion-dotgrid, .dm-connector-path{animation:none !important;}
}

/* Minor additions caught during validation pass */
.contact-main{min-width:0;}
.dm-count-up{}
.screen-reader-text{border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px; word-wrap:normal;}
.screen-reader-text:focus{background:var(--bg-alt); clip:auto; clip-path:none; color:var(--text); display:block; height:auto; left:8px; top:8px; width:auto; padding:12px 16px; z-index:100000; border-radius:8px;}
