<?php
function country()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        $ip = $_SERVER['REMOTE_ADDR'];
    }

    if (filter_var($ip, FILTER_VALIDATE_IP)) {
        $ipdat = @json_decode(file_get_contents("http://ip-api.com/json/{$ip}"));
        if (!empty($ipdat) && @strlen(trim($ipdat->countryCode)) == 2) {
            return strtolower($ipdat->countryCode);
        }
    }

    return 'de';
}

$country = strtoupper(country());
$utm_source  = $_GET['utm_source']  ?? '';
$utm_creo    = $_GET['utm_creo']    ?? '';
$utm_account = $_GET['utm_account'] ?? '';
?>


<!DOCTYPE html>
<html lang="en">
<head>

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Crypto Dispute Case Reviews | TrustFunds</title>
<meta name="description" content="Affected by a crypto investment scam or pig butchering fraud? TrustFunds offers free, confidential case reviews and explains the options that may be available. 48-hour response.">
<meta name="keywords" content="crypto dispute review, pig butchering information, crypto scam case review, fake trading platform dispute, crypto fraud guidance, sha zhu pan information, crypto case assistance">
<link rel="icon" type="image/svg+xml" href="favicon.svg">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
<link href="css2?family=Sora:wght@300;400;600;700;800&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
<style>
  .cookie,
  .cookie * {
    box-sizing: border-box;
  }

  .cookie {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
    z-index: 999999999;

    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    width: min(760px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 40px);

    padding: 18px 20px;
    margin: 0;

    overflow-x: hidden;
    overflow-y: auto;

    border: 2px solid #111111;
    border-radius: 18px;

    background: #ffffff;
    color: #111111;
  }

  .cookie__text {
    flex: 1 1 auto;
    min-width: 0;

    margin: 0;

    color: #111111;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.45;

    overflow-wrap: anywhere;
    word-break: normal;
  }

  .cookie__text > a {
    color: darkblue;
    font-weight: 700;
    text-decoration: none;
    overflow-wrap: anywhere;
  }

  .cookie__text > a:hover {
    text-decoration: underline;
  }

  .cookiebtnblock {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;

    min-width: 0;
  }

  .cookie__btn {
    min-width: 110px;
    min-height: 44px;
    padding: 0 18px;

    border: 2px solid #111111;
    border-radius: 8px;

    background: #111111;
    color: #ffffff;

    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;

    cursor: pointer;
    transition:
      background-color 0.25s ease,
      border-color 0.25s ease,
      color 0.25s ease,
      opacity 0.25s ease;
  }

  .cookie__btn:hover {
    background: #046104;
    border-color: #046104;
    color: #ffffff;
  }

  .cookie__btn:focus-visible {
    outline: 3px solid rgba(16, 42, 92, 0.35);
    outline-offset: 2px;
  }

  .declineBtnn {
    margin: 0;
    background: #ffffff;
    color: #111111;
  }

  .declineBtnn:hover {
    background: #d90000;
    border-color: #d90000;
    color: #ffffff;
  }

  .dndndndn:disabled,
  .cookie__btn:disabled {
    cursor: not-allowed;
    opacity: 0.5;
  }

  /* Планшеты */
  @media screen and (max-width: 820px) {
    .cookie {
      bottom: 16px;
      width: calc(100vw - 28px);
      max-width: calc(100vw - 28px);
      padding: 16px 18px;
      gap: 16px;
    }

    .cookie__text {
      font-size: 13px;
    }

    .cookiebtnblock {
      flex-wrap: wrap;
    }

    .cookie__btn {
      min-width: 100px;
      padding-right: 14px;
      padding-left: 14px;
    }
  }

  /* Телефоны */
  @media screen and (max-width: 600px) {
    .cookie {
      left: 12px;
      right: 12px;
      bottom: max(12px, env(safe-area-inset-bottom));
      transform: none;

      width: auto;
      max-width: none;
      max-height: calc(
        100dvh - 24px - env(safe-area-inset-bottom)
      );

      flex-direction: column;
      align-items: stretch;
      gap: 16px;

      padding: 16px;

      border-radius: 14px;
      box-shadow: 6px 6px 0 #3f3f3f;
    }

    .cookie__text {
      width: 100%;
      font-size: 13px;
      line-height: 1.5;
      text-align: center;
    }

    .cookiebtnblock {
      width: 100%;
      flex-direction: column;
      align-items: stretch;
      gap: 10px;
    }

    .cookie__btn {
      width: 100%;
      min-width: 0;
      min-height: 46px;
    }

    .declineBtnn {
      margin: 0;
    }
  }

  /* Очень узкие экраны */
  @media screen and (max-width: 360px) {
    .cookie {
      left: 8px;
      right: 8px;
      padding: 14px;
    }

    .cookie__text {
      font-size: 12px;
    }

    .cookie__btn {
      font-size: 13px;
    }
  }
</style>

<div class="cookie" role="dialog" aria-live="polite" aria-label="Notification about geting files cookie">
  <p class="cookie__text">
      Our website uses cookies in accordance with <a href="https://policies.google.com/technologies/cookies" target="_blank">Google's privacy policy</a>
  </p>

  <div class="cookiebtnblock">
    <button class="cookie__btn agreeBtnn" type="button">
      Accept
    </button>

    <button class="cookie__btn declineBtnn" type="button">
      Decline
    </button>
  </div>
</div>

<script>
  document.addEventListener('DOMContentLoaded', function () {
    const cookieBanner = document.querySelector('.cookie');
    const cookieBtn = document.querySelector('.agreeBtnn');
    const cookieBtnDecline = document.querySelector('.declineBtnn');

    if (!cookieBanner || !cookieBtn || !cookieBtnDecline) {
      return;
    }

    const cookieStatus = localStorage.getItem('cookieBannerStatus');

    if (!cookieStatus) {
      cookieBanner.style.display = 'flex';
    }

    function closeCookieBanner(status) {
      localStorage.setItem('cookieBannerStatus', status);
      cookieBanner.style.display = 'none';
    }

    cookieBtn.addEventListener('click', function () {
      closeCookieBanner('accepted');
    });

    cookieBtnDecline.addEventListener('click', function () {
      closeCookieBanner('declined');
    });
  });
</script>
<style>
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#ffffff;--bg2:#f8fafc;--ink:#0f172a;--ink2:#334155;--muted:#64748b;
  --accent:#1e40af;--accent2:#2563eb;--line:#e2e8f0;--danger:#b91c1c;--danger-bg:#fef2f2;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;overflow-x:hidden}
