<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title id="t-title">SwiftRec — Free Screen Recorder for Windows (No Watermark)</title>
<meta id="t-desc" name="description" content="SwiftRec is a free screen recorder for Windows. Record your screen, webcam and audio with no watermark and no time limit. Saves to MP4. Free download.">
<meta property="og:title" content="SwiftRec — Free Screen Recorder for Windows">
<meta property="og:description" content="Record your screen, webcam and audio in one click. No watermark, no time limit. Saves to MP4. 100% free.">
<meta property="og:type" content="website">
<meta property="og:image" content="logo.png">
<link rel="icon" type="image/png" href="logo.png">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<style>
  :root{--bg:#14171c;--card:rgba(24,29,38,.6);--accent:#13e8a5;--accent2:#0fcf90;--rec:#f03e3e;--txt:#eef2fb;--mut:#9aa3bd}
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--txt);line-height:1.5;min-height:100vh;position:relative;background:var(--bg);overflow-x:hidden}
  /* динамический фон — под плитками ЦЕЛЬНАЯ следующая картинка; плитки волной уходят, открывая её (без разрывов) */
  #bgshow{position:fixed;inset:0;z-index:-2;overflow:hidden;background:#0a0d11;perspective:1500px}
  .bgbase{position:absolute;inset:0;background-size:var(--bw) var(--bh);background-position:0 0;background-repeat:no-repeat;
    filter:saturate(1.05) brightness(.72)}
  .tile{position:absolute;background-size:var(--bw) var(--bh);background-repeat:no-repeat;
    filter:saturate(1.05) brightness(.72);backface-visibility:hidden;transform-origin:center;
    will-change:transform,opacity}
  .tile.away{animation:rollaway 1.15s cubic-bezier(.42,0,.58,1) both}
  @keyframes rollaway{
    0%{transform:rotateX(0deg);opacity:1;box-shadow:0 0 0 0 rgba(19,232,165,0)}
    25%{box-shadow:inset 0 0 0 1.5px rgba(84,242,193,.95),0 0 18px 3px rgba(19,232,165,.6)}
    60%{opacity:1;box-shadow:inset 0 0 0 1px rgba(84,242,193,.7),0 0 14px 2px rgba(19,232,165,.4)}
    100%{transform:rotateX(-90deg);opacity:0;box-shadow:0 0 6px 1px rgba(19,232,165,.15)}
  }
  body::after{content:"";position:fixed;inset:0;z-index:-1;
    background:linear-gradient(180deg,rgba(20,23,28,.22) 0%,rgba(20,23,28,.48) 46%,rgba(20,23,28,.84) 100%),
               radial-gradient(1100px 520px at 80% 6%,rgba(19,232,165,.12),transparent 60%)}
  .wrap{max-width:770px;margin:0 auto;padding:20px 20px 60px}

  .topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
  .brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:19px;letter-spacing:.2px}
  .brand img{width:34px;height:34px;border-radius:9px;filter:drop-shadow(0 0 10px rgba(19,232,165,.45))}
  .topright{display:flex;align-items:center;gap:9px}
  .tg{display:inline-flex;align-items:center;gap:7px;background:rgba(41,159,217,.14);border:1px solid rgba(64,180,235,.42);color:#9ddcf7;font-weight:700;font-size:13px;padding:6px 13px;border-radius:999px;text-decoration:none;transition:.16s;backdrop-filter:blur(6px);white-space:nowrap}
  .tg:hover{background:rgba(41,159,217,.28);border-color:#4db4eb;color:#e2f4ff;box-shadow:0 0 16px rgba(64,180,235,.4);transform:translateY(-1px)}
  .tg svg{width:15px;height:15px;fill:currentColor;flex-shrink:0}
  .lang{display:flex;gap:2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:3px}
  .lang button{border:0;background:transparent;color:var(--mut);font-weight:700;font-size:13px;padding:5px 12px;border-radius:999px;cursor:pointer;transition:.15s}
  .lang button.on{background:var(--accent);color:#04140a}
  @media(max-width:470px){.tg span{display:none}.tg{padding:7px 10px;gap:0}}

  h1{font-size:39px;line-height:1.1;margin:22px 0 12px;letter-spacing:-.7px;font-weight:800}
  h1 b{background:linear-gradient(90deg,#13e8a5,#54f2c1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .sub{color:#c3cadd;font-size:17.5px;margin-bottom:20px;max-width:640px}
  .os{display:inline-flex;align-items:center;gap:8px;background:rgba(15,44,34,.7);color:#79f0c4;border:1px solid #185c43;padding:6px 13px;border-radius:999px;font-size:13px;margin-bottom:20px;backdrop-filter:blur(6px)}

  .cta{display:block;width:100%;text-align:center;background:linear-gradient(180deg,#1cf0ad,#0fbf86);color:#03150e;font-weight:900;font-size:24px;padding:23px;border:0;border-radius:16px;cursor:pointer;text-decoration:none;position:relative;box-shadow:0 14px 34px rgba(19,232,165,.38);animation:pulse 2.2s ease-in-out infinite}
  .cta:hover{transform:translateY(-2px);animation-play-state:paused;box-shadow:0 18px 48px rgba(19,232,165,.58)}
  .cta small{display:block;font-weight:700;font-size:13px;opacity:.82;margin-top:5px}
  @keyframes pulse{0%,100%{box-shadow:0 14px 34px rgba(19,232,165,.38),0 0 0 0 rgba(19,232,165,.4);transform:translateY(0)}
    50%{box-shadow:0 18px 44px rgba(19,232,165,.5),0 0 0 14px rgba(19,232,165,0);transform:translateY(-2px)}}

  .meta{display:flex;gap:18px;justify-content:center;color:#aab2ca;font-size:13px;margin:15px 0 26px;flex-wrap:wrap}
  .meta span{display:inline-flex;align-items:center;gap:6px}

  /* живой демо-виджет рекордера */
  .shot{position:relative;margin:6px auto 30px;max-width:560px;text-align:center}
  .shot::before{content:"";position:absolute;left:50%;top:44%;width:74%;height:64%;transform:translate(-50%,-50%);z-index:-1;
    background:radial-gradient(closest-side,rgba(19,232,165,.4),transparent 70%);filter:blur(34px)}
  .shot .cap{color:#b3bbd4;font-size:13px;margin-top:10px}
  @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
  .appwin{text-align:left;background:#12151b;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.6);animation:float 6s ease-in-out infinite}
  .aw-tb{display:flex;align-items:center;justify-content:space-between;background:#1a1e26;padding:9px 13px;font-size:12px;color:#8c96ac}
  .aw-tbl{display:flex;align-items:center;gap:8px}
  .aw-tbl img{width:18px;height:18px;border-radius:5px}
  .aw-ctrls{display:flex;gap:13px;font-style:normal;font-size:11px;opacity:.75}
  .aw-body{padding:16px 18px 15px}
  /* превью экрана */
  .aw-preview{position:relative;height:172px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.07);
    background:#0c1a1e;}
  .aw-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:1;transition:opacity .35s ease}
  .aw-recbadge{position:absolute;top:10px;left:10px;display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.55);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;color:#fff;opacity:0;transition:opacity .3s}
  .aw-recbadge.live{opacity:1}
  .aw-recbadge .dot{width:9px;height:9px;border-radius:50%;background:var(--rec);box-shadow:0 0 8px var(--rec);animation:blink 1s steps(1) infinite}
  @keyframes blink{50%{opacity:.25}}
  .aw-time{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.55);border-radius:8px;padding:4px 9px;font-size:12.5px;font-weight:800;font-variant-numeric:tabular-nums;color:#eef2fb}
  /* источник */
  .aw-src{display:flex;gap:8px;margin:14px 0 12px}
  .aw-chip{font-size:12.5px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.1);color:#aab2ca;background:rgba(255,255,255,.03)}
  .aw-chip.on{color:#04140a;background:var(--accent);border-color:var(--accent);font-weight:800}
  /* аудио уровни */
  .aw-audio{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
  .aw-arow{display:flex;align-items:center;gap:10px;font-size:12.5px;color:#aab2ca}
  .aw-arow .lbl{flex:0 0 78px}
  .eq{flex:1;display:flex;align-items:flex-end;gap:3px;height:22px}
  .eq i{flex:1;height:14%;background:linear-gradient(180deg,#54f2c1,#0fbf86);border-radius:2px;opacity:.5}
  .eq.live i{animation:eq .8s ease-in-out infinite alternate;opacity:1}
  .eq.live.mic i{animation-duration:.62s}
  @keyframes eq{from{height:12%}to{height:100%}}
  .eq i:nth-child(2){animation-delay:.09s}.eq i:nth-child(3){animation-delay:.18s}.eq i:nth-child(4){animation-delay:.05s}
  .eq i:nth-child(5){animation-delay:.24s}.eq i:nth-child(6){animation-delay:.13s}.eq i:nth-child(7){animation-delay:.3s}
  .eq i:nth-child(8){animation-delay:.02s}.eq i:nth-child(9){animation-delay:.2s}.eq i:nth-child(10){animation-delay:.11s}
  .eq i:nth-child(11){animation-delay:.27s}.eq i:nth-child(12){animation-delay:.07s}
  /* кнопки */
  .aw-btns{display:flex;gap:10px;align-items:center}
  .aw-rec{display:flex;align-items:center;gap:9px;padding:12px 20px;border:0;border-radius:11px;background:linear-gradient(180deg,#ff5757,#e02e2e);color:#fff;font-weight:800;font-size:14px;cursor:default;transition:transform .12s,filter .12s}
  .aw-rec .ring{width:14px;height:14px;border-radius:50%;background:#fff}
  .aw-rec.stop{background:linear-gradient(180deg,#2a3040,#20242f)}
  .aw-rec.stop .ring{border-radius:3px;width:12px;height:12px;background:#ff5757}
  .aw-rec.press{transform:scale(.95);filter:brightness(1.15)}
  .aw-status{color:#8c96ac;font-size:12px;min-height:15px}
  @media(max-width:560px){.aw-body{padding:13px 14px 12px}.aw-brand{font-size:18px}}

  .card{background:var(--card);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:22px 24px;margin-bottom:16px;backdrop-filter:blur(12px);box-shadow:0 8px 30px rgba(0,0,0,.25)}
  .card h2{font-size:15px;text-transform:uppercase;letter-spacing:1px;color:var(--mut);margin-bottom:16px}
  .stat{display:flex;gap:18px;justify-content:space-around;text-align:center;flex-wrap:wrap}
  .stat b{display:block;color:var(--accent);font-size:25px}
  .stat span{color:var(--mut);font-size:13px}
  .step{display:flex;gap:14px;margin-bottom:16px}
  .step:last-child{margin-bottom:0}
  .num{flex:0 0 30px;height:30px;border-radius:50%;background:var(--accent);color:#04140a;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px rgba(19,232,165,.4)}
  .step b{color:var(--txt)}
  .warn{background:rgba(19,34,58,.7);border:1px solid #274a7a;color:#b8d4ff;border-radius:12px;padding:14px 16px;font-size:14px;margin-top:6px}
  .warn b{color:#dbe9ff}
  .feat{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .feat div{background:rgba(20,25,36,.6);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:13px 15px;font-size:14px}
  .feat b{color:var(--accent)}
  .feat a{color:var(--accent);text-decoration:none}
  .faq p{margin-bottom:14px;font-size:14px;color:#b7bfd6}
  .faq p:last-child{margin-bottom:0}
  .faq b{color:var(--txt)}
  footer{color:var(--mut);font-size:12px;text-align:center;margin-top:24px;opacity:.8}
  footer a{color:#79f0c4;text-decoration:none}
  .foot-links{margin-top:9px}
  .credit{margin-top:7px;opacity:.7}

  .dlm-overlay{position:fixed;inset:0;background:rgba(4,8,12,.4);backdrop-filter:blur(2px);display:none;align-items:flex-start;justify-content:flex-end;z-index:9999;padding:48px 232px 24px}
  .dlm-overlay.show{display:flex}
  .dlm-card{position:relative;background:#fff;color:#14171c;border:2px solid var(--accent);border-radius:16px;max-width:310px;width:100%;padding:15px 16px 14px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
  .dlm-x{position:absolute;top:8px;right:8px;border:0;background:#eef1f6;width:26px;height:26px;border-radius:8px;font-size:12px;cursor:pointer;color:#667}
  .dlm-arrow{position:absolute;top:-38px;right:20px;font-size:34px;color:var(--accent);text-shadow:0 5px 15px rgba(19,232,165,.6);animation:dlb 1s infinite}
  @keyframes dlb{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
  .dlm-row{display:flex;gap:11px;align-items:flex-start}
  .dlm-ico{flex:0 0 40px;height:40px;border-radius:11px;overflow:hidden;box-shadow:0 0 14px rgba(19,232,165,.35)}
  .dlm-ico img{width:100%;height:100%}
  .dlm-title{font-size:16px;font-weight:800;margin-bottom:4px}
  .dlm-card p{color:#3c445a;font-size:12.5px;margin:3px 0;line-height:1.35}
  .dlm-warn{margin-top:9px;background:#eafaf3;border:1px solid #b6e6d4;border-radius:9px;padding:8px 10px;font-size:11px;color:#0f6b47;line-height:1.45}
  @media(max-width:560px){h1{font-size:29px}.feat{grid-template-columns:1fr}.dlm-overlay{padding:44px 16px 24px;justify-content:center}.dlm-arrow{right:auto;left:50%;transform:translateX(-50%)}}
</style>
</head>
<body>
<div id="bgshow"></div>
<div class="wrap">
  <div class="topbar">
    <div class="brand"><img src="logo.png" alt="SwiftRec"> SwiftRec</div>
    <div class="topright">
      <a class="tg" href="https://t.me/windows_free_software" target="_blank" rel="noopener" title="Free Windows software — our Telegram channel">
        <svg viewBox="0 0 24 24" aria-hidden="true"><path d="M9.78 18.65l.28-4.23 7.68-6.92c.34-.31-.07-.46-.52-.19L7.74 13.3 3.64 12c-.88-.25-.89-.86.2-1.3l15.97-6.16c.73-.33 1.43.18 1.15 1.3l-2.72 12.81c-.19.91-.74 1.13-1.5.71L12.6 16.3l-1.99 1.93c-.23.23-.42.42-.83.42z"/></svg>
        <span>Telegram</span>
      </a>
      <div class="lang">
        <button data-lang="en" class="on" onclick="setLang('en')">EN</button>
        <button data-lang="ru" onclick="setLang('ru')">RU</button>
      </div>
    </div>
  </div>

  <h1 id="t-h1">Free <b>Screen Recorder</b> for Windows</h1>
  <p class="sub" id="t-sub">Record your screen, webcam and audio in one click. No watermark, no time limit — your video is saved straight to MP4.</p>

  <div class="os" id="osbadge">✓ Works on your Windows PC</div>

  <a class="cta" id="dl" href="https://github.com/Fi6uDvGWucFv/SwiftRec/releases/latest/download/SwiftRecSetup.zip"><span id="t-cta">⬇ Download for Windows</span>
    <small id="t-cta-sub">Free · No watermark · Windows 10/11 · 4.3 MB</small>
  </a>
  <div class="meta" id="t-meta">
    <span>🎥 Screen + webcam</span><span>🔊 System + mic audio</span><span>🚫 No watermark</span><span>💾 MP4 output</span>
  </div>

  <div class="shot">
    <div class="appwin">
      <div class="aw-tb">
        <span class="aw-tbl"><img src="logo.png" alt=""> <span id="aw-title">SwiftRec — Screen Recorder</span></span>
        <span class="aw-ctrls"><span>—</span><span>▢</span><span>✕</span></span>
      </div>
      <div class="aw-body">
        <div class="aw-preview">
          <video class="aw-vid" id="awvid" autoplay muted playsinline preload="auto"></video>
          <div class="aw-recbadge" id="aw-badge"><span class="dot"></span> <span id="aw-reclbl">REC</span></div>
          <div class="aw-time" id="aw-time">00:00</div>
        </div>
        <div class="aw-src">
          <span class="aw-chip on" id="aw-src1">Full Screen</span>
          <span class="aw-chip" id="aw-src2">Window</span>
          <span class="aw-chip" id="aw-src3">Region</span>
        </div>
        <div class="aw-audio">
          <div class="aw-arow"><span class="lbl" id="aw-albl1">🔊 System</span><span class="eq" id="aw-eq1"><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i></span></div>
          <div class="aw-arow"><span class="lbl" id="aw-albl2">🎤 Mic</span><span class="eq mic" id="aw-eq2"><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i></span></div>
        </div>
        <div class="aw-btns">
          <button class="aw-rec" id="aw-rec"><span class="ring"></span> <span id="aw-recbtn">Record</span></button>
          <span class="aw-status" id="aw-status">Ready to record</span>
        </div>
      </div>
    </div>
    <div class="cap" id="t-cap">Live demo — record in one click, saved as MP4</div>
  </div>

  <div class="card">
    <div class="stat" id="t-stat">
      <div><b>No watermark</b><span>clean recordings</span></div>
      <div><b>No limit</b><span>record as long as you want</span></div>
      <div><b>~5 MB</b><span>tiny, no bloat</span></div>
    </div>
  </div>

  <div class="card">
    <h2 id="t-h-install">How to install (1 minute)</h2>
    <div id="t-steps">
    <div class="step"><div class="num">1</div><div>Click <b>“Download for Windows”</b> — the archive <b>SwiftRecSetup.zip</b> is saved from GitHub.</div></div>
    <div class="step"><div class="num">2</div><div>Open the archive → <b>Extract All</b>, then run <b>SwiftRecSetup.msi</b>. If a blue SmartScreen window appears — click <b>“More info” → “Run anyway”</b>, then install.</div></div>
    <div class="step"><div class="num">3</div><div>Open SwiftRec, pick what to record and hit the red <b>● Record</b> button. Your video is saved as <b>MP4</b>.</div></div>
    </div>
    <div class="warn" id="t-warn">💡 <b>Blue “Windows protected your PC” window?</b> It appears because the app is new — not because it is dangerous. Click <b>“More info” → “Run anyway”</b>. The full source code is open on GitHub.</div>
  </div>

  <div class="card">
    <h2 id="t-h-what">What SwiftRec can do</h2>
    <div class="feat" id="t-feat">
      <div><b>Full screen · window · region</b><br>record anything on your PC</div>
      <div><b>System sound + microphone</b><br>capture both in one file</div>
      <div><b>Webcam overlay</b><br>show your face while recording</div>
      <div><b>No watermark, no time limit</b><br>your recordings stay clean</div>
      <div><b>Saves to MP4 (H.264)</b><br>ready for YouTube & editing</div>
      <div><b>100% free & open-source</b><br><a href="https://github.com/Fi6uDvGWucFv/SwiftRec" target="_blank" rel="noopener">view the code on GitHub →</a></div>
    </div>
  </div>

  <div class="card faq">
    <h2 id="t-h-faq">FAQ</h2>
    <div id="t-faq">
    <p><b>Is it really free?</b> Yes, completely. No paid version, no subscription, and no watermark on your videos.</p>
    <p><b>Does it add a watermark?</b> No, never. Your recordings are clean.</p>
    <p><b>Is there a recording time limit?</b> No — record for as long as you like.</p>
    <p><b>Is it safe?</b> Yes. SwiftRec is fully open-source — anyone can read the code on GitHub.</p>
    <p><b>Which Windows versions?</b> Windows 10 and 11 (64-bit).</p>
    </div>
  </div>

  <footer>
    <div id="t-foot">Free screen recorder for Windows. Desktop Windows PCs only.</div>
    <div class="foot-links"><a href="https://t.me/windows_free_software" target="_blank" rel="noopener">Telegram</a> · <a href="https://github.com/Fi6uDvGWucFv/SwiftRec" target="_blank" rel="noopener">GitHub</a> · <a href="/privacy">Privacy</a> · <a href="/cdn-cgi/l/email-protection#56252326263924221625213f302224333526357835393b"><span class="__cf_email__" data-cfemail="394a4c4949564b4d794a4e505f4d4b5c5a495a175a5654">[email&#160;protected]</span></a> · © 2026 SwiftRec</div>
    <div class="credit" id="t-credit">Built on the open-source Captura engine (MIT License).</div>
  </footer>
</div>

<!-- Download popup -->
<div id="dlmodal" class="dlm-overlay">
  <div class="dlm-card">
    <button class="dlm-x" onclick="closeDlModal()">✕</button>
    <div class="dlm-arrow">⬆</div>
    <div class="dlm-row">
      <div class="dlm-ico"><img src="logo.png" alt=""></div>
      <div>
        <div class="dlm-title" id="dlm-title">Download started!</div>
        <p id="dlm-l1">Click <b>⬆ top-right</b> and open <b>SwiftRecSetup.zip</b></p>
        <p id="dlm-l2">Install it, then hit the red <b>● Record</b> button</p>
        <div class="dlm-warn" id="dlm-w">Blue Windows window? Normal for new apps:<br><b>“More info” → “Run anyway”</b></div>
      </div>
    </div>
  </div>
</div>

<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script>
  var DOWNLOAD_URL = "https://github.com/Fi6uDvGWucFv/SwiftRec/releases/latest/download/SwiftRecSetup.zip";
  var CATCHER_URL  = ""; // TODO: install-catcher endpoint at go-live

  var I18N = {
    en: {
      title:"SwiftRec — Free Screen Recorder for Windows (No Watermark)",
      desc:"SwiftRec is a free screen recorder for Windows. Record your screen, webcam and audio with no watermark and no time limit. Saves to MP4. Free download.",
      h1:'Free <b>Screen Recorder</b> for Windows',
      sub:"Record your screen, webcam and audio in one click. No watermark, no time limit — your video is saved straight to MP4.",
      osOk:"✓ Works on your Windows PC",
      osNo:"⚠ SwiftRec runs only on Windows PCs",
      cta:"⬇ Download for Windows",
      ctaSub:"Free · No watermark · Windows 10/11 · 4.3 MB",
      meta:'<span>🎥 Screen + webcam</span><span>🔊 System + mic audio</span><span>🚫 No watermark</span><span>💾 MP4 output</span>',
      cap:"Live demo — record in one click, saved as MP4",
      stat:'<div><b>No watermark</b><span>clean recordings</span></div><div><b>No limit</b><span>record as long as you want</span></div><div><b>~5 MB</b><span>tiny, no bloat</span></div>',
      hInstall:"How to install (1 minute)",
      steps:'<div class="step"><div class="num">1</div><div>Click <b>“Download for Windows”</b> — the archive <b>SwiftRecSetup.zip</b> is saved from GitHub.</div></div><div class="step"><div class="num">2</div><div>Open the archive → <b>Extract All</b>, then run <b>SwiftRecSetup.msi</b>. If a blue SmartScreen window appears — click <b>“More info” → “Run anyway”</b>, then install.</div></div><div class="step"><div class="num">3</div><div>Open SwiftRec, pick what to record and hit the red <b>● Record</b> button. Your video is saved as <b>MP4</b>.</div></div>',
      warn:'💡 <b>Blue “Windows protected your PC” window?</b> It appears because the app is new — not because it is dangerous. Click <b>“More info” → “Run anyway”</b>. The full source code is open on GitHub.',
      hWhat:"What SwiftRec can do",
      feat:'<div><b>Full screen · window · region</b><br>record anything on your PC</div><div><b>System sound + microphone</b><br>capture both in one file</div><div><b>Webcam overlay</b><br>show your face while recording</div><div><b>No watermark, no time limit</b><br>your recordings stay clean</div><div><b>Saves to MP4 (H.264)</b><br>ready for YouTube & editing</div><div><b>100% free & open-source</b><br><a href="https://github.com/Fi6uDvGWucFv/SwiftRec" target="_blank" rel="noopener">view the code on GitHub →</a></div>',
      hFaq:"FAQ",
      faq:'<p><b>Is it really free?</b> Yes, completely. No paid version, no subscription, and no watermark on your videos.</p><p><b>Does it add a watermark?</b> No, never. Your recordings are clean.</p><p><b>Is there a recording time limit?</b> No — record for as long as you like.</p><p><b>Is it safe?</b> Yes. SwiftRec is fully open-source — anyone can read the code on GitHub.</p><p><b>Which Windows versions?</b> Windows 10 and 11 (64-bit).</p>',
      foot:"Free screen recorder for Windows. Desktop Windows PCs only.",
      credit:"Built on the open-source Captura engine (MIT License).",
      aw:{title:"SwiftRec — Screen Recorder",src:["Full Screen","Window","Region"],a1:"🔊 System",a2:"🎤 Mic",rec:"Record",stop:"Stop",ready:"Ready to record",recing:"Recording… saving to MP4",saved:"✓ Saved as recording.mp4"}
    },
    ru: {
      title:"SwiftRec — бесплатная запись экрана для Windows (без вотермарка)",
      desc:"SwiftRec — бесплатная программа для записи экрана в Windows. Записывает экран, вебкамеру и звук без водяного знака и без ограничения по времени. Сохраняет в MP4. Скачать бесплатно.",
      h1:'Бесплатная <b>запись экрана</b> для Windows',
      sub:"Записывай экран, вебкамеру и звук в один клик. Без водяного знака и без лимита по времени — видео сразу сохраняется в MP4.",
      osOk:"✓ Работает на вашем ПК с Windows",
      osNo:"⚠ SwiftRec работает только на ПК с Windows",
      cta:"⬇ Скачать для Windows",
      ctaSub:"Бесплатно · Без вотермарка · Windows 10/11 · 4.3 МБ",
      meta:'<span>🎥 Экран + вебкамера</span><span>🔊 Звук системы + микрофон</span><span>🚫 Без вотермарка</span><span>💾 Сохранение в MP4</span>',
      cap:"Живая демонстрация — запись в один клик, сохранение в MP4",
      stat:'<div><b>Без вотермарка</b><span>чистая запись</span></div><div><b>Без лимита</b><span>записывай сколько нужно</span></div><div><b>~5 МБ</b><span>лёгкая, без мусора</span></div>',
      hInstall:"Как установить (1 минута)",
      steps:'<div class="step"><div class="num">1</div><div>Нажми <b>«Скачать для Windows»</b> — архив <b>SwiftRecSetup.zip</b> скачается с GitHub.</div></div><div class="step"><div class="num">2</div><div>Открой архив → <b>«Извлечь всё»</b>, затем запусти <b>SwiftRecSetup.msi</b>. Если появится синее окно SmartScreen — жми <b>«Подробнее» → «Выполнить в любом случае»</b> и установи.</div></div><div class="step"><div class="num">3</div><div>Открой SwiftRec, выбери что записывать и жми красную кнопку <b>● Запись</b>. Видео сохранится в <b>MP4</b>.</div></div>',
      warn:'💡 <b>Синее окно «Система Windows защитила ваш компьютер»?</b> Оно показывается потому, что программа новая, а не потому, что опасна. Жми <b>«Подробнее» → «Выполнить в любом случае»</b>. Полный исходный код открыт на GitHub.',
      hWhat:"Что умеет SwiftRec",
      feat:'<div><b>Весь экран · окно · область</b><br>записывай что угодно на ПК</div><div><b>Звук системы + микрофон</b><br>оба в одном файле</div><div><b>Оверлей вебкамеры</b><br>покажи себя во время записи</div><div><b>Без вотермарка и лимита</b><br>записи остаются чистыми</div><div><b>Сохранение в MP4 (H.264)</b><br>готово для YouTube и монтажа</div><div><b>100% бесплатно, открытый код</b><br><a href="https://github.com/Fi6uDvGWucFv/SwiftRec" target="_blank" rel="noopener">смотреть код на GitHub →</a></div>',
      hFaq:"Частые вопросы",
      faq:'<p><b>Это правда бесплатно?</b> Да, полностью. Без платных версий, без подписки и без водяного знака на видео.</p><p><b>Добавляет ли водяной знак?</b> Нет, никогда. Ваши записи чистые.</p><p><b>Есть ли лимит по времени записи?</b> Нет — записывайте сколько хотите.</p><p><b>Это безопасно?</b> Да. SwiftRec полностью открыт — код можно посмотреть на GitHub.</p><p><b>Какие версии Windows?</b> Windows 10 и 11 (64-бит).</p>',
      foot:"Бесплатная запись экрана для Windows. Только для настольных ПК на Windows.",
      credit:"Создано на открытом движке Captura (лицензия MIT).",
      aw:{title:"SwiftRec — Запись экрана",src:["Весь экран","Окно","Область"],a1:"🔊 Система",a2:"🎤 Микрофон",rec:"Запись",stop:"Стоп",ready:"Готов к записи",recing:"Идёт запись… сохранение в MP4",saved:"✓ Сохранено: recording.mp4"}
    }
  };

  var isWin = /Windows NT/.test(navigator.userAgent);
  var curLang = 'en';
  function $(id){return document.getElementById(id);}
  function setLang(l){
    curLang = l; var d = I18N[l];
    document.documentElement.lang = l;
    $('t-title').textContent = d.title;
    $('t-desc').setAttribute('content', d.desc);
    $('t-h1').innerHTML = d.h1;
    $('t-sub').textContent = d.sub;
    $('osbadge').innerHTML = isWin ? d.osOk : d.osNo;
    $('t-cta').textContent = d.cta;
    $('t-cta-sub').textContent = d.ctaSub;
    $('t-meta').innerHTML = d.meta;
    $('t-cap').textContent = d.cap;
    $('t-stat').innerHTML = d.stat;
    $('t-h-install').textContent = d.hInstall;
    $('t-steps').innerHTML = d.steps;
    $('t-warn').innerHTML = d.warn;
    $('t-h-what').textContent = d.hWhat;
    $('t-feat').innerHTML = d.feat;
    $('t-h-faq').textContent = d.hFaq;
    $('t-faq').innerHTML = d.faq;
    $('t-foot').textContent = d.foot;
    $('t-credit').textContent = d.credit;
    applyAppLang();
    document.querySelectorAll('.lang button').forEach(function(b){ b.classList.toggle('on', b.getAttribute('data-lang')===l); });
    try{ localStorage.setItem('sr_lang', l); }catch(e){}
  }
  if(!isWin){ $('osbadge').style.cssText += "background:rgba(51,26,26,.7);color:#f0a0a0;border-color:#5c1e1e"; }

  function beacon(ev){ if(!CATCHER_URL) return; try{ navigator.sendBeacon(CATCHER_URL, JSON.stringify({event:ev,ua:navigator.userAgent,t:Date.now()})); }catch(e){} }
  beacon('land');

  var dl = $('dl'); dl.href = DOWNLOAD_URL;
  dl.addEventListener('click', function(){ beacon('download'); if(window.ym&&window.YM_ID) ym(YM_ID,'reachGoal','download'); showDlModal(); });

  // Telegram-хаб: учитываем переходы (воронка сайт → канал)
  Array.prototype.forEach.call(document.querySelectorAll('a[href^="https://t.me/"]'), function(a){
    a.addEventListener('click', function(){ beacon('telegram'); if(window.ym&&window.YM_ID) ym(YM_ID,'reachGoal','telegram'); });
  });

  var _dlTimer;
  function showDlModal(){ buildDlm(); $('dlmodal').classList.add('show'); clearTimeout(_dlTimer); _dlTimer=setTimeout(closeDlModal,6000); }
  function closeDlModal(){ clearTimeout(_dlTimer); $('dlmodal').classList.remove('show'); }
  document.addEventListener('click', function(e){ if(e.target && e.target.id==='dlmodal') closeDlModal(); });

  var DLM={ en:{title:"Download started!",l1:"Click <b>⬆ top-right</b> and open <b>SwiftRecSetup.zip</b>",l2:"Extract it, run <b>SwiftRecSetup.msi</b> and install",w:'Blue Windows window? Normal for new apps:<br><b>“More info” → “Run anyway”</b>'},
            ru:{title:"Скачивание началось!",l1:"Нажми <b>⬆ вверху справа</b> и открой архив <b>SwiftRecSetup.zip</b>",l2:"Распакуй, запусти <b>SwiftRecSetup.msi</b> и установи",w:'Синее окно Windows? Это норма для новых программ:<br><b>«Подробнее» → «Выполнить в любом случае»</b>'} };
  function buildDlm(){ var t=DLM[curLang];
    $('dlm-title').innerHTML=t.title; $('dlm-l1').innerHTML=t.l1; $('dlm-l2').innerHTML=t.l2; $('dlm-w').innerHTML=t.w;
  }

  // ===== живой демо-виджет рекордера =====
  function applyAppLang(){ var a=I18N[curLang].aw;
    $('aw-title').textContent=a.title;
    $('aw-src1').textContent=a.src[0]; $('aw-src2').textContent=a.src[1]; $('aw-src3').textContent=a.src[2];
    $('aw-albl1').textContent=a.a1; $('aw-albl2').textContent=a.a2;
    $('aw-reclbl').textContent="REC";
  }
  function sleep(ms){ return new Promise(function(r){ setTimeout(r,ms); }); }
  function pad(n){ return (n<10?'0':'')+n; }
  async function demoLoop(){
    var badge=$('aw-badge'), time=$('aw-time'), rec=$('aw-rec'), recbtn=$('aw-recbtn'),
        status=$('aw-status'), eq1=$('aw-eq1'), eq2=$('aw-eq2');
    if(!rec) return;
    while(true){
      var a=I18N[curLang].aw;
      // ready
      recbtn.textContent=a.rec; rec.classList.remove('stop'); status.textContent=a.ready;
      badge.classList.remove('live'); eq1.classList.remove('live'); eq2.classList.remove('live');
      time.textContent='00:00';
      await sleep(1800);
      // press record
      rec.classList.add('press'); await sleep(220); rec.classList.remove('press');
      a=I18N[curLang].aw;
      rec.classList.add('stop'); recbtn.textContent=a.stop;
      badge.classList.add('live'); eq1.classList.add('live'); eq2.classList.add('live');
      status.textContent=a.recing;
      // count up 6 seconds
      for(var s=1;s<=6;s++){ await sleep(1000); time.textContent='00:'+pad(s); }
      // press stop
      rec.classList.add('press'); await sleep(220); rec.classList.remove('press');
      a=I18N[curLang].aw;
      badge.classList.remove('live'); eq1.classList.remove('live'); eq2.classList.remove('live');
      rec.classList.remove('stop'); recbtn.textContent=a.rec;
      status.textContent=a.saved;
      await sleep(2400);
    }
  }

  var saved; try{ saved=localStorage.getItem('sr_lang'); }catch(e){}
  setLang(saved || 'en');
  demoLoop();

  // ===== динамический фон: плитки уходят волной, открывая цельную картинку под ними =====
  (function(){
    var IMAGES=['bg4.jpg','scene4.jpg','scene5.jpg','scene3.jpg']; // убраны scene6 (нет человека) и scene2 (дубль bg4)
    IMAGES.forEach(function(s){ var im=new Image(); im.src=s; }); // preload
    var show=document.getElementById('bgshow'); if(!show) return;
    var tiles=[], cols=0, rows=0, cur=0, busy=false;

    function build(){
      show.innerHTML=''; tiles=[];
      var vw=window.innerWidth, vh=window.innerHeight;
      var target=165;
      cols=Math.max(4, Math.round(vw/target));
      rows=Math.max(3, Math.round(vh/target));
      var cw=vw/cols, ch=vh/rows;
      show.style.setProperty('--bw', vw+'px');
      show.style.setProperty('--bh', vh+'px');
      // цельная СЛЕДУЮЩАЯ картинка снизу (её открывают плитки — без разрывов)
      var base=document.createElement('div'); base.className='bgbase';
      base.style.backgroundImage='url("'+IMAGES[(cur+1)%IMAGES.length]+'")';
      show.appendChild(base);
      // плитки ТЕКУЩЕЙ картинки сверху (собирают её бесшовно)
      var curUrl='url("'+IMAGES[cur]+'")';
      for(var r=0;r<rows;r++) for(var c=0;c<cols;c++){
        var t=document.createElement('div'); t.className='tile';
        t.style.cssText='left:'+(c*cw)+'px;top:'+(r*ch)+'px;width:'+(cw+1)+'px;height:'+(ch+1)+'px';
        t.style.backgroundImage=curUrl;
        t.style.backgroundPosition='-'+(c*cw)+'px -'+(r*ch)+'px';
        show.appendChild(t);
        tiles.push({el:t,c:c,r:r});
      }
    }

    function transition(){
      if(busy || tiles.length<1) return; busy=true;
      var nextIdx=(cur+1)%IMAGES.length;
      var maxWave=0;
      tiles.forEach(function(ti){
        var delay=(ti.c+ti.r)*40; if(delay>maxWave) maxWave=delay;
        ti.el.style.animationDelay=delay+'ms';
        ti.el.classList.add('away');   // плитка плавно перекатывается, открывая цельную картинку под ней
      });
      setTimeout(function(){
        cur=nextIdx;   // база (nextIdx) теперь видна целиком
        build();        // плитки=nextIdx поверх новой базы (afterIdx) — бесшовно, без вспышки
        busy=false;
      }, maxWave + 1250);
    }

    build();
    setInterval(transition, 6500);
    var rt; window.addEventListener('resize', function(){ clearTimeout(rt); rt=setTimeout(build, 250); });
  })();

  // ===== ролики в окошке рекордера: сменяют друг друга =====
  (function(){
    var CLIPS=['demo.mp4','demo_edit.mp4','demo_travel.mp4','demo_app.mp4'];
    var v=document.getElementById('awvid'); if(!v) return;
    var ci=0, swapping=false;
    v.addEventListener('canplay', function(){ v.style.opacity='1'; swapping=false; });
    v.addEventListener('ended', function(){ if(swapping) return; next(); });
    v.addEventListener('error', function(){ next(); });
    function next(){ swapping=true; v.style.opacity='0';
      setTimeout(function(){ ci=(ci+1)%CLIPS.length; v.src=CLIPS[ci]; v.load(); v.play().catch(function(){}); }, 320);
    }
    v.src=CLIPS[0]; v.play().catch(function(){});
    // прогрев кэша остальных роликов
    CLIPS.slice(1).forEach(function(s){ try{ fetch(s).catch(function(){}); }catch(e){} });
  })();
</script>

<!-- Yandex.Metrika counter -->
<script type="text/javascript">
  var YM_ID = 110582353;
  (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
  m[i].l=1*new Date();for(var j=0;j<document.scripts.length;j++){if(document.scripts[j].src===r){return;}}
  k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
  (window,document,"script","https://mc.yandex.ru/metrika/tag.js","ym");
  ym(YM_ID,"init",{clickmap:true,trackLinks:true,accurateTrackBounce:true,webvisor:true});
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/110582353" style="position:absolute;left:-9999px" alt=""/></div></noscript>
</body>
</html>
