  :root{
    --graphite:#13131B;
    --dark-2:#1A1A24;
    --dark-card:#20202D;
    --dark-border:#303040;
    --dark-border-soft:rgba(255,255,255,0.07);
    --tx-d1:#F5F7FA;
    --tx-d2:#B7BCC9;
    --tx-d3:#7B8091;
    --light-bg:#F7F8FA;
    --white:#FFFFFF;
    --line-light:rgba(17,19,26,0.09);
    --line-light-strong:rgba(17,19,26,0.16);
    --tx-l1:#11131A;
    --tx-l2:#5E6472;
    --tx-l3:#8B90A0;
    --signal:#4C7EFF;
    --signal-2:#2F5CE0;
    --signal-soft:rgba(76,126,255,0.10);
    --signal-soft-2:rgba(76,126,255,0.20);
    --ok:#38C793;
    --font-d:'Instrument Sans',sans-serif;
    --font-b:'Inter',sans-serif;
    --font-m:'IBM Plex Mono',monospace;
    --ease:cubic-bezier(.16,.8,.24,1);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
  }
  body{font-family:var(--font-b);background:var(--white);color:var(--tx-l1);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  img,svg{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
  .wrap{max-width:1280px;margin:0 auto;padding:0 32px;}
  .eyebrow{
    font-family:var(--font-m);font-size:12.5px;letter-spacing:0.14em;text-transform:uppercase;
    display:inline-flex;align-items:center;gap:9px;color:var(--signal);margin-bottom:20px;
  }
  .eyebrow::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--signal);display:inline-block;}
  .eyebrow.on-light{color:var(--signal-2);}
  h1,h2,h3{font-family:var(--font-d);font-weight:600;letter-spacing:-0.02em;line-height:1.08;}
  .section-title{font-size:clamp(30px,4vw,44px);max-width:660px;}
  .section-sub{font-size:17px;line-height:1.6;max-width:520px;margin-top:16px;}
  .dark .section-sub{color:var(--tx-d2);}
  .light .section-sub{color:var(--tx-l2);}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border-radius:8px;font-size:14.5px;font-weight:500;letter-spacing:-0.01em;transition:all .25s var(--ease);white-space:nowrap;}
  .btn-primary{background:var(--signal);color:#fff;}
  .btn-primary:hover{background:var(--signal-2);transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(76,126,255,.55);}
  .btn-ghost-dark{border:1px solid var(--dark-border);color:var(--tx-d1);}
  .btn-ghost-dark:hover{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.04);}
  .btn-ghost-light{border:1px solid var(--line-light-strong);color:var(--tx-l1);}
  .btn-ghost-light:hover{border-color:rgba(17,19,26,.28);background:rgba(17,19,26,.03);}
  .btn svg{width:15px;height:15px;}

  /* ---------- HEADER ---------- */
  header{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;transition:background .3s var(--ease), padding .3s var(--ease), border-color .3s var(--ease);border-bottom:1px solid transparent;}
  header.scrolled{background:rgba(19,19,27,0.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--dark-border-soft);padding:13px 0;}
  .nav{display:flex;align-items:center;justify-content:space-between;}
  .logo{font-family:var(--font-d);font-weight:700;font-size:19px;letter-spacing:-0.01em;color:#fff;display:flex;align-items:center;gap:9px;}
  .logo small{font-family:var(--font-m);font-weight:400;font-size:10.5px;letter-spacing:.06em;color:var(--tx-d3);margin-left:2px;text-transform:uppercase;}
  .logo-mark{width:22px;height:22px;position:relative;flex:none;}
  .nav-links{display:flex;align-items:center;gap:32px;}
  .nav-links a{font-size:13.5px;color:var(--tx-d2);transition:color .2s;}
  .nav-links a:hover{color:#fff;}
  .nav-cta{display:flex;align-items:center;gap:12px;}
  .menu-toggle{display:none;flex-direction:column;gap:5px;padding:6px;}
  .menu-toggle span{width:20px;height:1.5px;background:#fff;display:block;}

  /* ---------- HERO ---------- */
  .hero{background:var(--graphite);position:relative;padding:168px 0 116px;overflow:hidden;}
  .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 900px 500px at 78% 8%, var(--signal-soft-2), transparent 60%), radial-gradient(ellipse 700px 500px at 10% 90%, rgba(76,126,255,.07), transparent 60%);pointer-events:none;}
  .hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(var(--dark-border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--dark-border-soft) 1px, transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 80% 60% at 60% 20%, black, transparent 75%);opacity:0.6;}
  .hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr 0.98fr;gap:40px;align-items:center;}
  .hero-copy h1{font-size:clamp(34px,4.4vw,54px);color:#fff;max-width:600px;}
  .hero-copy h1 em{font-style:normal;background:linear-gradient(100deg,#93B4FF, var(--signal) 60%);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .hero-copy .section-sub{max-width:490px;font-size:17.5px;color:var(--tx-d2);margin-top:22px;}
  .hero-actions{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap;}
  .hero-meta{display:flex;gap:30px;margin-top:56px;padding-top:28px;border-top:1px solid var(--dark-border-soft);max-width:540px;flex-wrap:wrap;}
  .hero-meta div{font-family:var(--font-m);font-size:11.5px;color:var(--tx-d3);letter-spacing:.02em;}
  .hero-meta strong{display:block;font-family:var(--font-d);font-size:20px;color:#fff;font-weight:600;margin-bottom:4px;letter-spacing:-0.01em;}

  .hero-visual{position:relative;height:520px;}
  .arch-svg{position:absolute;inset:0;width:100%;height:100%;opacity:0;animation:archIn 1s var(--ease) .2s forwards;}
  @keyframes archIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
  .arch-link{cursor:default;}
  .arch-hit{fill:transparent;}
  .arch-line{stroke:var(--dark-border);stroke-width:1.2;fill:none;transition:stroke .35s var(--ease), stroke-opacity .35s var(--ease);}
  .arch-link:hover .arch-line{stroke:var(--signal);}
  .arch-node-box{fill:var(--dark-card);stroke:var(--dark-border);stroke-width:1.2;transition:stroke .3s var(--ease);}
  .arch-link:hover .arch-node-box{stroke:var(--signal);}
  .arch-node-label{font-family:var(--font-m);font-size:10.5px;fill:var(--tx-d1);}
  .arch-node-dot{fill:var(--ok);}
  .arch-node-dot.pulse{animation:archPulse 2.6s ease-in-out infinite;}
  @keyframes archPulse{0%,100%{opacity:1}50%{opacity:.3}}
  .arch-core-ring{fill:none;stroke:var(--signal);stroke-width:1;opacity:.5;animation:archRing 4.2s ease-out infinite;}
  @keyframes archRing{0%{r:38;opacity:.5}100%{r:60;opacity:0}}
  .arch-core-label{font-family:var(--font-d);font-weight:600;font-size:13px;fill:#fff;}
  .arch-core-cap{font-family:var(--font-m);font-size:8.5px;fill:var(--tx-d3);letter-spacing:.04em;}
  .arch-status{position:absolute;left:0;bottom:0;display:flex;align-items:center;gap:8px;font-family:var(--font-m);font-size:11.5px;color:var(--tx-d2);}
  .arch-status-dot{width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(56,199,147,.15);flex:none;}
  .arch-status-dot.pulse{animation:archPulse 2.6s ease-in-out infinite;}
  .arch-secondary{transition:opacity .3s;}
  .hero-visual-mobile{display:none;flex-direction:column;align-items:center;gap:14px;padding:28px 0 8px;}
  .hvm-core{background:var(--dark-card);border:1px solid var(--signal);border-radius:12px;padding:12px 22px;text-align:center;}
  .hvm-core b{display:block;font-family:var(--font-d);font-size:15px;color:#fff;font-weight:600;}
  .hvm-core span{display:block;font-family:var(--font-m);font-size:9.5px;color:var(--tx-d3);letter-spacing:.05em;text-transform:uppercase;margin-top:2px;}
  .hvm-arrow{width:1px;height:20px;background:linear-gradient(var(--signal), transparent);}
  .hvm-nodes{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;max-width:340px;}
  .hvm-nodes span{font-family:var(--font-m);font-size:11.5px;color:var(--tx-d1);border:1px solid var(--dark-border);background:var(--dark-2);padding:7px 13px;border-radius:7px;display:flex;align-items:center;gap:7px;}
  .hvm-nodes span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ok);flex:none;}


  /* ---------- STACK BAND ---------- */
  .stack-band{background:var(--dark-2);border-top:1px solid var(--dark-border-soft);border-bottom:1px solid var(--dark-border-soft);padding:36px 0;overflow:hidden;}
  .stack-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:12px;}
  .stack-head p{font-family:var(--font-m);font-size:12.5px;color:var(--tx-d3);}
  .marquee{position:relative;width:100%;}
  .marquee-track{display:flex;gap:12px;width:max-content;animation:scroll-x 32s linear infinite;}
  .marquee:hover .marquee-track{animation-play-state:paused;}
  @keyframes scroll-x{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  .chip{font-family:var(--font-m);font-size:12.5px;color:var(--tx-d1);border:1px solid var(--dark-border);padding:8px 16px;border-radius:7px;background:var(--dark-card);white-space:nowrap;display:flex;align-items:center;gap:8px;}
  .chip::before{content:"";width:4px;height:4px;background:var(--signal);border-radius:1px;}

  /* ---------- SHARED SECTION ---------- */
  section{padding:112px 0;position:relative;}
  .dark{background:var(--graphite);color:var(--tx-d1);}
  .light{background:var(--white);color:var(--tx-l1);}
  .light.tint{background:var(--light-bg);}
  .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:60px;flex-wrap:wrap;}

  /* ---------- BUSINESS OUTCOMES (light) ---------- */
  .outcomes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line-light);border:1px solid var(--line-light);border-radius:2px;}
  .outcome{background:var(--white);padding:6px 8px 8px 0;}
  .outcome .num{font-family:var(--font-m);font-size:13px;color:var(--tx-l3);margin-bottom:34px;}
  .outcome h3{font-size:27px;letter-spacing:-0.02em;margin-bottom:14px;max-width:280px;}
  .outcome p{font-size:15px;color:var(--tx-l2);line-height:1.65;max-width:300px;}

  /* ---------- BUSINESS SOLUTIONS (dark) ---------- */
  .sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--dark-border);border:1px solid var(--dark-border);}
  .sol-card{background:var(--graphite);padding:34px 30px;transition:background .3s;}
  .sol-card:hover{background:var(--dark-card);}
  .sol-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;}
  .sol-icon{width:42px;height:42px;border-radius:10px;background:var(--signal-soft);display:flex;align-items:center;justify-content:center;color:var(--signal);}
  .sol-icon svg{width:21px;height:21px;}
  .sol-num{font-family:var(--font-m);font-size:12px;color:var(--tx-d3);}
  .sol-card h3{font-size:19px;color:#fff;margin-bottom:10px;}
  .sol-card p{font-size:14px;color:var(--tx-d2);line-height:1.65;margin-bottom:20px;}
  .sol-tags{display:flex;flex-wrap:wrap;gap:7px;}
  .sol-tag{font-family:var(--font-m);font-size:11px;color:var(--tx-d2);border:1px solid var(--dark-border);padding:4px 9px;border-radius:5px;}

  /* ---------- NGS (light, distinctive) ---------- */
  .ngs-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-light-strong);border-radius:100px;padding:8px 16px 8px 8px;margin-bottom:26px;}
  .ngs-badge .mark{width:26px;height:26px;border-radius:50%;background:var(--graphite);color:var(--signal);display:flex;align-items:center;justify-content:center;font-family:var(--font-m);font-size:10px;}
  .ngs-badge span{font-family:var(--font-m);font-size:12.5px;letter-spacing:.03em;color:var(--tx-l2);}
  .ngs-badge b{color:var(--tx-l1);font-weight:600;}
  .ngs-flow{position:relative;margin-top:20px;}
  .ngs-line{position:absolute;top:19px;left:0;right:0;height:1px;background:linear-gradient(90deg, var(--line-light-strong), var(--signal), var(--line-light-strong));display:none;}
  .ngs-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;position:relative;}
  .ngs-step .dot{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--signal);display:flex;align-items:center;justify-content:center;font-family:var(--font-m);font-size:12px;color:var(--signal);background:var(--white);margin-bottom:22px;position:relative;z-index:1;}
  .ngs-step h3{font-size:18px;margin-bottom:9px;}
  .ngs-step p{font-size:14px;color:var(--tx-l2);line-height:1.6;}

  /* ---------- BLUEPRINTS (dark) ---------- */
  .bp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start;}
  .bp-card{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:14px;padding:24px 22px 18px;display:flex;flex-direction:column;}
  .bp-head{font-family:var(--font-m);font-size:11px;color:var(--tx-d3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;}
  .bp-card h3{font-size:17.5px;color:#fff;margin-bottom:16px;}
  .bp-diagram{position:relative;width:100%;aspect-ratio:300/320;opacity:0;animation:archIn .8s var(--ease) .1s forwards;}
  .bp-diagram svg{position:absolute;inset:0;width:100%;height:100%;}
  .bp-link{cursor:default;}
  .bp-hit{fill:transparent;}
  .bp-line{stroke:var(--dark-border);stroke-width:1.2;fill:none;transition:stroke .3s var(--ease);}
  .bp-link:hover .bp-line{stroke:var(--signal);}
  .bp-node-box{fill:var(--dark-2);stroke:var(--dark-border);stroke-width:1.2;transition:stroke .3s var(--ease), fill .3s var(--ease);}
  .bp-link:hover .bp-node-box{stroke:var(--signal);fill:#262838;}
  .bp-node-label{font-family:var(--font-m);font-size:9.5px;fill:var(--tx-d1);}
  .bp-node-tag{font-family:var(--font-m);font-size:7px;letter-spacing:.05em;fill:var(--signal);}
  .bp-node-icon{stroke:var(--tx-d2);stroke-width:1.5;fill:none;transition:stroke .3s var(--ease);}
  .bp-link:hover .bp-node-icon{stroke:var(--signal);}
  .bp-meta{margin-top:14px;padding-top:14px;border-top:1px solid var(--dark-border-soft);font-family:var(--font-m);font-size:11px;color:var(--tx-d3);}
  .bp-flow-mobile{display:none;flex-direction:column;align-items:center;gap:0;padding:6px 0 4px;}
  .bp-flow-mobile .bfm-node{font-family:var(--font-m);font-size:12px;color:var(--tx-d1);border:1px solid var(--dark-border);background:var(--dark-2);padding:8px 14px;border-radius:7px;text-align:center;}
  .bp-flow-mobile .bfm-arrow{width:1px;height:16px;background:var(--dark-border);margin:2px 0;position:relative;}
  .bp-flow-mobile .bfm-arrow::after{content:"";position:absolute;bottom:-1px;left:50%;transform:translateX(-50%);width:5px;height:5px;border-right:1.2px solid var(--tx-d3);border-bottom:1.2px solid var(--tx-d3);rotate:45deg;}


  /* ---------- BUSINESS VALUE (light) ---------- */
  .value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 32px;}
  .value-item{border-top:1px solid var(--line-light-strong);padding-top:22px;}
  .value-item h3{font-size:23px;letter-spacing:-0.015em;}
  .value-item .vi-icon{color:var(--signal);margin-bottom:16px;}
  .value-item .vi-icon svg{width:20px;height:20px;}
  .value-note{margin-top:64px;padding-top:36px;border-top:1px solid var(--line-light-strong);}
  .value-note p{font-family:var(--font-d);font-size:clamp(22px,2.6vw,30px);font-weight:500;letter-spacing:-0.015em;max-width:680px;color:var(--tx-l1);}

  /* ---------- TECH ECOSYSTEM (light) ---------- */
  .tech-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
  .tech-copy p.section-sub{margin-top:18px;}
  .tech-list{margin-top:34px;display:flex;flex-direction:column;gap:0;}
  .tech-list li{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line-light);font-size:14.5px;color:var(--tx-l1);}
  .tech-list li:first-child{padding-top:0;}
  .tech-list svg{width:16px;height:16px;color:var(--signal-2);flex:none;}
  .tech-visual{position:relative;aspect-ratio:500/520;background:var(--graphite);border-radius:18px;overflow:hidden;border:1px solid var(--dark-border);}
  .eco-svg{position:absolute;inset:0;width:100%;height:100%;opacity:0;animation:archIn 1s var(--ease) .15s forwards;}
  .eco-group-title{font-family:var(--font-m);font-size:9.5px;letter-spacing:.06em;fill:#fff;}
  .eco-tag{font-family:var(--font-m);font-size:8px;fill:var(--tx-d3);}
  .eco-link-label-bg{fill:var(--dark-2);stroke:var(--dark-border);stroke-width:1;}
  .eco-link-label{font-family:var(--font-m);font-size:7.5px;fill:var(--signal);letter-spacing:.04em;}
  .eco-core-ring{fill:none;stroke:var(--signal);stroke-width:1;opacity:.5;animation:ecoRing 4.4s ease-out infinite;}
  @keyframes ecoRing{0%{r:44;opacity:.5}100%{r:74;opacity:0}}
  .tech-visual-mobile{display:none;flex-direction:column;align-items:center;gap:14px;}

  /* ---------- INDUSTRIES (dark) ---------- */
  .ind-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--dark-border);border:1px solid var(--dark-border);}
  .ind-card{background:var(--graphite);padding:28px 22px;transition:background .3s;}
  .ind-card:hover{background:var(--dark-card);}
  .ind-card h3{font-size:17px;color:#fff;margin-bottom:20px;}
  .ind-card .ind-label{font-family:var(--font-m);font-size:10px;color:var(--tx-d3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;}
  .ind-card .ind-body{font-size:13px;color:var(--tx-d2);line-height:1.55;margin-bottom:18px;}

  /* ---------- FAQ (light) ---------- */
  .faq-wrap{max-width:760px;margin:0 auto;}
  .faq-item{border-bottom:1px solid var(--line-light);}
  .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px 4px;font-family:var(--font-d);font-size:16.5px;font-weight:600;text-align:left;letter-spacing:-0.01em;gap:20px;}
  .faq-q .plus{width:22px;height:22px;position:relative;flex:none;}
  .faq-q .plus::before,.faq-q .plus::after{content:"";position:absolute;background:var(--tx-l1);border-radius:2px;top:50%;left:50%;transform:translate(-50%,-50%);}
  .faq-q .plus::before{width:14px;height:1.6px;}
  .faq-q .plus::after{width:1.6px;height:14px;transition:transform .3s var(--ease);}
  .faq-item.open .faq-q .plus::after{transform:translate(-50%,-50%) rotate(90deg);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease);}
  .faq-a p{padding:0 4px 24px;font-size:15px;line-height:1.7;color:var(--tx-l2);max-width:640px;}

  /* ---------- CTA FINAL ---------- */
  .cta-final{background:var(--graphite);position:relative;overflow:hidden;text-align:center;padding:126px 0;}
  .cta-final::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 700px 400px at 50% 0%, var(--signal-soft-2), transparent 65%);}
  .cta-final-inner{position:relative;z-index:1;max-width:640px;margin:0 auto;}
  .cta-final h2{font-size:clamp(30px,4.4vw,46px);color:#fff;}
  .cta-final p{margin-top:18px;font-size:16.5px;color:var(--tx-d2);}
  .cta-final .hero-actions{justify-content:center;margin-top:36px;}

  /* ---------- FOOTER ---------- */
  footer{background:#0F0F16;padding:60px 0 30px;color:var(--tx-d2);}
  .footer-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;padding-bottom:44px;border-bottom:1px solid var(--dark-border-soft);}
  .footer-brand .logo{margin-bottom:14px;}
  .footer-brand p{font-size:13.5px;color:var(--tx-d3);max-width:280px;line-height:1.6;}
  .footer-col h4{font-family:var(--font-m);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--tx-d3);margin-bottom:18px;}
  .footer-col a,.footer-col p{display:block;font-size:13.5px;color:var(--tx-d2);margin-bottom:12px;transition:color .2s;}
  .footer-col a:hover{color:#fff;}
  .footer-col .soon{color:var(--tx-d3);}
  .footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:26px;font-size:12.5px;color:var(--tx-d3);flex-wrap:wrap;gap:12px;}
  .footer-bottom .font-m{font-family:var(--font-m);}

  /* ---------- REVEAL ---------- */
  .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease), transform .7s var(--ease);}
  .reveal.in-view{opacity:1;transform:translateY(0);}
  a:focus-visible, button:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px;}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:1080px){
    .hero-inner{grid-template-columns:1fr;}
    .hero-visual{height:400px;margin-top:20px;order:-1;}
    .arch-secondary{display:none;}
    .outcomes-grid,.sol-grid{grid-template-columns:repeat(1,1fr);}
    .outcome{padding:36px 4px;border-top:1px solid var(--line-light);}
    .outcome:first-child{border-top:none;}
    .bp-grid{grid-template-columns:1fr;}
    .value-grid{grid-template-columns:repeat(2,1fr);}
    .ngs-grid{grid-template-columns:repeat(1,1fr);gap:30px;}
    .ind-grid{grid-template-columns:repeat(2,1fr);}
    .tech-wrap{grid-template-columns:1fr;}
    .tech-visual{order:-1;}
  }
  @media (max-width:720px){
    .wrap{padding:0 22px;}
    .nav-links{display:none;}
    .menu-toggle{display:flex;}
    .nav-cta .btn-ghost-dark{display:none;}
    section{padding:76px 0;}
    .hero{padding:126px 0 76px;}
    .hero-visual{display:none;}
    .hero-visual-mobile{display:flex;height:auto;margin-top:8px;order:-1;}
    .bp-diagram{display:none;}
    .bp-flow-mobile{display:flex;}
    .tech-visual{display:none;}
    .tech-visual-mobile{display:flex;margin-top:8px;}
    .value-grid{grid-template-columns:1fr;}
    .ind-grid{grid-template-columns:1fr;}
    .footer-top{grid-template-columns:1fr;gap:30px;}
    .hero-meta{gap:20px;}
    .section-head{margin-bottom:40px;}
  }

  /* ---------- LANGUAGE SWITCHER ---------- */
  .lang-switch{display:flex;align-items:center;gap:5px;font-family:var(--font-m);font-size:12px;letter-spacing:.02em;margin-right:2px;}
  .lang-switch a{padding:5px 8px;border-radius:6px;color:var(--tx-d3);transition:color .2s, background .2s;}
  .lang-switch a.active{color:#fff;background:var(--dark-card);cursor:default;pointer-events:none;}
  .lang-switch a:not(.active):hover{color:var(--tx-d1);background:rgba(255,255,255,.04);}
  .lang-sep{color:var(--dark-border);font-size:11px;}
  @media (max-width:720px){
    .lang-switch{margin-right:8px;}
  }

  /* Offset anchor scrolling so sections aren't hidden under the fixed header */
  section[id]{scroll-margin-top:88px;}
