.fddh-scope button{background:none;border:0;border-radius:0;padding:0;margin:0;box-shadow:none;color:inherit;font:inherit;text-shadow:none;line-height:normal;cursor:pointer}
html body /* ===== TOKENS ===== */
  
  *{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{background:var(--white);color:var(--body);font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased}html body a{color:inherit;text-decoration:none}html body .wrap{box-sizing:content-box;width:100%;max-width:1280px;margin:0 auto;padding-inline:40px}html body /* ===== HEADER ===== */
  .hd{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .25s ease,background .25s ease}html body .hd.scrolled{box-shadow:0 6px 24px -14px rgba(0,40,38,.45);background:rgba(255,255,255,.96)}html body .hd-inner{display:flex;align-items:center;gap:24px;height:72px}html body .logo{display:flex;align-items:center;flex:none}html body .logo img{height:42px;width:auto;display:block}html body .nav{display:flex;align-items:center;gap:2px;margin:0 auto}html body .nav a{position:relative;font-size:14px;font-weight:500;color:var(--body);padding:8px 10px;border-radius:9px;white-space:nowrap;transition:color .15s,background .15s}html body .nav a:hover{color:var(--teal-900);background:var(--tint-2)}html body .nav a.active{color:var(--teal-900);font-weight:600}html body .nav a.active::after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:2px;border-radius:2px;background:var(--teal-700)}html body .right{display:flex;align-items:center;gap:16px;flex:none}html body .icon-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--muted);cursor:pointer;transition:border-color .15s,color .15s}html body .icon-btn:hover{border-color:var(--teal-500);color:var(--teal-500)}html body .icon-btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2}html body .lang{font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.04em;cursor:pointer;white-space:nowrap}html body .lang b{color:var(--teal-900)}html body .cta{display:inline-flex;align-items:center;gap:8px;font-family:inherit;font-weight:600;font-size:14px;padding:10px 18px;border-radius:var(--r-btn);background:var(--grad);color:#fff;white-space:nowrap;box-shadow:0 8px 22px -8px rgba(0,167,163,.6);transition:transform .15s,box-shadow .2s}html body .cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(0,167,163,.7)}html body .cta svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}html body .burger{display:none;width:42px;height:42px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;align-items:center;justify-content:center;flex:none;margin-left:auto}html body .burger span{position:relative;width:18px;height:2px;background:var(--teal-900);border-radius:2px;transition:transform .25s,opacity .2s}html body .burger span::before,html body .burger span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--teal-900);border-radius:2px;transition:transform .25s}html body .burger span::before{top:-6px}html body .burger span::after{top:6px}html body .hd.open .burger span{background:transparent}html body .hd.open .burger span::before{transform:translateY(6px) rotate(45deg)}html body .hd.open .burger span::after{transform:translateY(-6px) rotate(-45deg)}

  @media(max-width:1300px){
    .nav,.right .lang,.right .icon-btn,.right .cta{display:none}
    .burger{display:flex}
    .hd .wrap{padding-inline:40px}
    .hd-inner{height:66px;gap:14px}
    .logo img{height:36px}
    .hero{padding-top:66px}
    .mobile{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:55;transform:translateX(100%);transition:transform .3s ease;overflow-y:auto;padding:calc(66px + 18px) 24px 40px}
    .hd.open ~ .mobile{transform:translateX(0)}
    .m-nav{display:flex;flex-direction:column}
    .m-nav a{font-size:16px;font-weight:500;color:var(--ink);padding:15px 6px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
    .m-nav a.active{color:var(--teal-700);font-weight:600}
    .m-nav a svg{width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2}
    .m-tools{margin-top:22px;display:flex;flex-direction:column;gap:14px}
    .m-search{display:flex;align-items:center;gap:10px;border:1px solid var(--line-2);border-radius:var(--r-btn);padding:12px 14px;color:var(--muted)}
    .m-search svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}
    .m-search input{border:0;outline:0;font-family:inherit;font-size:15px;color:var(--ink);width:100%;background:transparent}
    .m-row{display:flex;align-items:center;justify-content:space-between}
    .m-lang{font-family:var(--font-mono);font-size:13px;color:var(--muted)}
    .m-lang b{color:var(--teal-900)}
    .m-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:15px;padding:14px 22px;border-radius:var(--r-btn);background:var(--grad-soft);color:#fff;flex:1;margin-left:14px}
    .m-cta svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}
  }
  @media(min-width:1301px){.mobile{display:none}}html body /* ===== EYEBROW + BUTTONS ===== */
  .eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;gap:10px}html body .eyebrow::before{content:"";width:24px;height:2px;border-radius:2px}html body .btn{display:inline-flex;align-items:center;gap:9px;font-family:inherit;font-weight:600;font-size:15px;padding:14px 26px;border-radius:var(--r-btn);cursor:pointer;border:1.5px solid transparent;transition:transform .15s,box-shadow .2s,background .2s,color .2s;text-decoration:none}html body .btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}html body .btn-white{background:#fff;color:var(--teal-900)}html body .btn-white:hover{transform:translateY(-2px);box-shadow:0 12px 26px -8px rgba(0,0,0,.35)}html body .btn-ghost-light{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.08)}html body .btn-ghost-light:hover{background:rgba(255,255,255,.18)}html body /* ===== HERO ===== */
  .hero{position:relative;overflow:hidden;isolation:isolate;padding-top:72px;min-height:90vh;
    background:linear-gradient(170deg,#010e0c 0%,#021512 50%,#021a16 100%)}html body .hero::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
    background:radial-gradient(ellipse 80% 90% at 50% 50%,transparent 30%,rgba(0,0,0,.65) 100%)}html body .hf-reveal{position:absolute;inset:0;z-index:2;pointer-events:none;
    background:radial-gradient(ellipse 78% 80% at 72% 62%,
      rgba(0,210,196,.62) 0%,rgba(0,167,163,.30) 30%,rgba(0,130,120,.10) 56%,transparent 72%);
    animation:he-reveal-anim 4s cubic-bezier(.42,0,.58,1) infinite}
  @keyframes he-reveal-anim{
    0%,8%  {opacity:0}
    45%,60%{opacity:1}
    100%   {opacity:0}
  }html body .hero .wrap{position:relative;z-index:5}html body .hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:40px;min-height:calc(90vh - 72px);padding:60px 0 96px}html body .hero-content{max-width:600px}html body .hero h1{color:#fff;font-size:clamp(34px,4.6vw,54px);font-weight:800;margin-top:0;line-height:1.13;letter-spacing:-.015em}html body .hero h1 em{font-style:normal;color:#7fe6df}html body .hero .lead{color:rgba(255,255,255,.9);font-size:17.5px;margin-top:20px;max-width:560px;font-weight:400}html body .hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}html body .hero-visual{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px}html body .hf-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:120%;height:120%;z-index:0;pointer-events:none;
    background:radial-gradient(ellipse 55% 55% at 50% 52%,
      rgba(0,200,188,.28) 0%,rgba(0,167,163,.10) 46%,transparent 70%);
    filter:blur(4px);
    animation:he-reveal-anim 4s cubic-bezier(.42,0,.58,1) infinite}html body .hero-floor{position:absolute;bottom:26%;left:50%;transform:translateX(-50%);
    width:80%;height:24px;z-index:1;pointer-events:none;
    background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(0,210,200,.4),transparent 70%);
    filter:blur(8px);
    animation:he-floor-anim 4s cubic-bezier(.42,0,.58,1) infinite}
  @keyframes he-floor-anim{
    0%,12%{opacity:0}
    50%,64%{opacity:1}
    100%{opacity:0}
  }html body .hero-device{position:relative;z-index:2;width:110%;
    transform:rotateY(-17deg) rotateX(8deg) rotateZ(1.2deg);transform-style:preserve-3d;
    animation:float 6.5s ease-in-out infinite;
    filter:drop-shadow(0 0 14px rgba(0,210,200,.20)) drop-shadow(0 34px 46px rgba(0,0,0,.8))}html body .hero-device img{width:100%;height:auto;display:block}
  @keyframes float{0%,100%{transform:rotateY(-17deg) rotateX(8deg) rotateZ(1.2deg) translateY(0)}50%{transform:rotateY(-17deg) rotateX(8deg) rotateZ(1.2deg) translateY(-12px)}}html body .hero-bg-text{position:relative;z-index:3;font-family:var(--font-body);font-weight:800;
    font-size:clamp(36px,5.5vw,72px);letter-spacing:-.03em;white-space:nowrap;
    color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.16);
    user-select:none;pointer-events:none;line-height:1;margin-top:-4px}

  @media(max-width:980px){
    .hero-grid{grid-template-columns:1fr;gap:6px;padding:46px 0 74px;min-height:0;text-align:center}
    .hero-content{max-width:100%;margin:0 auto}
    .hero-actions{justify-content:center}
    .hero-visual{order:2;margin-top:14px;min-height:0}
    .hero-device{width:82%;transform:rotateY(-12deg) rotateX(6deg)}
    @keyframes float{0%,100%{transform:rotateY(-12deg) rotateX(6deg) translateY(0)}50%{transform:rotateY(-12deg) rotateX(6deg) translateY(-8px)}}
    .hero-bg-text{display:none}
  }html body /* ===== STATS ===== */
  .hero-stats-wrap{position:relative;z-index:6;margin-top:-66px;padding-bottom:6px}html body .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}html body .hstat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 24px;text-align:center;box-shadow:0 26px 50px -24px rgba(0,30,28,.6);transition:transform .2s ease,box-shadow .2s ease}html body .hstat:hover{transform:translateY(-3px);box-shadow:0 30px 56px -22px rgba(0,30,28,.66)}html body .hstat .ic{width:44px;height:44px;border-radius:12px;background:var(--grad);display:grid;place-items:center;margin:0 auto 12px}html body .hstat .ic svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}html body .hstat .big{font-size:28px;font-weight:800;color:var(--teal-900);line-height:1.1;letter-spacing:-.01em}html body .hstat .lbl{font-weight:600;color:var(--ink);margin-top:6px;font-size:15px}html body .hstat .sub{font-size:12.5px;color:var(--muted);margin-top:2px}
  @media(max-width:760px){.hero-stats{grid-template-columns:1fr;gap:12px}.hero-stats-wrap{margin-top:14px}}html body /* ===== LEGAL CONTEXT ===== */
  @property --ba{syntax:'<angle>';initial-value:0deg;inherits:false}
  @keyframes ba-spin{to{--ba:360deg}}html body .legal{background:#fff;padding:88px 0}html body .legal-head{text-align:center;margin:0 auto 48px}html body .legal .eyebrow{color:var(--teal-700);justify-content:center}html body .legal .eyebrow::before{background:var(--teal-500)}html body .legal h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.17;letter-spacing:-.02em}html body .legal h2 em{font-style:normal;color:var(--teal-700)}html body .legal-lead{color:var(--body);font-size:17px;margin-top:18px;line-height:1.72}html body .legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}html body .lcard{background:var(--grad-soft);border-radius:16px;padding:30px 32px;color:#fff;position:relative;overflow:hidden;border:1.5px solid rgba(255,255,255,.08);transition:transform .22s ease,box-shadow .28s ease}html body .lcard:hover{transform:translateY(-5px);box-shadow:0 28px 52px -16px rgba(0,0,0,.55)}html body .lcard::before{content:'';position:absolute;inset:0;border-radius:16px;padding:1px;background:conic-gradient(from var(--ba),transparent 0%,#5fe6df 22%,#9cf5f0 34%,transparent 52%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;animation:ba-spin 2.2s linear infinite;animation-play-state:paused;z-index:2;pointer-events:none}html body .lcard:hover::before{opacity:1;animation-play-state:running}html body .lcard::after{content:"";position:absolute;inset:0;background:radial-gradient(500px circle at 100% 0%,rgba(95,230,223,.12),transparent 60%);pointer-events:none;z-index:1}html body .lcard-warn{position:absolute;top:18px;right:22px;font-size:30px;opacity:.25;color:#fff}html body .lcard-num{font-size:42px;font-weight:800;line-height:1;letter-spacing:-.03em;color:#fff;margin-bottom:12px}html body .lcard-line{font-size:15.5px;font-weight:600;color:#fff;line-height:1.6}

  @media(max-width:820px){
    .legal{padding:64px 0 60px}
    .legal-grid{grid-template-columns:1fr;gap:16px}
    .lcard{padding:32px 28px}
    .legal-head{margin-bottom:40px}
  }html body /* ===== FIREWALL PROBLEM ===== */
  .fwp{background:var(--tint);padding:88px 0}html body .fwp-head{text-align:center;max-width:720px;margin:0 auto 48px}html body .fwp .eyebrow{color:var(--teal-700);justify-content:center}html body .fwp .eyebrow::before{background:var(--teal-500)}html body .fwp h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.18;letter-spacing:-.02em}html body .fwp h2 em{font-style:normal;color:#00726e}html body .fwp-lead{color:var(--muted);font-size:17px;margin-top:20px;line-height:1.72}html body .fw-diagram{display:flex;align-items:center;gap:0;background:#fff;background-image:radial-gradient(circle,rgba(0,114,110,.2) 1px,transparent 1px);background-size:22px 22px;border:1px solid rgba(0,114,110,.12);border-radius:24px;padding:40px 28px;position:relative;overflow:hidden;box-shadow:0 4px 28px -10px rgba(0,60,58,.1)}html body .fw-source{flex:none;width:118px;text-align:center}html body .fw-source-tag{display:inline-block;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#c2410c;padding:4px 10px;border:1px solid rgba(194,65,12,.28);border-radius:6px;background:rgba(251,146,60,.08);margin-bottom:14px}html body .fw-bugs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;justify-items:center;margin-bottom:12px}html body .fw-bug-icon{width:30px;height:30px;border-radius:8px;background:rgba(251,146,60,.1);border:1px solid rgba(251,146,60,.25);display:grid;place-items:center;color:#ea580c}html body .fw-bug-icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8}html body .fw-mal-list{display:flex;flex-direction:column;gap:5px;align-items:flex-start;padding-left:2px}html body .fw-mal-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);font-weight:500}html body .fw-mal-item i{width:8px;height:8px;border-radius:50%;flex:none;display:block}html body .fw-mal-item.new i{background:#ef4444;box-shadow:0 0 5px rgba(239,68,68,.5)}html body .fw-mal-item.old i{background:#fb923c;box-shadow:0 0 4px rgba(251,146,60,.4)}html body .fw-conn{flex:1;min-width:28px;height:160px;position:relative;align-self:center}
  @keyframes pf{0%{left:-8px;transform:translateY(-50%);opacity:0}5%{opacity:1;transform:translateY(-50%)}28%{transform:translateY(calc(-50% + 11px))}65%{transform:translateY(calc(-50% - 8px))}90%{opacity:1;transform:translateY(-50%)}100%{left:100%;transform:translateY(-50%);opacity:0}}
  @keyframes pf-2{0%{left:-8px;transform:translateY(-50%);opacity:0}5%{opacity:1;transform:translateY(-50%)}32%{transform:translateY(calc(-50% - 13px))}70%{transform:translateY(calc(-50% + 10px))}90%{opacity:1;transform:translateY(-50%)}100%{left:100%;transform:translateY(-50%);opacity:0}}
  @keyframes pf-bl{0%{left:-8px;transform:translateY(-50%);opacity:0}5%{opacity:1;transform:translateY(-50%)}30%{transform:translateY(calc(-50% + 12px))}65%{transform:translateY(calc(-50% - 9px))}80%{opacity:1;left:calc(100% - 14px);transform:translateY(-50%)}93%{opacity:0;left:100%}100%{left:100%;opacity:0;transform:translateY(-50%)}}
  @keyframes pf-bl-2{0%{left:-8px;transform:translateY(-50%);opacity:0}5%{opacity:1;transform:translateY(-50%)}26%{transform:translateY(calc(-50% - 14px))}64%{transform:translateY(calc(-50% + 11px))}80%{opacity:1;left:calc(100% - 14px);transform:translateY(-50%)}93%{opacity:0;left:100%}100%{left:100%;opacity:0;transform:translateY(-50%)}}html body .particle{position:absolute;width:7px;height:7px;border-radius:50%;top:var(--t,50%);transform:translateY(-50%);animation-fill-mode:both}html body .particle.old{background:#fb923c;box-shadow:0 0 6px rgba(251,146,60,.7);animation:pf-bl var(--dur,2s) var(--d,0s) linear infinite}html body .particle.new-m{background:#ef4444;box-shadow:0 0 7px rgba(239,68,68,.8),0 0 14px rgba(239,68,68,.25);animation:pf var(--dur,2s) var(--d,0s) linear infinite}html body .particle.wave{animation-name:pf-2}html body .particle.old.wave{animation-name:pf-bl-2}html body /* ── Card effects ── */
  @keyframes fw-scan{0%,100%{top:10%;opacity:0}8%{opacity:1}92%{top:90%;opacity:.7}99%{opacity:0}}
  @keyframes act-dot{0%,100%{opacity:.6;box-shadow:0 0 5px rgba(95,230,223,.45)}50%{opacity:1;box-shadow:0 0 12px rgba(95,230,223,.9),0 0 22px rgba(95,230,223,.2)}}
  @keyframes act-dot-r{0%,100%{opacity:.6;box-shadow:0 0 5px rgba(239,68,68,.45)}50%{opacity:1;box-shadow:0 0 12px rgba(239,68,68,.9),0 0 22px rgba(239,68,68,.2)}}
  @keyframes ico-ring{0%,100%{opacity:.25;transform:scale(.94)}50%{opacity:.9;transform:scale(1.08)}}html body .fw-layer::before{content:"";position:absolute;left:14px;right:14px;height:1px;
    background:linear-gradient(90deg,transparent,rgba(95,230,223,.55) 35%,rgba(95,230,223,.85) 50%,rgba(95,230,223,.55) 65%,transparent);
    top:10%;opacity:0;animation:fw-scan 3.8s ease-in-out infinite;pointer-events:none;z-index:1}html body .fw-layer::after{content:"";position:absolute;top:13px;right:13px;width:7px;height:7px;border-radius:50%;
    background:#5fd0cc;animation:act-dot 2.2s ease-in-out infinite;z-index:2}html body .fw-layer.danger::before{display:none}html body .fw-layer.danger::after{background:#ef4444;animation:act-dot-r 1.8s ease-in-out infinite}html body .fw-layer-ico{position:relative}html body .fw-layer-ico::after{content:"";position:absolute;inset:-6px;border-radius:17px;
    border:1px solid rgba(95,230,223,.28);animation:ico-ring 2.4s ease-in-out infinite;pointer-events:none}html body .fw-layer.danger .fw-layer-ico::after{border-color:rgba(239,68,68,.3);animation:none;opacity:.4}html body .fw-layer{flex:none;width:172px;background:linear-gradient(150deg,#004846 0%,#006764 100%);border:1px solid rgba(95,230,223,.16);border-radius:18px;padding:24px 18px 22px;text-align:center;position:relative;transition:transform .2s ease}html body .fw-layer:hover{transform:translateY(-3px)}html body .fw-layer-eye{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-300);margin-bottom:12px}html body .fw-layer-ico{width:44px;height:44px;border-radius:12px;background:rgba(0,167,163,.15);border:1px solid rgba(95,230,223,.18);display:grid;place-items:center;margin:0 auto 12px}html body .fw-layer-ico svg{width:22px;height:22px;fill:none;stroke:var(--teal-300);stroke-width:1.8}html body .fw-layer-name{font-size:13px;font-weight:800;color:#fff;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-body)}html body .fw-blocked-badge{display:inline-flex;align-items:center;gap:5px;margin-top:11px;background:rgba(0,167,163,.13);border:1px solid rgba(95,230,223,.17);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--teal-300);font-family:var(--font-body)}html body .fw-blocked-badge svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2.2}html body .fw-layer.danger{background:linear-gradient(150deg,#350c0c 0%,#541616 100%);border-color:rgba(239,68,68,.24);animation:d-glow 2.8s ease-in-out infinite}
  @keyframes d-glow{0%,100%{box-shadow:0 0 44px -12px rgba(239,68,68,.42)}50%{box-shadow:0 0 66px -6px rgba(239,68,68,.68)}}html body .fw-layer.danger .fw-layer-eye{color:#f87171}html body .fw-layer.danger .fw-layer-ico{background:rgba(239,68,68,.11);border-color:rgba(239,68,68,.24)}html body .fw-layer.danger .fw-layer-ico svg{stroke:#ef4444}html body .fw-layer.danger .fw-layer-name{color:#fca5a5}html body .fw-danger-badge{display:inline-flex;align-items:center;gap:5px;margin-top:11px;background:rgba(239,68,68,.09);border:1px solid rgba(239,68,68,.2);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;color:#f87171;font-family:var(--font-body)}html body .fw-danger-badge svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2}html body .fw-data-row{display:flex;justify-content:center;gap:10px;margin-top:11px}html body .fw-data-row svg{width:15px;height:15px;stroke:#f87171;fill:none;stroke-width:1.7;opacity:.6}html body .fw-server{flex:none;width:96px;text-align:center}html body .fw-server-box{width:64px;height:64px;border-radius:16px;background:rgba(239,68,68,.1);border:1.5px solid rgba(239,68,68,.34);display:grid;place-items:center;margin:0 auto 10px;animation:d-glow 2.8s ease-in-out infinite}html body .fw-server-box svg{width:28px;height:28px;stroke:#ef4444;fill:none;stroke-width:1.8}html body .fw-server-lbl{font-family:var(--font-mono);font-size:10px;font-weight:700;color:#f87171;text-transform:uppercase;letter-spacing:.07em;line-height:1.4}html body .fw-legend{display:flex;justify-content:center;gap:36px;margin-top:28px}html body .fw-legend-item{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--muted)}html body .fw-dot{width:9px;height:9px;border-radius:50%;flex:none;display:inline-block}html body .fw-dot.old{background:#fb923c;box-shadow:0 0 6px rgba(251,146,60,.8)}html body .fw-dot.new-m{background:#ef4444;box-shadow:0 0 8px rgba(239,68,68,.9)}
  @media(max-width:900px){.fw-diagram{display:none}.fw-legend{flex-direction:column;align-items:center;gap:10px}}html body /* ===== INDUSTRIES ===== */
  .ind{background:var(--tint);padding:88px 0;position:relative;overflow:hidden}html body .ind-head{text-align:center;max-width:700px;margin:0 auto 48px}html body .ind .eyebrow{color:var(--teal-700);justify-content:center}html body .ind .eyebrow::before{background:var(--teal-500)}html body .ind h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.18;letter-spacing:-.02em}html body .ind h2 em{font-style:normal;color:var(--teal-700)}html body .ind-lead{color:var(--muted);font-size:17px;margin-top:18px;line-height:1.72}html body .ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}html body .icard{background:#fff;border:1px solid rgba(0,114,110,.13);border-radius:20px;padding:28px 26px 26px;position:relative;overflow:hidden;display:flex;flex-direction:column;transition:transform .22s ease,box-shadow .25s ease,background .3s ease;cursor:default}html body .icard::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1px;background:conic-gradient(from var(--ba),transparent 0%,#5fe6df 22%,#9cf5f0 34%,transparent 52%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;animation:ba-spin .9s linear infinite;animation-play-state:paused;pointer-events:none}html body .icard:hover{background:var(--tint);border-color:transparent;transform:translateY(-5px);box-shadow:0 24px 48px -14px rgba(0,167,163,.15);transition:transform .22s ease,box-shadow .25s ease,background .35s ease .65s}html body .icard:hover::before{opacity:1;animation-play-state:running}html body .icard-ico{width:42px;height:42px;border-radius:11px;background:rgba(0,114,110,.08);border:1px solid rgba(0,114,110,.14);display:grid;place-items:center;color:var(--teal-700);font-size:18px;margin-bottom:14px;flex-shrink:0}html body .icard-ico svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}html body .icard-name{font-size:16px;font-weight:700;color:var(--ink);letter-spacing:-.01em;line-height:1.25;margin-bottom:8px;font-family:var(--font-body)}html body .icard-sub{font-size:14px;color:var(--muted);line-height:1.6}html body .ind-cta{text-align:center;margin-top:40px}html body .ind-cta a{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:15px 36px;border-radius:var(--r-btn);background:var(--grad-soft);color:#fff;box-shadow:0 10px 30px -8px rgba(0,167,163,.45);transition:transform .15s,box-shadow .2s;text-decoration:none}html body .ind-cta a:hover{transform:translateY(-2px);box-shadow:0 18px 40px -8px rgba(0,167,163,.62)}html body .ind-cta a i{font-size:14px}
  @media(max-width:900px){.ind-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.ind-grid{grid-template-columns:1fr}}html body /* ===== FEATURES ===== */
  .feat{background:#fff;padding:88px 0}html body .feat-head{text-align:center;max-width:800px;margin:0 auto 48px}html body .feat .eyebrow{color:var(--teal-700);justify-content:center}html body .feat .eyebrow::before{background:var(--teal-500)}html body .feat h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.17;letter-spacing:-.02em}html body .feat h2 em{font-style:normal;color:var(--teal-700)}html body .feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}html body .fcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px 34px 32px;display:flex;flex-direction:column;position:relative;transition:transform .22s ease,box-shadow .26s ease,background .3s ease}html body .fcard::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1px;background:conic-gradient(from var(--ba),transparent 0%,#5fe6df 22%,#9cf5f0 34%,transparent 52%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;animation:ba-spin .9s linear infinite;animation-play-state:paused;pointer-events:none}html body .fcard:hover{transform:translateY(-4px);box-shadow:0 22px 56px -14px rgba(0,77,74,.16);background:var(--tint);transition:transform .22s ease,box-shadow .26s ease,background .35s ease .65s}html body .fcard:hover::before{opacity:1;animation-play-state:running}html body .fcard-top{display:flex;align-items:center;gap:14px;margin-bottom:13px}html body .fcard-icon{width:44px;height:44px;border-radius:12px;background:var(--grad);display:grid;place-items:center;box-shadow:0 8px 18px -8px rgba(0,167,163,.5)}html body .fcard-icon svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}html body .fcard h3{font-size:18.5px;font-weight:700;color:var(--ink);line-height:1.3;letter-spacing:-.01em;margin-bottom:10px}html body .fcard p{font-size:16px;color:var(--body);line-height:1.7;flex:1}html body .fcard-link{display:inline-flex;align-items:center;gap:7px;margin-top:26px;font-weight:600;font-size:14px;color:var(--teal-700);width:fit-content;transition:color .15s,gap .15s}html body .fcard-link svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;transition:transform .15s}html body .fcard-link:hover{color:var(--teal-500)}html body .fcard-link:hover svg{transform:translateX(4px)}html body .feat-cta{text-align:center;margin-top:40px}html body .feat-cta a{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:15px 34px;border-radius:var(--r-btn);background:var(--grad-soft);color:#fff;box-shadow:0 10px 30px -8px rgba(0,167,163,.5);transition:transform .15s,box-shadow .2s}html body .feat-cta a:hover{transform:translateY(-2px);box-shadow:0 18px 40px -8px rgba(0,167,163,.62)}html body .feat-cta a svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}

  @media(max-width:820px){
    .feat{padding:64px 0 60px}
    .feat-grid{grid-template-columns:1fr;gap:16px}
    .feat-head{margin-bottom:40px}
    .fcard{padding:28px 24px 26px}
  }html body /* ===== WHY CHOOSE ===== */
  /* ===== SECTION DECO ===== */
  .sec-deco{position:absolute;top:0;right:0;width:480px;height:480px;pointer-events:none;z-index:0;overflow:visible}html body .sec-deco-br{top:auto;bottom:0}html body .why{background:var(--tint);padding:88px 0;position:relative;overflow:hidden}html body .why-head{text-align:center;margin-bottom:48px}html body .why .eyebrow{color:var(--teal-700);justify-content:center}html body .why .eyebrow::before{background:var(--teal-500)}html body .why h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:14px;line-height:1.15;letter-spacing:-.02em}html body .why h2 em{font-style:normal;color:var(--teal-700)}html body .why-top{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}html body .wcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 32px;transition:box-shadow .2s,transform .2s,border-color .2s}html body .wcard:hover{box-shadow:0 18px 40px -28px rgba(0,77,74,.4);transform:translateY(-3px);border-color:var(--line-2)}html body .wcard:first-child{}html body .wcard-eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:16px}html body .wcard-icon{width:46px;height:46px;border-radius:12px;background:var(--grad);display:grid;place-items:center;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(0,167,163,.5)}html body .wcard-icon svg{width:23px;height:23px;stroke:#fff;fill:none;stroke-width:1.9}html body .wcard-num{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--teal-500);letter-spacing:.14em}html body .wcard h3{font-size:20px;font-weight:700;color:var(--ink);line-height:1.3;margin-bottom:10px;letter-spacing:-.01em}html body .wcard-desc{font-size:16px;color:var(--muted);font-weight:400;line-height:1.65;margin-bottom:14px}html body .wcard-desc b{color:var(--ink)}html body .wcard-checks{display:flex;flex-direction:column;gap:9px}html body .wcheck{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--ink);font-weight:500}html body .wcheck svg{width:19px;height:19px;flex:none;stroke:var(--teal-500);fill:none;stroke-width:2.4}html body .wcheck b{color:var(--ink);font-weight:700}html body .why-bottom{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 34px 30px 38px;position:relative;overflow:hidden}html body .why-bottom::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--grad-soft)}html body .badge-3in1{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--teal-500);border:1px solid var(--line-2);border-radius:6px;padding:4px 10px;background:var(--tint);flex-shrink:0;align-self:flex-start}html body .why-bottom-hd{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}html body .why-bottom-txt{flex:1}html body .why-center-icon{width:46px;height:46px;border-radius:12px;background:var(--tint-2);display:grid;place-items:center;flex-shrink:0}html body .why-center-icon svg{width:24px;height:24px;stroke:var(--teal-700);fill:none;stroke-width:2}html body .why-bottom h3{font-size:20px;font-weight:700;color:var(--ink);letter-spacing:-.015em;margin-bottom:6px}html body .why-bottom-lead{font-size:14px;color:var(--muted);font-weight:400;line-height:1.65}html body .why-bottom-lead b{color:var(--ink);font-weight:700}html body .why-subs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}html body .wsub{background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:18px 20px}html body .wsub-label{font-family:var(--font-mono);font-size:11.5px;font-weight:700;letter-spacing:.1em;color:var(--teal-500);margin-bottom:7px}html body .wsub h4{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:5px;line-height:1.28}html body .wsub p{font-size:14px;color:var(--muted);font-weight:400;line-height:1.65}html body .why-trust{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 32px;margin-top:20px}html body .wtrust-item{flex:1;display:flex;align-items:center;gap:14px;padding:0 24px}html body .wtrust-item:first-child{padding-left:0}html body .wtrust-item:last-child{padding-right:0}html body .wtrust-icon{width:40px;height:40px;border-radius:10px;background:var(--tint-2);display:grid;place-items:center;flex-shrink:0}html body .wtrust-icon svg{width:20px;height:20px;stroke:var(--teal-700);fill:none;stroke-width:2}html body .wtrust-item strong{display:block;font-size:15px;font-weight:700;color:var(--ink);margin-bottom:2px}html body .wtrust-item span{font-size:13px;color:var(--muted);line-height:1.5}html body .wtrust-sep{width:1px;height:44px;background:var(--line);flex-shrink:0}html body .why-cta{text-align:center;margin-top:40px}html body .why-cta a{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:15px 34px;border-radius:var(--r-btn);background:var(--grad-soft);color:#fff;box-shadow:0 10px 30px -8px rgba(0,167,163,.45);transition:transform .15s,box-shadow .2s}html body .why-cta a:hover{transform:translateY(-2px);box-shadow:0 18px 40px -8px rgba(0,167,163,.62)}html body .why-cta a svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}

  @media(max-width:820px){
    .why{padding:64px 0 60px}
    .why-top{grid-template-columns:1fr}
    .wcard:first-child{}
    .why-subs{grid-template-columns:1fr;gap:10px}
    .why-bottom{padding:26px 24px 26px 28px}
    .wcard{padding:26px 24px}
    .why-trust{flex-direction:column;gap:14px;padding:20px 24px}
    .wtrust-item{padding:0}
    .wtrust-sep{display:none}
  }html body /* ===== BENEFITS ===== */
  .ben{background:#fff;padding:88px 0}html body .ben-head{text-align:center;max-width:720px;margin:0 auto 48px}html body .ben .eyebrow{color:var(--teal-700);justify-content:center}html body .ben .eyebrow::before{background:var(--teal-500)}html body .ben h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.18;letter-spacing:-.02em}html body .ben h2 em{font-style:normal;color:var(--teal-700)}html body .ben-lead{color:var(--muted);font-size:17px;margin-top:16px;line-height:1.72}html body .ben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}html body .bcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;transition:transform .22s ease,box-shadow .26s ease}html body .bcard::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1px;background:conic-gradient(from var(--ba),transparent 0%,#5fe6df 22%,#9cf5f0 34%,transparent 52%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;animation:ba-spin 2.2s linear infinite;animation-play-state:paused;pointer-events:none}html body .bcard:hover{transform:translateY(-4px);box-shadow:0 22px 56px -14px rgba(0,77,74,.16)}html body .bcard:hover::before{opacity:1;animation-play-state:running}html body .bcard-icon{width:56px;height:56px;border-radius:15px;background:var(--tint-2);display:grid;place-items:center;margin-bottom:18px;flex-shrink:0}html body .bcard-icon svg{width:27px;height:27px;stroke:var(--teal-500);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}html body .bcard h3{font-size:18.5px;font-weight:700;color:var(--ink);line-height:1.32;letter-spacing:-.01em;margin-bottom:12px}html body .bcard p{font-size:16px;color:var(--body);line-height:1.72;flex:1}

  @media(max-width:820px){
    .ben{padding:64px 0 60px}
    .ben-grid{grid-template-columns:1fr;gap:16px}
    .ben-head{margin-bottom:40px}
  }html body /* ===== CLIENTS MARQUEE ===== */
  .cta-band{background:linear-gradient(135deg,#004d4a 0%,#00a7a3 100%);color:#fff;text-align:center;padding:60px 0;position:relative;overflow:hidden}html body .cta-band::after{content:"";position:absolute;left:50%;top:-60%;width:600px;height:600px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.1),transparent);pointer-events:none}html body .cta-band .wrap{position:relative;z-index:1}html body .cta-band h3{color:#fff;font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:-.015em}html body .cta-band p{color:rgba(255,255,255,.9);margin-top:10px;font-size:16px;max-width:560px;margin-left:auto;margin-right:auto}html body .clients{background:#fff;padding:72px 0 68px}html body .clients-head{text-align:center;margin-bottom:44px}html body .clients h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);line-height:1.17;letter-spacing:-.02em}html body .clients h2 em{font-style:normal;color:var(--teal-700)}html body .marquee-wrap{overflow:hidden;-webkit-mask:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%);mask:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%)}
  @keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}html body .marquee-track{display:flex;align-items:center;gap:64px;width:max-content;animation:marquee 38s linear infinite;padding:8px 0}html body .marquee-track:hover{animation-play-state:paused}html body .logo-item{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.45;transition:opacity .2s;color:var(--teal-900)}html body .logo-item:hover{opacity:1}html body .logo-item svg{display:block;fill:currentColor;stroke:none}html body .logo-item img{display:block;height:40px;width:auto;max-width:180px;filter:grayscale(1);transition:filter .25s;object-fit:contain}html body .logo-item:hover img{filter:none}html body /* square logos still need more height */
  .logo-item img[alt="OOTOYA"],html body .logo-item img[alt="RELO CLUB"]{height:54px;max-width:54px}html body /* medium-height logos */
  .logo-item img[alt="Link and Motivation"],html body .logo-item img[alt="Route Inn BLC"],html body .logo-item img[alt="Premium Water"],html body .logo-item img[alt="SAAF"]{height:46px}html body /* very wide logos — cap width to keep proportional */
  .logo-item img[alt="GMO"],html body .logo-item img[alt="Findex"],html body .logo-item img[alt="Sun Frontier"],html body .logo-item img[alt="Japan PC Service"],html body .logo-item img[alt="NCCJ"]{max-width:150px;height:auto;max-height:42px}html body .logo-item .lt{font-size:17px;font-weight:800;letter-spacing:.06em;font-family:var(--font-body);white-space:nowrap;color:currentColor}html body .logo-item .lt-sm{font-size:13px;font-weight:700;letter-spacing:.12em;font-family:var(--font-body);white-space:nowrap;color:currentColor}html body /* ===== TESTIMONIALS ===== */
  .testi{background:var(--tint);padding:88px 0}html body .testi-head{text-align:center;max-width:900px;margin:0 auto 48px}html body .testi .eyebrow{color:var(--teal-700);justify-content:center}html body .testi .eyebrow::before{background:var(--teal-500)}html body .testi h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.17;letter-spacing:-.02em}html body .testi h2 em{font-style:normal;color:var(--teal-700)}html body .testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}html body .tcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px 32px 30px;display:flex;flex-direction:column;position:relative;transition:transform .22s ease,box-shadow .26s ease}html body .tcard::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1px;background:conic-gradient(from var(--ba),transparent 0%,#5fe6df 22%,#9cf5f0 34%,transparent 52%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;animation:ba-spin 2.2s linear infinite;animation-play-state:paused;pointer-events:none}html body .tcard:hover{transform:translateY(-4px);box-shadow:0 22px 56px -14px rgba(0,77,74,.14)}html body .tcard:hover::before{opacity:1;animation-play-state:running}html body .tcard-qdeco{width:36px;height:36px;border-radius:9px;background:var(--tint-2);display:grid;place-items:center;margin-bottom:20px;flex-shrink:0}html body .tcard-qdeco svg{width:18px;height:18px;fill:var(--teal-500)}html body .tcard-text{font-size:15px;color:var(--ink);line-height:1.75;font-weight:400;flex:1;margin-bottom:26px}html body .tcard-author{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line);margin-bottom:18px}html body .tcard-avatar{width:42px;height:42px;border-radius:50%;background:var(--grad);display:grid;place-items:center;flex-shrink:0;font-weight:800;font-size:15px;color:#fff}html body .tcard-info{}html body .tcard-name{font-weight:700;color:var(--ink);font-size:14.5px;line-height:1.3}html body .tcard-role{font-size:12.5px;color:var(--muted);margin-top:2px}html body .tcard-stars{display:flex;gap:3px}html body .tcard-stars svg{width:15px;height:15px;fill:#f59e0b}html body .tcard-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}html body .tcard-meta span{font-size:11px;color:var(--muted);font-family:var(--font-mono);background:var(--tint);border-radius:5px;padding:3px 8px;white-space:nowrap}

  @media(max-width:820px){
    .testi{padding:64px 0 60px}
    .testi-grid{grid-template-columns:1fr;gap:16px}
    .testi-head{margin-bottom:40px}
  }html body /* ===== BLOG ===== */
  .blog{background:#fff;padding:88px 0}html body .blog-head{text-align:center;max-width:680px;margin:0 auto 48px}html body .blog .eyebrow{color:var(--teal-700);justify-content:center}html body .blog .eyebrow::before{background:var(--teal-500)}html body .blog h2{font-size:clamp(27px,3.4vw,38px);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.17;letter-spacing:-.02em}html body .blog h2 em{font-style:normal;color:var(--teal-700)}html body .blog-lead{color:var(--muted);font-size:17px;margin-top:14px;line-height:1.7}html body .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}html body .post{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}html body .post:hover{box-shadow:0 18px 40px -28px rgba(0,77,74,.45);transform:translateY(-3px)}html body .post .thumb{height:158px;background:var(--grad-soft);position:relative;flex-shrink:0;overflow:hidden}html body .post .thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}html body .post .thumb .cat{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:var(--teal-900);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:6px;font-weight:600;z-index:2}html body .post .body{padding:22px;display:flex;flex-direction:column;flex:1}html body .post .date{font-family:var(--font-mono);font-size:11.5px;color:var(--muted)}html body .post h4{font-size:16.5px;font-weight:700;color:var(--ink);line-height:1.35;margin:8px 0 9px;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html body .post h4 a{color:inherit;text-decoration:none;transition:color .15s}html body .post h4 a:hover{color:var(--teal-700)}html body .post p{font-size:14.5px;color:var(--muted);line-height:1.7;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}html body .post .read{margin-top:14px;color:var(--teal-500);font-weight:600;font-size:13px;text-decoration:none;display:inline-block}html body .blog-more{text-align:center;margin-top:40px}html body .blog-more a{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14.5px;color:var(--teal-700);border:1.5px solid var(--teal-300);border-radius:var(--r-btn);padding:12px 26px;transition:background .18s,color .18s,border-color .18s}html body .blog-more a:hover{background:var(--teal-700);color:#fff;border-color:var(--teal-700)}html body .blog-more a svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;transition:transform .15s}html body .blog-more a:hover svg{transform:translateX(3px)}

  @media(max-width:820px){
    .blog{padding:64px 0 60px}
    .blog-grid{grid-template-columns:1fr;gap:16px}
    .blog-head{margin-bottom:40px}
  }html body /* ===== CTA ===== */
  .cta-section{background:var(--grad-soft);padding:88px 0;position:relative;overflow:hidden;isolation:isolate}html body .cta-section::before{content:'';position:absolute;inset:0;background:radial-gradient(700px circle at 0% 60%,rgba(255,255,255,.07),transparent 55%),radial-gradient(500px circle at 100% 10%,rgba(0,0,0,.15),transparent 60%);pointer-events:none}html body .cta-cols{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;position:relative;z-index:1}html body .cta-lead{font-family:var(--font-mono);font-size:12.5px;font-weight:700;letter-spacing:.12em;color:rgba(255,255,255,.55);text-transform:uppercase;margin-bottom:18px}html body .cta-section h2{font-size:clamp(28px,3.4vw,40px);font-weight:700;color:#fff;line-height:1.16;letter-spacing:-.02em;margin-bottom:28px}html body .cta-section h2 em{font-style:normal;color:#cffff9}html body .cta-bullets{display:flex;flex-direction:column;gap:13px}html body .cta-bullet{display:flex;align-items:center;gap:12px;font-size:15px;color:rgba(255,255,255,.88);font-weight:500}html body .cta-bullet-icon{width:26px;height:26px;border-radius:8px;background:rgba(255,255,255,.18);display:grid;place-items:center;flex-shrink:0}html body .cta-bullet-icon svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2.6}html body .cta-form-wrap{background:#fff;border-radius:18px;padding:32px;box-shadow:0 24px 64px -16px rgba(0,0,0,.28)}html body .cta-form-title{font-size:20px;font-weight:700;color:var(--ink);margin-bottom:6px}html body .cta-form-sub{font-size:13.5px;color:var(--muted);margin-bottom:24px;line-height:1.6}html body .cta-form{display:flex;flex-direction:column;gap:12px}html body .cta-form input{width:100%;padding:13px 16px;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .18s;box-sizing:border-box}html body .cta-form input::placeholder{color:var(--muted)}html body .cta-form input:focus{border-color:var(--teal-500)}html body .cta-form button{width:100%;padding:15px 20px;border-radius:10px;border:none;background:var(--grad-soft);color:#fff;font-family:var(--font-body);font-size:15.5px;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .2s;box-shadow:0 8px 24px -6px rgba(0,114,110,.4);margin-top:4px}html body .cta-form button:hover{transform:translateY(-2px);box-shadow:0 16px 36px -6px rgba(0,114,110,.5)}html body .cta-form-note{font-size:11.5px;color:var(--muted);text-align:center;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:5px}html body .cta-form-note svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}
  @media(max-width:860px){
    .cta-section{padding:64px 0}
    .cta-cols{grid-template-columns:1fr;gap:40px}
  }html body /* ===== FOOTER ===== */
  .ft{
    background:#0f2422;
    color:rgba(255,255,255,.8);padding-top:56px;position:relative;overflow:hidden
  }html body .ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr 1fr;gap:36px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.14)}html body .ft-brand{}html body .ft-logo{height:56px;width:auto;display:block;margin-bottom:16px}html body .ft-tagline{font-size:13.5px;line-height:1.65;color:#fff;max-width:240px;margin-bottom:24px}html body .ft-contact{display:flex;flex-direction:column;gap:8px}html body .ft-contact a,html body .ft-contact p{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#fff;transition:opacity .15s;margin:0}html body .ft-contact a:hover{opacity:.8}html body .ft-contact svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;flex-shrink:0;margin-top:2px}html body .ft-meta{display:flex;flex-direction:column;gap:5px;margin-top:14px}html body .ft-meta span{font-size:12px;color:#fff;font-family:var(--font-body);letter-spacing:.04em}html body .ft-col h4{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:18px;font-family:var(--font-body)}html body .ft-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}html body .ft-col ul a{font-size:14px;color:#fff;transition:opacity .15s}html body .ft-col ul a:hover{opacity:.75}html body .ft-bottom{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:16px;flex-wrap:wrap}html body .ft-copy{font-size:12.5px;color:#fff}html body .ft-support{font-size:12.5px;color:#fff}html body .ft-socials{display:flex;gap:10px}html body .ft-social{width:34px;height:34px;border-radius:9px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);display:grid;place-items:center;color:rgba(255,255,255,.8);transition:border-color .15s,color .15s,background .15s}html body .ft-social:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.18)}html body .ft-social svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
  @media(max-width:900px){.ft-grid{grid-template-columns:1fr 1fr;gap:32px}.ft-brand{grid-column:1/-1}}
  @media(max-width:540px){.ft-grid{grid-template-columns:1fr}.ft-bottom{flex-direction:column;align-items:flex-start}}html body /* ===== RESPONSIVE FIXES ===== */
  @media(max-width:900px){.wrap{padding-inline:24px}.hd .wrap{padding-inline:24px}}
  @media(max-width:560px){.wrap{padding-inline:16px}.hd .wrap{padding-inline:16px}}html body /* Industries mobile: 2 cột,html body card nằm ngang */
  @media(max-width:520px){
    .ind-grid{grid-template-columns:1fr 1fr;gap:10px}
    .icard{flex-direction:column;align-items:flex-start;gap:0;padding:16px 14px;text-align:left}
    .icard-ico{margin-bottom:12px;flex-shrink:0;width:40px;height:40px;border-radius:11px}
    .icard-name{font-size:14px;margin-bottom:4px}
    .icard-sub{font-size:12px}
  }html body /* ===== FIREWALL MOBILE DIAGRAM ===== */
  .fw-mobile-flow{display:none}
  @media(max-width:900px){.fw-mobile-flow{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-bottom:28px}}html body .fwmf-src{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;text-align:center}html body .fwmf-bugs{display:flex;justify-content:center;gap:8px;margin-bottom:12px;margin-top:10px}html body .fwmf-types{display:flex;justify-content:center;gap:16px}html body .fwmf-types span{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}html body .fwmf-dot-r{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ef4444;flex:none;box-shadow:0 0 5px rgba(239,68,68,.6)}html body .fwmf-dot-o{display:inline-block;width:7px;height:7px;border-radius:50%;background:#fb923c;flex:none;box-shadow:0 0 4px rgba(251,146,60,.5)}html body .fwmf-arr{display:block;height:64px;position:relative;overflow:hidden}html body .fwmf-line{display:none}html body .fwmf-tip{display:none}
  @keyframes pfv-a{0%{top:-8px;left:46%;opacity:0}10%{opacity:1}30%{left:36%}65%{left:56%}90%{left:44%;opacity:1}100%{top:108%;left:48%;opacity:0}}
  @keyframes pfv-b{0%{top:-8px;left:52%;opacity:0}10%{opacity:1}35%{left:64%}68%{left:40%}90%{left:54%;opacity:1}100%{top:108%;left:50%;opacity:0}}
  @keyframes pfv-c{0%{top:-8px;left:42%;opacity:0}10%{opacity:1}40%{left:58%}70%{left:38%}90%{left:50%;opacity:1}100%{top:108%;left:44%;opacity:0}}
  @keyframes pfv-d{0%{top:-8px;left:58%;opacity:0}10%{opacity:1}28%{left:44%}62%{left:62%}88%{left:50%;opacity:1}100%{top:108%;left:56%;opacity:0}}
  @keyframes pfv-bl-a{0%{top:-8px;left:46%;opacity:0}10%{opacity:1}32%{left:36%}60%{left:54%;opacity:1}78%{opacity:0}100%{top:108%;opacity:0}}
  @keyframes pfv-bl-b{0%{top:-8px;left:54%;opacity:0}10%{opacity:1}38%{left:66%}62%{left:42%;opacity:1}80%{opacity:0}100%{top:108%;opacity:0}}html body .fwmf-pv{position:absolute;width:7px;height:7px;border-radius:50%;pointer-events:none;animation-timing-function:linear;animation-iteration-count:infinite;animation-duration:var(--dur,2s);animation-delay:var(--d,0s);animation-fill-mode:both}html body .fwmf-pv.old{background:#fb923c;box-shadow:0 0 6px rgba(251,146,60,.7)}html body .fwmf-pv.new-m{background:#ef4444;box-shadow:0 0 7px rgba(239,68,68,.8),0 0 14px rgba(239,68,68,.25)}html body .fwmf-pv.s1{animation-name:pfv-a}html body .fwmf-pv.s2{animation-name:pfv-b}html body .fwmf-pv.s3{animation-name:pfv-c}html body .fwmf-pv.s4{animation-name:pfv-d}html body .fwmf-pv.s1.old,html body .fwmf-pv.s3.old{animation-name:pfv-bl-a}html body .fwmf-pv.s2.old,html body .fwmf-pv.s4.old{animation-name:pfv-bl-b}html body .fwmf-layer{background:linear-gradient(150deg,#004846 0%,#006764 100%);border:1px solid rgba(95,230,223,.18);border-radius:16px;padding:18px;text-align:center;position:relative}html body .fwmf-layer::before{content:"";position:absolute;left:14px;right:14px;height:1px;background:linear-gradient(90deg,transparent,rgba(95,230,223,.55) 35%,rgba(95,230,223,.85) 50%,rgba(95,230,223,.55) 65%,transparent);top:10%;opacity:0;animation:fw-scan 3.8s ease-in-out infinite;pointer-events:none;z-index:1}html body .fwmf-layer::after{content:"";position:absolute;top:12px;right:12px;width:7px;height:7px;border-radius:50%;background:#5fd0cc;animation:act-dot 2.2s ease-in-out infinite;z-index:2}html body .fwmf-ico::after{content:"";position:absolute;inset:-4px;border-radius:14px;border:1px solid rgba(95,230,223,.28);animation:ico-ring 2.4s ease-in-out infinite;pointer-events:none}html body .fwmf-eye{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-300);margin-bottom:8px;font-weight:600}html body .fwmf-ico{width:38px;height:38px;border-radius:10px;background:rgba(0,167,163,.15);border:1px solid rgba(95,230,223,.18);display:grid;place-items:center;margin:0 auto 8px;position:relative}html body .fwmf-ico svg{width:19px;height:19px;fill:none;stroke:var(--teal-300);stroke-width:1.8}html body .fwmf-name{font-size:14px;font-weight:800;color:#fff;margin-bottom:8px}html body .fwmf-ok{display:inline-flex;align-items:center;gap:4px;background:rgba(0,167,163,.13);border:1px solid rgba(95,230,223,.2);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:700;color:var(--teal-300);margin-bottom:6px}html body .fwmf-ok svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:2.5}html body .fwmf-pass{font-size:11px;color:rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;gap:4px}html body .fwmf-danger-box{background:linear-gradient(150deg,#350c0c 0%,#541616 100%);border:1px solid rgba(239,68,68,.25);border-radius:16px;padding:18px;text-align:center;animation:d-glow 2.8s ease-in-out infinite}html body .fwmf-danger-box .fwmf-eye{color:#f87171}html body .fwmf-danger-box .fwmf-ico{background:rgba(239,68,68,.11);border-color:rgba(239,68,68,.24)}html body .fwmf-danger-box .fwmf-ico svg{stroke:#ef4444}html body .fwmf-danger-box .fwmf-name{color:#fca5a5}html body .fwmf-bad{display:inline-flex;align-items:center;gap:4px;background:rgba(239,68,68,.09);border:1px solid rgba(239,68,68,.2);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:700;color:#f87171}html body .fwmf-server{background:#fff;border:1.5px solid rgba(239,68,68,.3);border-radius:16px;padding:18px;text-align:center}html body .fwmf-server-ico{width:44px;height:44px;border-radius:12px;background:rgba(239,68,68,.1);border:1.5px solid rgba(239,68,68,.34);display:grid;place-items:center;margin:0 auto 8px;animation:d-glow 2.8s ease-in-out infinite}html body .fwmf-server-ico svg{width:22px;height:22px;stroke:#ef4444;fill:none;stroke-width:1.8}html body .fwmf-server-name{font-size:14px;font-weight:700;color:var(--ink)}html body .fwmf-server-sub{font-size:12px;color:#ef4444;margin-top:3px}html body /* ===== TESTIMONIALS SLIDER ===== */
  .testi-slider{position:relative;overflow:hidden}html body .testi-track{display:flex;width:100%;transition:transform .5s cubic-bezier(.4,0,.2,1)}html body .testi-track .tcard{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box}html body .testi-dots{display:flex;align-items:center;justify-content:center;gap:8px}
  @media(min-width:821px){
    .testi-track{gap:22px}
    .testi-track .tcard{flex:0 0 calc((100% - 44px) / 3);width:auto;padding:36px 28px 30px}
  }html body .tdot{width:8px;height:8px;border-radius:4px;background:var(--line-2);border:none;cursor:pointer;padding:0;transition:background .25s,width .25s;outline:none}html body .tdot.active{width:24px;background:var(--teal-500)}html body .testi-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:28px}html body .tnav{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--line-2);background:#fff;cursor:pointer;display:grid;place-items:center;transition:border-color .2s,background .2s,color .2s;color:var(--ink);flex-shrink:0}html body .tnav:hover{border-color:var(--teal-500);background:var(--tint);color:var(--teal-700)}html body .tnav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}html body /* Search bar */
.icon-btn.active{border-color:var(--teal-500);color:var(--teal-500);background:var(--tint-2)}html body .hd-search-bar{position:absolute;left:0;right:0;top:100%;background:rgba(255,255,255,.98);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:14px 40px;display:flex;align-items:center;gap:12px;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s,transform .2s;z-index:10}html body .hd.search-open .hd-search-bar{opacity:1;transform:translateY(0);pointer-events:auto}html body .hd-search-form{flex:1;display:flex;align-items:center;gap:10px;border:1.5px solid var(--teal-500);border-radius:var(--r-btn);padding:10px 16px}html body .hd-search-form input[type="search"]{flex:1;border:0;outline:0;font-family:inherit;font-size:15px;color:var(--ink);background:transparent}html body .hd-search-form input[type="search"]::placeholder{color:var(--muted)}html body .hd-search-form svg{width:17px;height:17px;stroke:var(--muted);fill:none;stroke-width:2;flex:none}html body .hd-search-form button[type="submit"]{background:var(--grad-soft);border:0;border-radius:7px;padding:6px 14px;color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s}html body .hd-search-form button[type="submit"]:hover{opacity:.85}html body .hd-search-close{background:none;border:0;cursor:pointer;color:var(--muted);width:32px;height:32px;display:grid;place-items:center;border-radius:8px;flex:none;transition:background .15s,color .15s}html body .hd-search-close:hover{background:var(--tint-2);color:var(--teal-700)}html body .hd-search-close svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}
/* admin-bar offset — tránh header bị che */
body.admin-bar .hd{top:32px}
@media screen and (max-width:782px){body.admin-bar .hd{top:46px}}

/* footer full-width */
.elementor-widget-fddh-footer .fddh-scope,.elementor-widget-fddh-footer .ft{display:block;width:100%}

/* footer full-bleed — break out khỏi Elementor column constraint */
.elementor-widget-fddh-footer .elementor-widget-container{padding:0!important}
.elementor-widget-fddh-footer .fddh-scope{position:relative;width:100vw;left:50%;transform:translateX(-50%);overflow:hidden}

/* ════ SEARCH PANEL ════ */
.hd-search{position:fixed;top:72px;left:0;right:0;z-index:9999;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line,#e0ece9);padding:18px 0;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease;box-shadow:0 8px 32px rgba(0,40,38,.1)}
body.admin-bar .hd-search{top:calc(72px + 32px)}
@media screen and (max-width:782px){body.admin-bar .hd-search{top:calc(66px + 46px)}}
.hd-search.open{opacity:1;transform:translateY(0);pointer-events:auto}
.hd-search-inner{display:flex;align-items:center}
.hd-search-form{display:flex;align-items:center;gap:14px;width:100%;border-bottom:1.5px solid var(--line,#e0ece9);padding-bottom:12px}
.hd-search-icon{width:20px;height:20px;stroke:var(--muted,#6b807c);fill:none;stroke-width:2;flex-shrink:0}
.hd-search-form input[type=search]{flex:1;background:transparent;border:0;outline:0;font-family:var(--font-body,'Be Vietnam Pro',sans-serif);font-size:18px;font-weight:500;color:var(--ink,#0f2422);caret-color:var(--teal-500,#00a7a3)}
.hd-search-form input[type=search]::placeholder{color:var(--muted,#6b807c)}
.hd-search-form input[type=search]::-webkit-search-cancel-button{display:none}
.hd-search-close{background:transparent;border:0;padding:4px;display:grid;place-items:center;flex-shrink:0;cursor:pointer;color:var(--muted,#6b807c);transition:color .15s}
.hd-search-close:hover{color:var(--ink,#0f2422)}
.hd-search-close svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}

/* icon-btn hover — override Kit accent color */
html body .fddh-scope .icon-btn:hover{background:var(--tint-2,#e6f5f4)!important;border-color:var(--teal-500,#00a7a3)!important;color:var(--teal-700,#00726e)!important;box-shadow:none!important}

html body .elementor-location-header{position:sticky!important;top:0!important;z-index:100!important}html body .elementor-location-header .elementor-section,html body .elementor-location-header .elementor-container,html body .elementor-location-header .elementor-column,html body .elementor-location-header .elementor-widget-container,html body .elementor-location-header .fddh-scope{padding:0!important;margin:0!important;max-width:100%!important;width:100%!important;overflow:visible!important}