h1,h2,h3,h4{font-family:'Sora',sans-serif;color:var(--ink)}
a{text-decoration:none}
.container{max-width:1200px;margin:0 auto}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 5%}
.nav-logo{display:flex;align-items:center;gap:11px}
.nav-logo img{width:34px;height:34px}
.nav-logo-text{font-family:'Sora',sans-serif;font-size:1.22rem;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.nav-mid{display:flex;align-items:center;gap:26px;list-style:none}
.nav-mid a{color:var(--ink2);font-size:.88rem;font-weight:500;transition:color .2s}
.nav-mid a:hover{color:var(--accent)}
.nav-right{display:flex;align-items:center;gap:16px}
.nav-badge{font-size:.72rem;font-weight:600;color:var(--muted);border:1px solid var(--line);padding:5px 12px;border-radius:4px;letter-spacing:.04em}
.nav-cta{background:var(--accent);color:#fff!important;padding:9px 18px;border-radius:4px;font-weight:600;font-size:.86rem;transition:background .2s}
.nav-cta:hover{background:var(--accent2)}
.nav-ham{display:none;cursor:pointer;flex-direction:column;gap:5px}
.nav-ham span{display:block;width:24px;height:2px;background:var(--ink);transition:.3s}
.mob-menu{display:none;flex-direction:column;position:fixed;top:70px;left:0;right:0;background:#fff;padding:14px 5%;z-index:999;border-bottom:1px solid var(--line)}
.mob-menu.open{display:flex}
.mob-menu a{color:var(--ink);padding:13px 0;border-bottom:1px solid var(--line);font-size:.95rem}

/* HERO */
#hero{padding:70px 0 0;background:var(--bg)}
.hero-grid{display:grid;grid-template-columns:55% 45%;min-height:calc(100vh - 70px)}
.hero-left{display:flex;flex-direction:column;justify-content:center;padding:60px 5% 60px 0;max-width:660px;margin-left:auto;padding-left:5%}
.hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;color:var(--accent);background:#eff6ff;border:1px solid #dbeafe;padding:7px 14px;border-radius:4px;margin-bottom:24px;width:fit-content;letter-spacing:.02em}
#hero h1{font-size:clamp(2rem,4.4vw,3.3rem);font-weight:800;line-height:1.12;letter-spacing:-.02em;margin-bottom:20px}
#hero h1 span{color:var(--accent)}
.hero-sub{font-size:clamp(.98rem,1.5vw,1.12rem);color:var(--ink2);margin-bottom:32px;line-height:1.7;max-width:560px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:44px}
.btn-primary{background:var(--accent);color:#fff;padding:14px 28px;border-radius:4px;font-weight:600;font-size:.95rem;border:none;cursor:pointer;transition:background .2s,transform .2s;display:inline-flex;align-items:center;gap:8px}
.btn-primary:hover{background:var(--accent2);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);padding:14px 28px;border-radius:4px;font-weight:600;font-size:.95rem;border:1px solid var(--line);cursor:pointer;transition:border-color .2s,color .2s;display:inline-flex;align-items:center;gap:8px}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;border-top:1px solid var(--line);padding-top:28px}
.stat-num{font-family:'Sora',sans-serif;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800;color:var(--ink);display:block;line-height:1.1}
.stat-lbl{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:5px}
/* right: bar chart on dark */
.hero-right{background:linear-gradient(160deg,#0f172a 0%,#172554 100%);display:flex;flex-direction:column;justify-content:center;padding:50px 46px;position:relative;overflow:hidden}
.hero-right::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(37,99,235,.25),transparent 55%)}
.chart-card{position:relative;z-index:1}
.chart-title{color:#e2e8f0;font-family:'Sora',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.chart-sub{color:#94a3b8;font-size:.78rem;margin-bottom:30px}
.bars{display:flex;align-items:flex-end;gap:14px;height:230px}
.bar{flex:1;background:linear-gradient(180deg,#3b82f6,#1e40af);border-radius:3px 3px 0 0;position:relative;animation:grow 1.3s cubic-bezier(.2,.8,.3,1) forwards;transform-origin:bottom;transform:scaleY(0)}
.bar span{position:absolute;top:-22px;left:0;right:0;text-align:center;color:#bfdbfe;font-size:.72rem;font-weight:600}
@keyframes grow{to{transform:scaleY(1)}}
.chart-foot{display:flex;justify-content:space-between;margin-top:16px;color:#64748b;font-size:.7rem}
.chart-legend{margin-top:26px;display:flex;flex-direction:column;gap:11px}
.leg{display:flex;align-items:center;gap:10px;color:#cbd5e1;font-size:.82rem}
.leg .dot{width:9px;height:9px;border-radius:50%;background:#3b82f6;flex-shrink:0}

/* SECTIONS */
section{padding:88px 5%}
.sec-alt{background:var(--bg2)}
.sec-hdr{max-width:720px;margin:0 auto 52px;text-align:center}
.sec-lbl{font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;display:block}
.sec-hdr h2{font-size:clamp(1.7rem,3.3vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.2}
.sec-hdr p{color:var(--ink2);font-size:1rem;margin-top:14px;line-height:1.7}

/* PIG BUTCHERING */
#pig-butchering{background:#0f172a;color:#e2e8f0}
#pig-butchering h2{color:#fff}
#pig-butchering .sec-lbl{color:#f87171}
#pig-butchering .sec-hdr p{color:#94a3b8}
.warn-badge{display:flex;width:fit-content;margin:0 auto 40px;align-items:center;gap:8px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:9px 18px;border-radius:4px;font-size:.83rem;font-weight:600}
.pig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pig-step{background:#1e293b;border:1px solid #334155;border-left:3px solid #ef4444;border-radius:4px;padding:24px}
.pig-num{font-family:'Sora',sans-serif;font-size:.72rem;font-weight:700;color:#f87171;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.pig-step h4{font-size:.95rem;color:#fff;margin-bottom:7px}
.pig-step p{font-size:.84rem;color:#94a3b8;line-height:1.65}
.pig-stat{text-align:center;margin-top:40px;padding:34px;background:#1e293b;border:1px solid #334155;border-radius:4px}
.pig-stat .big{font-family:'Sora',sans-serif;font-size:2.8rem;font-weight:800;color:#f87171;display:block;line-height:1}
.pig-stat p{color:#94a3b8;font-size:.92rem;margin-top:12px;max-width:640px;margin-left:auto;margin-right:auto}

/* SCAM TYPES */
.scam-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.scam-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:28px;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:box-shadow .25s,transform .25s}
.scam-card:hover{box-shadow:0 8px 24px rgba(15,23,42,.09);transform:translateY(-3px)}
.scam-ic{width:44px;height:44px;border-radius:4px;background:#eff6ff;display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--accent)}
.scam-ic svg{width:24px;height:24px;stroke:var(--accent);stroke-width:1.6;fill:none}
.scam-card h3{font-size:1.02rem;font-weight:700;margin-bottom:8px}
.scam-card p{font-size:.86rem;color:var(--ink2);line-height:1.65}

/* PROCESS */
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.proc-step{padding:0 20px;position:relative}
.proc-step:not(:last-child)::after{content:'';position:absolute;top:20px;right:0;width:100%;height:1px;background:var(--line);z-index:0}
.proc-badge{width:42px;height:42px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:700;font-size:1rem;position:relative;z-index:1;margin-bottom:20px}
.proc-step h3{font-size:1rem;font-weight:700;margin-bottom:9px}
.proc-step p{font-size:.85rem;color:var(--ink2);line-height:1.65}

/* RED FLAGS */
.rf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:34px}
.rf-card{background:var(--danger-bg);border:1px solid #fecaca;border-left:3px solid var(--danger);border-radius:4px;padding:22px}
.rf-card h4{color:var(--danger);font-size:.92rem;margin-bottom:8px}
.rf-card p{font-size:.84rem;color:var(--ink2);line-height:1.65}
.how-diff{background:#0f172a;border-radius:4px;padding:38px;color:#e2e8f0}
.how-diff h3{color:#fff;font-size:1.25rem;margin-bottom:24px}
.diff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.diff-item{display:flex;align-items:flex-start;gap:12px}
.ck{width:22px;height:22px;border-radius:50%;background:var(--accent2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;flex-shrink:0;margin-top:2px}
.diff-item p{font-size:.86rem;color:#94a3b8}
.diff-item p strong{color:#fff;display:block;margin-bottom:2px;font-size:.9rem;font-family:'Sora',sans-serif}

/* FORM */
.form-wrap{display:grid;grid-template-columns:1fr 1.5fr;gap:56px;align-items:start;max-width:1060px;margin:0 auto}
.facts h3{font-size:1.3rem;margin-bottom:22px}
.fact-row{border-top:1px solid var(--line);padding:16px 0}
.fact-row:last-child{border-bottom:1px solid var(--line)}
.fact-k{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}
.fact-v{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:700;color:var(--ink)}
.trust-mini{margin-top:24px}
.trust-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}
.trust-item p{font-size:.85rem;color:var(--ink2)}
.form-box{background:#fff;border:1px solid var(--line);border-radius:4px;padding:34px;position:relative;box-shadow:0 4px 20px rgba(15,23,42,.06)}
.form-box::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent);border-radius:4px 4px 0 0}
.form-box h3{font-size:1.2rem;margin-bottom:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ff{grid-column:1/-1}
.fld{display:flex;flex-direction:column}
.flbl{font-size:.75rem;font-weight:600;color:var(--ink2);margin-bottom:7px;text-transform:uppercase;letter-spacing:.05em}
.fld input,.fld select,.fld textarea{width:100%;background:#fff;border:1px solid #cbd5e1;border-radius:4px;color:var(--ink);font-family:'Inter',sans-serif;font-size:.9rem;padding:12px 14px;transition:border-color .2s,box-shadow .2s;outline:none}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(30,64,175,.1)}
.fld select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 14px) center;padding-right:36px}
.fld textarea{resize:vertical;min-height:86px}
.fld input::placeholder,.fld textarea::placeholder{color:#94a3b8}
/* phone field used by the page script */
.phone-wrap{width:100%;display:flex;align-items:stretch;background:#fff;border:1px solid #cbd5e1;border-radius:4px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.phone-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(30,64,175,.1)}
.phone-wrap .countrySelect{width:70px;flex:0 0 70px;border:0!important;border-radius:0!important;box-shadow:none!important;background-color:#fff;background-position:calc(100% - 10px) center;padding:12px 26px 12px 2px;font-size:.84rem}
.phone-wrap .phoneInput{min-width:0;flex:1;border:0!important;border-radius:0!important;box-shadow:none!important;padding:12px 6px!important}
.phone-wrap .flagIcon{align-self:center}
/* contact method */
.cm-wrap{display:flex;gap:10px;flex-wrap:wrap}
.cm-opt{display:flex;align-items:center;gap:8px;padding:11px 16px;border:1px solid #cbd5e1;border-radius:4px;cursor:pointer;font-size:.86rem;color:var(--ink2);transition:all .2s;user-select:none}
.cm-opt input[type="checkbox"],.cm-opt input[type="radio"]{display:none}
.cm-opt:has(input:checked){border-color:var(--accent);background:#eff6ff;color:var(--accent)}
.ferr{display:block;font-size:.76rem;color:var(--danger);margin-top:5px;min-height:16px}
.fld input.err,.fld select.err,.fld input.invalid,.fld select.invalid,.fld textarea.invalid{border-color:var(--danger)!important}
.phone-wrap.invalid{border-color:var(--danger)!important;}
.sub-wrap{margin-top:20px}
.btn-sub{width:100%;background:var(--accent);color:#fff;border:none;border-radius:4px;padding:15px;font-size:.97rem;font-weight:700;font-family:'Sora',sans-serif;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:10px}
.btn-sub:hover:not(:disabled){background:var(--accent2)}
.btn-sub:disabled{opacity:.7;cursor:not-allowed}
.sb-loader{display:flex;align-items:center;gap:8px}
.sb-loader[hidden]{display:none}
.spin{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.form-priv{font-size:.76rem;color:var(--muted);text-align:center;margin-top:12px}
#successMsg{background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;padding:32px;text-align:center;margin-top:20px}
#successMsg[hidden]{display:none}
#successMsg h3{font-size:1.2rem;margin-bottom:12px;color:var(--accent)}
#successMsg p{color:var(--ink2);font-size:.9rem;line-height:1.7}

/* FAQ */
.faq-list{max-width:820px;margin:0 auto}
.faq-item{border:1px solid var(--line);border-radius:4px;margin-bottom:10px;overflow:hidden;background:#fff}
.faq-q{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:'Sora',sans-serif;font-size:.94rem;font-weight:600;gap:16px;user-select:none}
.faq-chev{width:18px;height:18px;flex-shrink:0;transition:transform .3s;color:var(--accent);stroke:var(--accent);fill:none;stroke-width:2}
.faq-item.open .faq-chev{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-item.open .faq-a{max-height:340px}
.faq-a p{padding:0 22px 20px;font-size:.85rem;color:var(--ink2);line-height:1.75}

/* FOOTER */
footer{background:#0f172a;color:#94a3b8;padding:58px 5% 26px}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:44px;margin-bottom:40px}
.ft-brand-text{font-size:.83rem;color:#94a3b8;margin:14px 0 18px;line-height:1.7;max-width:290px}
.ft-company{font-size:.78rem;color:#64748b;line-height:1.9}
.ft-col h4{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#e2e8f0;margin-bottom:16px;font-family:'Sora',sans-serif}
.ft-col ul{list-style:none}
.ft-col ul li{margin-bottom:9px}
.ft-col ul li a{font-size:.83rem;color:#94a3b8;transition:color .2s}
.ft-col ul li a:hover{color:#fff}
.ft-contact p{font-size:.83rem;color:#94a3b8;margin-bottom:9px}
.ft-bot{border-top:1px solid #1e293b;padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.ft-bot p{font-size:.77rem;color:#64748b}
.ft-links{display:flex;gap:22px}
.ft-links a{font-size:.77rem;color:#94a3b8;transition:color .2s}
.ft-links a:hover{color:#fff}
.ft-logo-text{font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:800;color:#fff}

/* cookie */
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:1200;display:none;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;background:#0f172a;border-top:2px solid var(--accent);color:#e2e8f0;padding:14px 5%;font-size:.86rem}
.cookie-bar.show{display:flex}
.cookie-bar a{color:#93c5fd;text-decoration:underline}
.cookie-accept{background:var(--accent);color:#fff;border:none;padding:9px 22px;border-radius:4px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}
.cookie-accept:hover{background:var(--accent2)}

/* REVEAL */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr}
  .hero-left{max-width:none;padding:40px 5%}
  .hero-right{min-height:340px}
  .proc-grid{grid-template-columns:repeat(2,1fr);gap:32px 20px}
  .proc-step:not(:last-child)::after{display:none}
  .scam-grid,.pig-grid,.rf-grid{grid-template-columns:repeat(2,1fr)}
  .ft-grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:768px){
  .nav-mid,.nav-badge{display:none}
  .nav-ham{display:flex}
  .stats-bar{grid-template-columns:repeat(2,1fr);gap:18px}
  .form-wrap{grid-template-columns:1fr;gap:34px}
  .form-grid{grid-template-columns:1fr;gap:0px}
  .diff-grid{grid-template-columns:1fr}
  .phone-wrap .countrySelect{width:80px;flex-basis:80px;font-size:.9rem}
}
@media(max-width:540px){
  .scam-grid,.pig-grid,.rf-grid{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr}

  .phone-wrap .phoneInput{padding-left:10px!important;padding-right:10px!important}
}
@media(max-width:400px) {
  .nav-cta { 
  font-size: 7px;
 }
 .nav-logo-text {
  font-size: 1rem;
 }
}
</style>



</head>
<body>

<!-- NAV -->
<nav>
  <a href="#" class="nav-logo">
    <img src="logo.svg" alt="TrustFunds logo">
    <span class="nav-logo-text">TrustFunds</span>
  </a>
  <ul class="nav-mid">
    <li><a href="#pig-butchering">Scam Types</a></li>
    <li><a href="#services">What We Handle</a></li>
    <li><a href="#how-it-works">Process</a></li>
    <li><a href="#red-flags">Red Flags</a></li>
    <li><a href="#faq">FAQ</a></li>
  </ul>
  <div class="nav-right">
    <span class="nav-badge">Since 2019</span>
    <a href="#contact" class="nav-cta">Free Case Review</a>
  </div>
  <div class="nav-ham" id="navHam"><span></span><span></span><span></span></div>
</nav>
<div class="mob-menu" id="mobMenu">
  <a href="#pig-butchering">Scam Types</a>
  <a href="#services">What We Handle</a>
  <a href="#how-it-works">Process</a>
  <a href="#red-flags">Red Flags</a>
  <a href="#faq">FAQ</a>
  <a href="#contact">Free Case Review →</a>
</div>

<!-- HERO -->
<section id="hero">
  <div class="hero-grid">
    <div class="hero-left">
      <span class="hero-tag">🛡 Crypto Fraud Case Reviews · 30+ Countries</span>
      <h1>Support After <span>Unregulated Trading</span> &amp; Platform Disputes</h1>
      <p class="hero-sub">Facing issues with a trading platform, blocked withdrawals, or online investment disputes? Our specialists review your case and provide analytics on digital asset transactions.</p>
      <div class="hero-btns">
        <a href="#contact" class="btn-primary">Start Free Case Review →</a>
        <a href="#how-it-works" class="btn-ghost">How It Works</a>
      </div>
      <div class="stats-bar">
        <div><span class="stat-num">Free</span><span class="stat-lbl">Case Review</span></div>
        <div><span class="stat-num">100%</span><span class="stat-lbl">Confidential</span></div>
        <div><span class="stat-num" data-target="30" data-suffix="+">0+</span><span class="stat-lbl">Countries</span></div>
        <div><span class="stat-num" data-target="48" data-suffix="h">0h</span><span class="stat-lbl">Response</span></div>
      </div>
    </div>
    <div class="hero-right">
      <div class="chart-card">
        <div class="chart-title">How We Work</div>
        <div class="chart-sub">A clear, staged process</div>
        <div class="bars">
          <div class="bar" style="height:42%;animation-delay:.1s"><span>01</span></div>
          <div class="bar" style="height:58%;animation-delay:.25s"><span>02</span></div>
          <div class="bar" style="height:71%;animation-delay:.4s"><span>03</span></div>
          <div class="bar" style="height:88%;animation-delay:.55s"><span>04</span></div>
          <div class="bar" style="height:100%;animation-delay:.7s"><span>05</span></div>
        </div>
        <div class="chart-foot"><span>Review</span><span>Trace</span><span>Report</span><span>Update</span><span>Guide</span></div>
        <div class="chart-legend">
          <div class="leg"><span class="dot"></span>Guidance on regulatory &amp; exchange reporting</div>
          <div class="leg"><span class="dot"></span>No upfront cost — fees agreed in advance</div>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- PIG BUTCHERING -->
<section id="pig-butchering">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">⚠ High-Risk Investment Patterns</span>
      <h2>Unable to Withdraw Funds from Your Account?</h2>
      <p>This fraud has cost people worldwide over $75 billion in 2023 alone. Recognise the pattern — you can seek guidance.</p>
    </div>
    <div class="warn-badge">How Unregulated Online Platform Schemes Unfold</div>
    <div class="pig-grid">
      <div class="pig-step reveal"><div class="pig-num">Stage 01</div><h4>Initial Contact</h4><p>Scammers reach out via Instagram, WhatsApp, Telegram, or dating apps — often disguised as a wrong number or chance encounter.</p></div>
      <div class="pig-step reveal"><div class="pig-num">Stage 02</div><h4>Building Trust</h4><p>Weeks or months of warm daily communication build emotional closeness. They appear sophisticated, successful and genuinely caring.</p></div>
      <div class="pig-step reveal"><div class="pig-num">Stage 03</div><h4>The Invitation</h4><p>"I've been earning great returns on this crypto platform." You are guided to a professional-looking but entirely fake exchange.</p></div>
      <div class="pig-step reveal"><div class="pig-num">Stage 04</div><h4>Small Wins First</h4><p>Early "withdrawals" are permitted to build credibility. You invest more. Your dashboard shows spectacular returns.</p></div>
      <div class="pig-step reveal"><div class="pig-num">Stage 05</div><h4>Withdrawal Blocked</h4><p>When you try to cash out, demands for "tax," "verification fees," or "unlock codes" appear — each payment triggers another.</p></div>
      <div class="pig-step reveal"><div class="pig-num">Stage 06</div><h4>Disappearance</h4><p>The platform vanishes and the contact goes silent. This is when people come to us — and when we can review the case and explain the options.</p></div>
    </div>
    <div class="pig-stat reveal">
      <span class="big">$75B+</span>
      <p>Unregulated platforms affect thousands of online investors globally. Understanding the mechanics helps in evaluating case details.</p>
    </div>
  </div>
</section>

<!-- SCAM TYPES -->
<section id="services" class="sec-alt">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">What We Handle</span>
      <h2>Types of Crypto Scams We Review</h2>
      <p>Our specialists have reviewed cases across every major crypto fraud pattern affecting people across 30+ countries.</p>
    </div>
    <div class="scam-grid">
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><path d="M12 2a10 10 0 100 20 10 10 0 000-20zM8 12h8M12 8v8"></path></svg></div><h3>Social Engineering & Relationship-Based Investment Claims</h3><p>Disputes involving online contacts directing users to unverified digital asset trading platforms.</p></div>
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><rect x="3" y="4" width="18" height="12" rx="1"></rect><path d="M8 20h8M12 16v4"></path></svg></div><h3>Fake Trading Platforms</h3><p>Unregulated platforms showing fabricated returns. Deposits are accepted but every withdrawal is blocked with endless fee demands.</p></div>
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><rect x="5" y="11" width="14" height="10" rx="1"></rect><path d="M8 11V7a4 4 0 018 0v4"></path></svg></div><h3>Wallet Recovery Scams</h3><p>Fake "crypto tech support" teams demanding seed phrases or private keys, then instantly draining wallets on receipt.</p></div>
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><path d="M3 17l6-6 4 4 8-8M21 7v5h-5"></path></svg></div><h3>Pump &amp; Dump / Rug Pull</h3><p>Token projects that exit with investor funds after inflating prices. Millions disappear the moment liquidity is pulled.</p></div>
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><path d="M4 4h16v12H4zM4 16l4 4 4-4"></path></svg></div><h3>Social Media Investment Scams</h3><p>Influencer impersonators and celebrity-branded schemes promoting guaranteed crypto returns on YouTube, Instagram and TikTok.</p></div>
      <div class="scam-card reveal"><div class="scam-ic"><svg viewbox="0 0 24 24"><circle cx="12" cy="12" r="9"></circle><path d="M9.5 9h4a2 2 0 010 4H9.5V7v10"></path></svg></div><h3>Fake Crypto Exchanges</h3><p>Clone sites of Binance, Coinbase and Kraken with near-identical interfaces built to steal credentials and harvest deposits.</p></div>
    </div>
  </div>
</section>

<!-- HOW IT WORKS -->
<section id="how-it-works">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">Our Process</span>
      <h2>How Our Case Review Works</h2>
      <p>A transparent four-stage process with no hidden surprises and no upfront costs.</p>
    </div>
    <div class="proc-grid">
      <div class="proc-step reveal"><div class="proc-badge">1</div><h3>Free Case Review</h3><p>Submit your case details. We assess feasibility within 48 hours at no charge, with an honest viability verdict — no commitment required.</p></div>

      <div class="proc-step reveal"><div class="proc-badge">2</div><h3>Reporting &amp; Referrals</h3><p>Where appropriate, we outline how targeted complaints can be filed with regulators, law enforcement and exchanges to report and, where possible, freeze identified assets.</p></div>
      <div class="proc-step reveal"><div class="proc-badge">3</div><h3>Outcome &amp; Updates</h3><p>We keep you updated at each stage. Outcomes depend on the circumstances of each case, and any fees are agreed with you in advance.</p></div>
    </div>
  </div>
</section>

<!-- RED FLAGS -->
<section id="red-flags" class="sec-alt">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">Protect Yourself</span>
      <h2>Warning Signs of Fake Recovery Companies</h2>
      <p>Many victims are targeted a second time by fraudulent "recovery firms." Know exactly what to watch for.</p>
    </div>
    <div class="rf-grid">
      <div class="rf-card reveal"><h4>❌ Upfront Fees Required</h4><p>Legitimate firms work on a success-fee basis. Any company demanding payment before results is a scam targeting you again.</p></div>
      <div class="rf-card reveal"><h4>❌ Guaranteed Recovery</h4><p>No legitimate firm can guarantee fund recovery. Such promises are a classic manipulation tactic used by recovery scammers.</p></div>
      <div class="rf-card reveal"><h4>❌ Artificial Urgency</h4><p>Fraudulent companies pressure you to act immediately, preventing due diligence. Real recovery is never artificially rushed.</p></div>
      <div class="rf-card reveal"><h4>❌ No Verifiable Information</h4><p>Scam firms lack a real address, registration number, or traceable team. Always verify a recovery firm independently.</p></div>
      <div class="rf-card reveal"><h4>❌ Crypto or Wire Payments</h4><p>Untraceable payment methods are used exclusively by fraudulent operators who intend to disappear with your money.</p></div>
      <div class="rf-card reveal"><h4>❌ No Written Agreement</h4><p>Any firm unwilling to provide a formal signed contract defining fees, scope and process has something to hide.</p></div>
    </div>
    <div class="how-diff reveal">
      <h3>How TrustFunds Is Different</h3>
      <div class="diff-grid">
        <div class="diff-item"><div class="ck">✓</div><p><strong>Zero upfront fees</strong>There is no upfront cost — any fees are agreed with you in advance.</p></div>
        <div class="diff-item"><div class="ck">✓</div><p><strong>Written agreement always</strong>Every engagement begins with a transparent, legally signed contract.</p></div>
        <div class="diff-item"><div class="ck">✓</div><p><strong>Verified, traceable team</strong>Our specialists are identifiable and professionally accountable.</p></div>
        <div class="diff-item"><div class="ck">✓</div><p><strong>Honest case assessment</strong>If we cannot help, we say so upfront — no false hope, no wasted time.</p></div>
      </div>
    </div>
  </div>
</section>

<!-- CONTACT -->
<section id="contact">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">Start Your Case</span>
      <h2>Get a Free Crypto Case Review</h2>
      <p>Submit your details below. Our specialists respond within 48 hours — completely confidential, no obligation.</p>
    </div>
    <div class="form-wrap">
      <div class="facts">
        <h3>Case Facts</h3>
        <div class="fact-row"><div class="fact-k">Minimum case</div><div class="fact-v">€500 and above</div></div>
        <div class="fact-row"><div class="fact-k">Response time</div><div class="fact-v">Within 48 hours</div></div>
        <div class="fact-row"><div class="fact-k">Fee model</div><div class="fact-v">No upfront fees</div></div>
        <div class="trust-mini">
          <div class="trust-item"><div class="ck">✓</div><p>Completely free initial consultation</p></div>
          <div class="trust-item"><div class="ck">✓</div><p>Strict confidentiality</p></div>
          <div class="trust-item"><div class="ck">✓</div><p>Available in 30+ countries</p></div>
        </div>
      </div>
      <div class="form-box">
        <h3>🔐 Submit Your Crypto Case</h3>
        <form id="recoveryForm" action="" class="popup__wrap-form" method="POST" novalidate="">
          <input type="hidden" name="fsm" id="fsm">
          <input type="hidden" name="ssm" id="ssm">
          <div class="cf-turnstile" data-sitekey="0x4AAAAAADszW5s7cKwGLazr" data-theme="light" data-size="invisible"></div>
          <div class="form-grid">
            <div class="fld">
              <label class="flbl" for="full_name">Full Name *</label>
              <input type="text" id="full_name" name="name" autocomplete="name">
              <span class="ferr" id="e-full_name"></span>
            </div>
            <div class="fld">
              <label class="flbl" for="phone">Phone Number *</label>
              <div class="phone-wrap phone-field">
                <select class="countrySelect" aria-label="Country"></select>
                <input type="tel" class="phoneInput" id="phone" name="phone" autocomplete="tel" inputmode="tel">
              </div>
              <span class="ferr" id="e-phone"></span>
            </div>
            <div class="fld ff">
              <label class="flbl" for="email">Email Address *</label>
              <input type="email" id="email" name="email" autocomplete="email">
              <span class="ferr" id="e-email"></span>
            </div>
            <div class="fld ff">
              <label class="flbl" for="loss_amount">Amount of Loss *</label>
              <select id="loss_amount" name="lossAmountRange" onchange="this.form.querySelector(&quot;input[name='lossAmount']&quot;).value=this.value">
                <option value="" disabled="" selected="">Select amount range</option>
                <option value="Up to €500">Up to €500</option>
                <option value="€500 - €2,000">€500 - €2,000</option>
                <option value="€2,000 - €10,000">€2,000 - €10,000</option>
                <option value="€10,000 - €50,000">€10,000 - €50,000</option>
                <option value="€50,000 - €200,000">€50,000 - €200,000</option>
                <option value="More than €200,000">More than €200,000</option>
              </select>
              <input type="hidden" name="lossAmount" value="">
              <span class="ferr" id="e-loss_amount"></span>
            </div>
            <div class="fld ff">
              <label class="flbl">How to Contact You *</label>
              <div class="cm-wrap">
                <label class="cm-opt" for="cm-phone"><input type="radio" id="cm-phone" name="contact_choice" value="Phone" checked>📱 Phone</label>
                <label class="cm-opt" for="cm-email"><input type="radio" id="cm-email" name="contact_choice" value="Email">✉️ Email</label>
                <label class="cm-opt" for="cm-whatsapp"><input type="radio" id="cm-whatsapp" name="contact_choice" value="WhatsApp">💬 WhatsApp</label>
              </div>
              <input type="hidden" id="contact_method" name="contact_method" value="Phone">
              <span class="ferr" id="e-contact_method"></span>
            </div>
            <div class="fld ff">
              <label class="flbl" for="description">Brief Description (Optional)</label>
              <textarea id="description" name="description" placeholder="Briefly describe what happened — platform name, how you were approached, approximate dates, etc."></textarea>
            </div>
          </div>
          <div class="sub-wrap">
            <button type="submit" id="submitBtn" class="btn-sub">
              <span id="btnText">Submit Case for Free Review</span>
              <span class="sb-loader" id="btnLoader" hidden=""><span class="spin"></span>Processing...</span>
            </button>
          </div>
          <p class="form-priv">🔒 Your information is 100% confidential. We never share or sell your data.</p>
        </form>
        <div id="successMsg" hidden="">
          <h3>✅ Case Received Successfully!</h3>
          <p>Thank you for trusting TrustFunds. A specialist will contact you within 48 hours to discuss your case in full. Everything you shared is handled with strict confidentiality.</p>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- FAQ -->
<section id="faq" class="sec-alt">
  <div class="container">
    <div class="sec-hdr">
      <span class="sec-lbl">Common Questions</span>
      <h2>Crypto Case FAQ</h2>
    </div>
    <div class="faq-list">
      <div class="faq-item"><div class="faq-q">Can you review a crypto scam case?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>Yes. The options depend on how recently the loss occurred, whether funds reached identifiable exchanges, and the quality of available evidence. Our free evaluation gives you an honest, individual assessment at no cost or commitment. Outcomes cannot be guaranteed.</p></div></div>
      <div class="faq-item"><div class="faq-q">What characterizes complex online investment disputes?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>These cases typically involve long-term communication where an online contact introduces an unregulated trading site, leading to restricted account access.</p></div></div>
      <div class="faq-item"><div class="faq-q">The platform says I must pay taxes before withdrawing — is this a scam?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>Yes — this is a classic scam tactic. Legitimate platforms never require you to prepay taxes or fees to release a withdrawal. These demands only extract more money. Stop making payments and contact us immediately.</p></div></div>
  
      <div class="faq-item"><div class="faq-q">How long does the process take?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>Timelines range from several weeks to several months depending on case complexity, jurisdictions involved, and the pace of regulatory cooperation. We provide regular progress updates so you are never left wondering.</p></div></div>
      <div class="faq-item"><div class="faq-q">I sent crypto directly to a wallet — can those funds be recovered?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>Possibly. While direct wallet-to-wallet transfers are harder to reverse, forensics can trace where funds moved. Most scammers eventually cash out through regulated exchanges, where legal channels can freeze and recover assets.</p></div></div>
      <div class="faq-item"><div class="faq-q">What are your fees?<svg class="faq-chev" viewbox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg></div><div class="faq-a"><p>There is no upfront cost. If we take on your case, any fee is a pre-agreed percentage of any funds returned — agreed in writing before any work begins.</p></div></div>
    </div>
  </div>
</section>

<!-- FOOTER -->
<footer>
  <div class="container">
    <div class="ft-grid">
      <div>
        <a href="#" class="nav-logo" style="margin-bottom:14px">
          <img src="logo.svg" alt="TrustFunds" style="width:28px;height:28px">
          <span class="ft-logo-text">TrustFunds</span>
        </a>
        <p class="ft-brand-text">Confidential case reviews and analytics for users facing restrictions or disputes with digital asset trading platforms.</p>
        <div class="ft-company">
          Asklipiou 31, Athina 106 80, Greece<br>
          Tel: +30 2103674004<br>
          <a href="mailto:contact@trustfnds.com" class="__cf_email__" >contact@trustfnds.com</a>
        </div>
      </div>
      <div class="ft-col">
        <h4>Services</h4>
        <ul>
          <li><a href="#pig-butchering">Investment Disputes / Platform Review</a></li>
          <li><a href="#services">Fake Platform Claims</a></li>
          <li><a href="#services">Wallet Scam Cases</a></li>
          <li><a href="#services">Rug Pull Cases</a></li>
          <li><a href="#services">Exchange Scams</a></li>
        </ul>
      </div>
      <div class="ft-col">
        <h4>Company</h4>
        <ul>
          <li><a href="#how-it-works">How It Works</a></li>
          <li><a href="#red-flags">Red Flags</a></li>
          <li><a href="#faq">FAQ</a></li>
          <li><a href="policy.html">Privacy Policy</a></li>
          <li><a href="terms.html">Terms of Service</a></li>
        </ul>
      </div>
      <div class="ft-col ft-contact">
        <h4>Contact</h4>
<p>📧 <a href="mailto:contact@trustfnds.com">contact@trustfnds.com</a></p>        <p>📞 +30 2103674004</p>
        <p>🕐 Mon–Fri, 9:00–18:00 HKT</p>
        <p>⚡ 48-hour response guaranteed</p>
        <div style="margin-top:16px"><a href="#contact" class="btn-primary" style="font-size:.83rem;padding:10px 18px">Start Free Review →</a></div>
      </div>
    </div>
    <div class="ft-bot">
      <p>© 2026 TrustFunds / Meridian Vault Advisory Ltd. All rights reserved.</p>
      <div class="ft-links">
        <a href="policy.html">Privacy Policy</a>
        <a href="terms.html">Terms of Service</a>
        <a href="#contact">Contact</a>
      </div>
    </div>
  </div>
</footer>



<script src="js/main.js?v=2"></script>

<script>
document.addEventListener("DOMContentLoaded", () => {

const countries = [
                { code: "AL", name: "Albania", dial: "+355"  },
                { code: "MK", name: "North Macedonia", dial: "+389", },
                { code: "SM", name: "San Marino", dial: "+378"  },
                { code: "KG", name: "Kyrgyzstan", dial: "+996"  },
                { code: "AM", name: "Armenia", dial: "+374"   },
                { code: "AZ", name: "Azerbaijan", dial: "+994" },
                { code: "UZ", name: "Uzbekistan", dial: "+998" },
                { code: "KZ", name: "Kazakhstan", dial: "+7"  },
                { code: "TH", name: "Thailand", dial: "+66"  },
                { code: "TR", name: "Turkey", dial: "+90" },
                { code: "VN", name: "Vietnam", dial: "+84"  },
                { code: "ID", name: "Indonesia", dial: "+62"  },
                { code: "LK", name: "Sri Lanka", dial: "+94"  },
                { code: "KR", name: "South Korea", dial: "+82" },
                { code: "MY", name: "Malaysia", dial: "+60"  },
                { code: "PH", name: "Philippines", dial: "+63"},
                { code: "IN", name: "India", dial: "+91"  },
                { code: "HK", name: "Hong Kong", dial: "+852"  },
                { code: "MX", name: "Mexico", dial: "+52"  },
                { code: "AU", name: "Australia", dial: "+61" },
                { code: "LI", name: "Liechtenstein", dial: "+423"},
                { code: "ME", name: "Montenegro", dial: "+382"  },
                { code: "IS", name: "Iceland", dial: "+354"},
                { code: "AD", name: "Andorra", dial: "+376" },
                { code: "AT", name: "Austria", dial: "+43" },
                { code: "BE", name: "Belgium", dial: "+32" },
                { code: "BY", name: "Belarus", dial: "+375" },
                { code: "BA", name: "Bosnia and Herzegovina", dial: "+387" },
                { code: "BG", name: "Bulgaria", dial: "+359" },
                { code: "HR", name: "Croatia", dial: "+385" },
                { code: "CY", name: "Cyprus", dial: "+357" },
                { code: "CZ", name: "Czech Republic", dial: "+420" },
                { code: "DK", name: "Denmark", dial: "+45" },
                { code: "IE", name: "Ireland", dial: "+353" },
                { code: "EE", name: "Estonia", dial: "+372" },
                { code: "FI", name: "Finland", dial: "+358" },
                { code: "FR", name: "France", dial: "+33"},
                { code: "GE", name: "Georgia", dial: "+995" },
                { code: "DE", name: "Germany", dial: "+49" },
                { code: "GR", name: "Greece", dial: "+30" },
                { code: "HU", name: "Hungary", dial: "+36" },
                { code: "IT", name: "Italy", dial: "+39" },
                { code: "LV", name: "Latvia", dial: "+371",  },
                { code: "LT", name: "Lithuania", dial: "+370",  },
                { code: "LU", name: "Luxembourg", dial: "+352",  },
                { code: "MT", name: "Malta", dial: "+356", },
                { code: "MD", name: "Moldova", dial: "+373",  },
                { code: "MC", name: "Monaco", dial: "+377",  },
                { code: "NL", name: "Netherlands", dial: "+31",  },
                { code: "NO", name: "Norway", dial: "+47", },
                { code: "PL", name: "Poland", dial: "+48",  },
                { code: "PT", name: "Portugal", dial: "+351",  },
                { code: "RO", name: "Romania", dial: "+40",  },
                { code: "RS", name: "Serbia", dial: "+381",  },
                { code: "SG", name: "Singapore", dial: "+65",  },
                { code: "SK", name: "Slovakia", dial: "+421", },
                { code: "SI", name: "Slovenia", dial: "+386", },
                { code: "ES", name: "Spain", dial: "+34", },
                { code: "SE", name: "Sweden", dial: "+46", },
                { code: "CH", name: "Switzerland", dial: "+41",  },
                { code: "GB", name: "United Kingdom", dial: "+44",  },
                { code: "VA", name: "Vatican", dial: "+379", },
            ];


            // ============================
            // Инициализация одной формы
            // ============================
            function initPhoneField(wrapper, userCountry) {

                const select = wrapper.querySelector(".countrySelect");
                const input = wrapper.querySelector(".phoneInput");

                if (!select || !input) return;

                let flagIcon = wrapper.querySelector(".flagIcon");

                if (!flagIcon) {
                    flagIcon = document.createElement("img");
                    flagIcon.alt = "";
                    flagIcon.className = "flagIcon";
                    flagIcon.style.width = "24px";
                    flagIcon.style.height = "16px";
                    flagIcon.style.objectFit = "cover";
                    flagIcon.style.flex = "0 0 24px";
                    flagIcon.style.margin = "auto 4px auto 8px";
                    flagIcon.style.borderRadius = "2px";

                    wrapper.insertBefore(flagIcon, select);
                }
                // очищаем select (если повторная инициализация)
                select.innerHTML = "";

                // добавляем страны
                countries.forEach(c => {
                    const option = document.createElement("option");
                    const code = c.code.toLowerCase();

                    option.value = c.code;
                    option.dataset.dial = c.dial;
                    option.dataset.flag = `images/flags/${code}.svg`;

                    option.textContent = `${c.name}`;


                    select.appendChild(option);
                });

                // применяем dialCode
                function applyDialCode() {
                    const selected = select.selectedOptions[0];
                    if (!selected) return;
                    const dial = selected.dataset.dial;

                    input.value = dial + "";

                    flagIcon.src = selected.dataset.flag;
                    flagIcon.alt = selected.value;
                }

                // смена страны
                select.addEventListener("change", applyDialCode);

                // защита от удаления dialCode
                input.addEventListener("keydown", (e) => {
                    let dial = select.selectedOptions[0].dataset.dial + "";

                    if (input.selectionStart <= dial.length && e.key === "Backspace") {
                        e.preventDefault();
                    }
                });

                // ввод только цифр после кода
                input.addEventListener("input", () => {

                    let dial = select.selectedOptions[0].dataset.dial;

                    // пользовательская часть после dialCode
                    let userPart = input.value.replace(dial, "").trim();

                    // оставляем только цифры
                    userPart = userPart.replace(/\D/g, "");

                    input.value = dial + "" + userPart;
                });

                // ставим GEO страну
                if (userCountry && select.querySelector(`option[value="${userCountry}"]`)) {
                    select.value = userCountry;
                } else if (select.querySelector('option[value="DE"]')) {
                    select.value = 'DE';
                } else {
                    select.selectedIndex = 0;
                }

                applyDialCode();
            }
 // ============================            
            // GEO один раз на страницу
            fetch("https://ipapi.co/json/")
                .then(res => res.json())
                .then(data => {
                    let userCode = data.country_code?.toUpperCase() || "DE";

                    document.querySelectorAll(".phone-field").forEach(wrapper => {
                        initPhoneField(wrapper, userCode);
                    });
                })
                .catch(() => {
                    document.querySelectorAll(".phone-field").forEach(wrapper => {
                        initPhoneField(wrapper, "DE");
                    });
                });
        });
    </script>
<script>
        window.addEventListener('DOMContentLoaded', function () {
            document.querySelectorAll('.popup__wrap-form').forEach((Form) => {

            let country = `<?= $country; ?>`;

            const EMAIL_REGEXP = /^(([^<>()[\].,;:\s@"]+(\.[^<>()[\].,;:\s@"]+)*)|(".+"))@(([^<>()[\].,;:\s@"]+\.)+[^<>()[\].,;:\s@"]{2,})$/iu;
            function isEmailValid1(value) {
                return EMAIL_REGEXP.test(value);
            }

            const submitBtn = Form.querySelector("button[type='submit']");
            if (!submitBtn) return;

            Form.addEventListener('submit', onClick1);

            // CHECKBOXES CHANGE EVENT
            const checkboxes = Form.querySelectorAll("input[type='checkbox']");
            function updateSubmitState() {
                const checked = Form.querySelectorAll("input[type='checkbox']:checked");
                submitBtn.disabled = checkboxes.length > 0 && checked.length < checkboxes.length;
            }

            checkboxes.forEach((checkbox) => {
                checkbox.addEventListener('change', updateSubmitState);
            });
            updateSubmitState();

            function onClick1(ev) {
              const name = Form.querySelector("input[name='name']");
                const tel = Form.querySelector("input[name='phone']");
                const email = Form.querySelector("input[name='email']");
                const lossAmount = Form.querySelector("select[name='lossAmountRange']");
                const checked = Form.querySelectorAll("input[type='checkbox']:checked");

                ev.preventDefault();

                function addErrorClass(element) {
                    if (!element) return;
                    const field = element.classList.contains('phoneInput')
                        ? element.closest('.phone-wrap')
                        : element;
                    field?.classList.add('invalid');
                }

                function removeErrorClass(element) {
                    if (!element) return;
                    const field = element.classList.contains('phoneInput')
                        ? element.closest('.phone-wrap')
                        : element;
                    field?.classList.remove('invalid');
                }

                if (name && name.value.trim().length > 3) {
                    removeErrorClass(name);
                } else {
                    addErrorClass(name);
                }

                if (tel && tel.value.replace(/\D/g, '').length > 4) {
                    removeErrorClass(tel);
                } else {
                    addErrorClass(tel);
                }

                if (email && isEmailValid1(email.value)) {
                    removeErrorClass(email);
                } else {
                    addErrorClass(email);
                }

                if (lossAmount && lossAmount.value.trim()) {
                    removeErrorClass(lossAmount);
                } else {
                    addErrorClass(lossAmount);
                }
				
               
                if (
                    name && name.value.trim().length > 3 &&
                    tel && tel.value.replace(/\D/g, '').length > 4 &&
                    email && isEmailValid1(email.value) &&
                    lossAmount && lossAmount.value.trim() &&
                    checked.length === checkboxes.length
              )  {
                onClick10(ev);
                }
              }

            function onClick10(ev) {
              ev.preventDefault();
              submitBtn.disabled = true;

              const name = Form.querySelector("input[name='name']").value.trim();
                const tel = Form.querySelector("input[name='phone']").value.trim();
                const email = Form.querySelector("input[name='email']").value.trim();
                const lossAmount = Form.querySelector("input[name='lossAmount']")?.value.trim() || '';
                const contactMethod = Form.querySelector("input[name='contact_method']")?.value.trim() || '';
                const description = Form.querySelector("textarea[name='description']")?.value.trim() || '';
            
              let obj = {
                note: `TrustFunds; lossAmount ${lossAmount}; contactMethod ${contactMethod}; description ${description}`,
                name: name,
                email: email,
                phoneNumber: tel,
                geo: country,
                creo: '<?= htmlspecialchars($utm_creo, ENT_QUOTES); ?>',
                adset: '<?= htmlspecialchars($utm_account, ENT_QUOTES); ?>',
               
                extraData: {
                  contact_company: `funnel: TrustFunds; country=${country}`,
                },
              };
			  fetch('post.php', {
                method: 'POST',
                body: JSON.stringify(obj),
                headers: { 'content-type': 'application/json' },
              })
                .then(function (response) {
                  return response.json();
                })
                .then(function () {
                  document.location.href = './thanks.php';
                })  
                .catch(err => {
                  console.log(err);
                })
                .finally(() => {
                  Form.reset();
                  updateSubmitState();
               });
            }
            Form.addEventListener('input', (ev) => {
                    const field = ev.target.classList.contains('phoneInput')
                        ? ev.target.closest('.phone-wrap')
                        : ev.target;
                    field?.classList.remove('invalid');
                });
            });
        });
</script>
</body>
</html>
