<!-- Blossum South Island Tour - paste into a Custom HTML block on a BLANK / CANVAS template page -->
<script>
  window.BLOSSUM_TOUR_CONFIG = {
    // Where the form posts. Supabase edge function / Zoho webform / Make webhook.
    // Leave "" to run in demo mode (logs the payload, shows the success state).
    SUBMIT_URL: "",
    // Catalist retail offering link (NZD $100k). Set this to the exact Catalist deal URL.
    CATALIST_URL: "",
    // Tour dates (single source of truth for the page copy).
    QT_DATE: "20 - 23 July 2026",
    CHC_DATE: "2 - 7 August 2026"
  };
</script>
<style>
  @import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,500;1,700&display=swap");
  :root {
    /* ===== Blossum brand tokens (pulled from blossum.nz) ===== */
    --navy:      #013C67;
    --navy-dk:   #073050;
    --navy-mid:  #4A6780;
    --gold:      #FEC702;
    --gold-dk:   #E0AE00;
    --gold-soft: #FBE7A6;
    --cream:     #F4F1E8;
    --paper:     #FFFFFF;
    --line:      #E4DECF;
    --ink:       #07314F;
    --ink-soft:  #4A6780;
    --shadow:    18px 30px 60px -30px rgba(1, 60, 103, .35);

    --font: "Montserrat", system-ui, -apple-system, sans-serif;
    --wrap: 1200px;
    --read: 880px;
  }

  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    margin: 0; font-family: var(--font); color: var(--ink); background: var(--cream);
    line-height: 1.62; font-size: 17px; -webkit-font-smoothing: antialiased; overflow-x: hidden;
  }
  h1,h2,h3,h4 { font-family: var(--font); font-weight: 800; line-height: 1.08; letter-spacing: -.015em; margin: 0; color: var(--navy); }
  h1 { font-weight: 900; }
  p { margin: 0 0 1rem; }
  a { color: inherit; }
  .wrap { width: min(100% - 2.5rem, var(--wrap)); margin-inline: auto; }
  .read { max-width: var(--read); }
  .eyebrow { font-size: .76rem; letter-spacing: .24em; text-transform: uppercase; font-weight: 700; color: var(--navy-mid); }

  /* ---------- buttons ---------- */
  .btn {
    display: inline-flex; align-items: center; gap: .5rem; cursor: pointer;
    font-family: var(--font); font-weight: 700; font-size: .95rem; line-height: 1;
    border: 2px solid transparent; border-radius: 6px; padding: .9rem 1.5rem;
    text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
  }
  .btn.gold { background: var(--gold); color: var(--navy-dk); }
  .btn.gold:hover { background: var(--gold-dk); transform: translateY(-2px); box-shadow: 0 14px 26px -12px rgba(254,199,2,.6); }
  .btn.ghost-navy { background: transparent; color: var(--navy); border-color: var(--navy); }
  .btn.ghost-navy:hover { background: var(--navy); color: #fff; }
  .btn.ghost-light { background: transparent; color: #fff; border-color: rgba(255,255,255,.6); }
  .btn.ghost-light:hover { background: #fff; color: var(--navy); }
  .btn.sm { padding: .7rem 1.2rem; font-size: .9rem; }

  /* ---------- header ---------- */
  header { position: sticky; top: 0; z-index: 50; background: var(--navy); border-bottom: 3px solid var(--gold); }
  .bar { display: flex; align-items: center; justify-content: space-between; padding: .85rem 0; }
  .logo-img { height: 40px; width: auto; display: block; }
  .header .btn { padding: .65rem 1.2rem; }

  /* ---------- hero ---------- */
  .hero { position: relative; overflow: hidden; background: var(--navy); color: #fff; padding: clamp(3.5rem, 9vw, 6.5rem) 0 clamp(3rem, 7vw, 5rem); }
  .hero::before { content: ""; position: absolute; z-index: 0; top: -25%; right: -10%; width: 55vw; height: 55vw; max-width: 720px; max-height: 720px; border-radius: 50%; background: radial-gradient(circle at 45% 45%, rgba(254,199,2,.20), transparent 60%); }
  .hero::after { content: ""; position: absolute; z-index: 0; bottom: -35%; left: -12%; width: 50vw; height: 50vw; max-width: 620px; max-height: 620px; border-radius: 50%; background: radial-gradient(circle at 50% 50%, rgba(74,103,128,.45), transparent 62%); }
  .hero .wrap { position: relative; z-index: 1; }
  .hero .eyebrow { color: var(--gold); }
  .hero h1 { color: #fff; font-size: clamp(2.5rem, 6vw, 4.6rem); max-width: 24ch; margin: 1.05rem 0 0; }
  .hero h1 em { font-style: normal; color: var(--gold); }
  .hero .sub { font-size: clamp(1.05rem, 1.8vw, 1.28rem); color: #D6E0EA; max-width: 70ch; margin-top: 1.4rem; font-weight: 400; }
  .hero .cta-row { display: flex; flex-wrap: wrap; gap: .9rem; margin-top: 2rem; align-items: center; }
  .hero .note { font-size: .88rem; color: #AFC0CF; margin-top: 1.4rem; max-width: 78ch; }

  .reveal { opacity: 0; transform: translateY(18px); animation: rise .9s cubic-bezier(.2,.7,.2,1) forwards; }
  .d1{animation-delay:.05s}.d2{animation-delay:.18s}.d3{animation-delay:.32s}.d4{animation-delay:.46s}.d5{animation-delay:.6s}
  @keyframes rise { to { opacity: 1; transform: none; } }
  @media (prefers-reduced-motion: reduce){ .reveal{ animation: none; opacity:1; transform:none; } }

  /* ---------- stop cards ---------- */
  .stops { position: relative; z-index: 2; padding: clamp(2.5rem,5vw,3.5rem) 0 0; }
  .stop-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.2rem; }
  .stop { position: relative; background: var(--paper); border: 1px solid var(--line); border-radius: 14px; padding: 1.8rem 1.8rem 1.6rem; box-shadow: var(--shadow); overflow: hidden; border-top: 4px solid var(--gold); }
  .stop .pin { font-weight: 700; color: var(--navy-mid); font-size: .8rem; letter-spacing: .18em; text-transform: uppercase; }
  .stop h3 { font-size: 2rem; margin: .3rem 0 .5rem; color: var(--navy); }
  .stop .date { font-size: 1.15rem; color: var(--navy); font-weight: 700; }
  .stop .sub { font-size: .95rem; color: var(--ink-soft); margin-top: .4rem; }
  .stop .ribbon { position:absolute; top:1.3rem; right:-2.7rem; transform: rotate(45deg); background: var(--gold); color: var(--navy-dk); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; padding:.28rem 3rem; font-weight:800; }

  /* ---------- section frame ---------- */
  section.block { position: relative; z-index: 2; padding: clamp(3rem, 7vw, 5.5rem) 0; }
  .lede { font-size: clamp(1.7rem, 3.2vw, 2.4rem); color: var(--navy); }
  .section-head { display:flex; flex-direction:column; gap:.8rem; margin-bottom: 2.4rem; }

  /* ---------- fund facts ---------- */
  .facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
  .fact { background: var(--paper); padding: 1.8rem 1.5rem; position: relative; }
  .fact::before { content:""; position:absolute; top:0; left:0; width:42px; height:4px; background: var(--gold); }
  .fact .n { font-weight: 900; font-size: clamp(2.1rem, 4vw, 2.9rem); color: var(--navy); line-height: 1; letter-spacing: -.02em; }
  .fact .n small { font-size: .95rem; color: var(--navy-mid); font-weight: 700; letter-spacing: 0; }
  .fact .l { margin-top: .65rem; font-size: .96rem; color: var(--ink-soft); }

  /* retail callout */
  .retail-bar { margin-top: 1.4rem; background: var(--navy); color: #fff; border-radius: 14px; padding: 1.4rem 1.6rem; display: flex; flex-wrap: wrap; gap: 1rem 1.4rem; align-items: center; justify-content: space-between; }
  .retail-bar p { margin: 0; font-size: 1rem; color: #E4EBF1; max-width: 62ch; }
  .retail-bar strong { color: var(--gold); }

  /* ---------- people ---------- */
  .people { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.2rem; margin-top: 1.5rem; }
  .person { background: var(--paper); border: 1px solid var(--line); border-radius: 14px; padding: 1.6rem; display: flex; gap: 1.2rem; align-items: center; box-shadow: var(--shadow); }
  .avatar-img { flex: 0 0 auto; width: 88px; height: 88px; border-radius: 50%; object-fit: cover; object-position: 50% 18%; border: 3px solid var(--gold); background: var(--navy); }
  .person h3 { font-size: 1.3rem; color: var(--navy); }
  .person .role { color: var(--navy-mid); font-weight: 700; font-size: .82rem; letter-spacing: .03em; text-transform: uppercase; margin-top: .15rem; }
  .person p { font-size: .94rem; color: var(--ink-soft); margin: .5rem 0 0; }

  /* ---------- expect list ---------- */
  .expect { list-style: none; padding: 0; margin: 1.4rem 0 0; display: grid; gap: .9rem; max-width: var(--read); }
  .expect li { display: flex; gap: .9rem; align-items: flex-start; font-size: 1.05rem; }
  .expect .tick { flex: 0 0 auto; width: 1.85rem; height: 1.85rem; border-radius: 50%; background: var(--gold); color: var(--navy-dk); display: grid; place-items: center; font-weight: 800; font-size: .9rem; margin-top: .1rem; }

  /* ---------- form ---------- */
  .form-wrap { position: relative; z-index: 2; }
  .form-card { background: var(--paper); border: 1px solid var(--line); border-radius: 16px; padding: clamp(1.6rem, 4vw, 2.8rem); box-shadow: var(--shadow); max-width: 920px; margin-inline: auto; border-top: 4px solid var(--gold); }
  .grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 1.1rem; }
  .field { display: flex; flex-direction: column; gap: .4rem; }
  .field.full { grid-column: 1 / -1; }
  label { font-size: .82rem; font-weight: 700; letter-spacing: .02em; color: var(--navy); }
  label .req { color: var(--gold-dk); }
  input, select, textarea { font-family: var(--font); font-size: 1rem; color: var(--ink); padding: .8rem .95rem; border: 1.5px solid var(--line); border-radius: 8px; background: var(--cream); transition: border-color .2s ease, box-shadow .2s ease; }
  input:focus, select:focus, textarea:focus { outline: none; border-color: var(--navy); box-shadow: 0 0 0 4px rgba(1,60,103,.12); }
  textarea { resize: vertical; min-height: 88px; }
  .helper { display: none; grid-column: 1 / -1; background: var(--cream); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 8px; padding: .9rem 1.1rem; font-size: .92rem; color: var(--ink); }
  .helper.show { display: block; }
  .helper a { color: var(--navy); font-weight: 700; }
  .consent { display: flex; gap: .7rem; align-items: flex-start; font-size: .88rem; color: var(--ink-soft); font-weight: 400; }
  .consent input { width: 1.15rem; height: 1.15rem; margin-top: .15rem; flex: 0 0 auto; accent-color: var(--navy); }
  .form-actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin-top: 1.4rem; }
  .form-actions .btn { font-size: 1.05rem; padding: 1rem 1.9rem; }
  .err { color: #B3261E; font-size: .82rem; min-height: 1rem; font-weight: 600; }
  .form-success { display: none; text-align: center; padding: 1rem; }
  .form-success.show { display: block; }
  .form-success .check { width: 64px; height: 64px; border-radius: 50%; background: var(--gold); color: var(--navy-dk); display: grid; place-items: center; font-size: 2rem; font-weight: 800; margin: 0 auto 1rem; }
  .form-success h3 { font-size: 1.8rem; color: var(--navy); }

  /* ---------- disclaimer / footer ---------- */
  .disclaimer { font-size: .8rem; color: var(--ink-soft); max-width: var(--read); margin: 1.4rem auto 0; line-height: 1.55; font-weight: 400; }
  footer { position: relative; z-index: 2; background: var(--navy-dk); color: #C4D2DE; margin-top: clamp(2.5rem,6vw,4rem); border-top: 3px solid var(--gold); }
  footer .wrap { padding: 2.6rem 0; display: flex; flex-wrap: wrap; gap: 1.6rem; justify-content: space-between; align-items: flex-start; }
  footer .logo-img { height: 38px; }
  footer p { font-size: .82rem; max-width: 58ch; font-weight: 400; }
  footer a { color: var(--gold); }

  @media (max-width: 760px) {
    .stop-grid, .facts, .people, .grid2 { grid-template-columns: 1fr; }
    .hero h1 { font-size: clamp(2.2rem, 9vw, 3rem); }
  }
</style>
<header>
  <div class="wrap bar">
    <a href="https://blossum.nz" aria-label="Blossum home">
      <img class="logo-img" src="https://blossum.nz/wp-content/uploads/2025/04/blossum_logo_white-1.png" alt="Blossum logo" />
    </a>
    <a href="#request" class="btn gold">Request a meeting</a>
  </div>
</header>

<!-- HERO -->
<section class="hero">
  <div class="wrap">
    <p class="eyebrow reveal d1">South Island Investor Roadshow</p>
    <h1 class="reveal d2">Sit down with the people who <em>run the fund.</em></h1>
    <p class="sub reveal d3">
      Blossum is coming to Queenstown and Christchurch. Spend twenty minutes with our experts, see exactly how our Wholesale PIE Fund lends against New Zealand property, and ask the questions you would never get answered in a brochure.
    </p>
    <div class="cta-row reveal d4">
      <a href="#request" class="btn gold">Request a meeting</a>
      <a href="#fund" class="btn ghost-light">How the fund works</a>
    </div>
    <p class="note reveal d5">For wholesale (from NZD $150,000), retail (from NZD $100,000) and international investors. Returns are a target, not a guarantee, and your capital is at risk.</p>
  </div>
</section>

<!-- STOPS -->
<section class="stops">
  <div class="wrap">
    <div class="stop-grid">
      <div class="stop reveal d2">
        <div class="ribbon">Limited spots</div>
        <p class="pin">Stop one</p>
        <h3>Queenstown</h3>
        <p class="date" data-tour="QT_DATE">Dates to be confirmed</p>
        <p class="sub">We come to you. Tell us a time that suits and we will arrange where to meet.</p>
      </div>
      <div class="stop reveal d3">
        <div class="ribbon">Limited spots</div>
        <p class="pin">Stop two</p>
        <h3>Christchurch</h3>
        <p class="date" data-tour="CHC_DATE">Dates to be confirmed</p>
        <p class="sub">We come to you. Tell us a time that suits and we will arrange where to meet.</p>
      </div>
    </div>
  </div>
</section>

<!-- FUND -->
<section class="block" id="fund">
  <div class="wrap">
    <div class="section-head">
      <p class="eyebrow">Why it is worth a coffee</p>
      <h2 class="lede">A wholesale fund built on property-secured lending.</h2>
      <p class="read" style="color:var(--ink-soft); font-size:1.1rem;">
        Blossum is a New Zealand private credit manager running a Wholesale PIE Fund. We lend to borrowers secured by first and second ranking mortgages over New Zealand property, and pass the income back to investors every month. Here is the shape of the wholesale fund.
      </p>
    </div>
    <div class="facts">
      <div class="fact"><div class="n">8%<small> p.a.</small></div><div class="l">Target return, before tax and after fees, paid as monthly income. A target, not a guarantee.</div></div>
      <div class="fact"><div class="n">75%<small> LVR</small></div><div class="l">Cap on lending against property value, across first and second ranking mortgages.</div></div>
      <div class="fact"><div class="n">28%<small> tax</small></div><div class="l">Capped investor tax rate through our Portfolio Investment Entity structure, trusts included.</div></div>
      <div class="fact"><div class="n">1st &amp; 2nd</div><div class="l">Registered mortgage security over New Zealand property behind every loan we make.</div></div>
      <div class="fact"><div class="n">$150k<small> min</small></div><div class="l">Wholesale entry. NZD $1,000,000 for international and Active Investor Plus applicants.</div></div>
      <div class="fact"><div class="n">Monthly</div><div class="l">Income distributions, with clear reporting so you can track your investment with confidence.</div></div>
    </div>

    <div class="retail-bar">
      <p>Investing from <strong>NZD $100,000</strong>? Blossum also has a retail offering on Catalist. The terms differ from the wholesale fund, so the meeting or the link will walk you through them.</p>
      <a href="#" id="catalistBtn" class="btn gold sm" target="_blank" rel="noopener">View the retail offering</a>
    </div>
  </div>
</section>

<!-- PEOPLE -->
<section class="block" style="padding-top:0;">
  <div class="wrap">
    <div class="section-head">
      <p class="eyebrow">Who you will meet</p>
      <h2 class="lede">Talk to our experts in person.</h2>
    </div>
    <div class="people">
      <div class="person">
        <img class="avatar-img" src="https://blossum.nz/wp-content/uploads/2026/04/DSC7940_2-scaled.jpg" alt="McColm Cowden, Business Development Manager at Blossum" />
        <div>
          <h3>McColm Cowden</h3>
          <div class="role">Business Development Manager</div>
          <p>Your first point of contact. McColm brings 20 years across New Zealand and Australia and walks you through who the fund is for and whether it fits what you are trying to do.</p>
        </div>
      </div>
      <div class="person">
        <img class="avatar-img" src="https://blossum.nz/wp-content/uploads/2026/01/DSC3737_2-1-768x1024.jpg" alt="Chris Kelly, Investment Manager at Blossum" />
        <div>
          <h3>Chris Kelly</h3>
          <div class="role">Investment Manager</div>
          <p>Chris brings 25 years across New Zealand's largest fund managers. Bring the hard questions on security, LVR and how the income is generated.</p>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- EXPECT -->
<section class="block" style="padding-top:0;">
  <div class="wrap">
    <div class="section-head">
      <p class="eyebrow">What to expect</p>
      <h2 class="lede">Twenty minutes. No pressure.</h2>
    </div>
    <ul class="expect">
      <li><span class="tick">1</span><span>A plain walk through how the Wholesale PIE Fund works, and how it targets 8% p.a. from property-secured lending.</span></li>
      <li><span class="tick">2</span><span>A straight answer on whether you qualify as a wholesale, retail or international investor, and what the minimum looks like for you.</span></li>
      <li><span class="tick">3</span><span>Time for your questions on security, loan-to-value, monthly income and how your capital is protected.</span></li>
      <li><span class="tick">4</span><span>No obligation. If it is not the right fit, we will tell you. You leave with the facts either way.</span></li>
    </ul>
  </div>
</section>

<!-- FORM -->
<section class="block form-wrap" id="request">
  <div class="wrap">
    <div class="section-head" style="text-align:center; align-items:center;">
      <p class="eyebrow">Request a meeting</p>
      <h2 class="lede">Tell us where you are and we will lock in a time.</h2>
    </div>

    <div class="form-card">
      <form id="tourForm" novalidate>
        <div class="grid2">
          <div class="field">
            <label for="first">First name <span class="req">*</span></label>
            <input id="first" name="first_name" autocomplete="given-name" required />
          </div>
          <div class="field">
            <label for="last">Last name <span class="req">*</span></label>
            <input id="last" name="last_name" autocomplete="family-name" required />
          </div>
          <div class="field">
            <label for="email">Email <span class="req">*</span></label>
            <input id="email" name="email" type="email" autocomplete="email" required />
          </div>
          <div class="field">
            <label for="phone">Mobile <span class="req">*</span></label>
            <input id="phone" name="phone" type="tel" autocomplete="tel" placeholder="02x xxx xxxx" required />
          </div>
          <div class="field">
            <label for="city">Which stop suits you <span class="req">*</span></label>
            <select id="city" name="preferred_city" required>
              <option value="" selected disabled>Select a city</option>
              <option>Queenstown</option>
              <option>Christchurch</option>
              <option>I am elsewhere in the South Island</option>
              <option>I am elsewhere in New Zealand</option>
            </select>
          </div>
          <div class="field">
            <label for="time">Preferred time</label>
            <select id="time" name="preferred_time">
              <option value="" selected disabled>Select a preference</option>
              <option>Weekday daytime</option>
              <option>Weekday evening</option>
              <option>Weekend</option>
              <option>Any time works</option>
            </select>
          </div>
          <div class="field full">
            <label for="investor">Which best describes you <span class="req">*</span></label>
            <select id="investor" name="investor_type" required>
              <option value="" selected disabled>Select one</option>
              <option>Wholesale investor (NZD $150k or more)</option>
              <option>Retail investor (NZD $100k or more)</option>
              <option>International / Active Investor Plus</option>
              <option>Partnership or referral</option>
              <option>Not sure yet, I want to check</option>
            </select>
          </div>

          <div class="helper" id="retailNote">
            Blossum has a retail offering from <strong>NZD $100,000</strong> on Catalist, with terms that differ from the wholesale fund. <a href="#" id="catalistBtnInline" target="_blank" rel="noopener">View the retail offering on Catalist</a>, or leave your details below and we will guide you through it.
          </div>
          <div class="helper" id="partnerNote">
            Welcome to CAA, wealth advisers, financial advisers, realtors, business brokers and immigration advisers whose clients may be interested in the Blossum AIP Fund. Tell us about your business in the message field below and we will be in touch about a referral partnership.
          </div>

          <div class="field full">
            <label for="msg">Anything you want us to prepare for? (optional)</label>
            <textarea id="msg" name="message" placeholder="A question about security, LVR, tax, timing, or your referral business..."></textarea>
          </div>
          <div class="field full">
            <label class="consent">
              <input type="checkbox" id="consent" name="consent" required />
              <span>I am happy for Blossum to contact me about a meeting and about the fund.</span>
            </label>
          </div>
        </div>
        <div class="err" id="formErr" role="alert"></div>
        <div class="form-actions">
          <button class="btn gold" type="submit" id="submitBtn">Request my meeting</button>
        </div>
      </form>

      <div class="form-success" id="formSuccess">
        <div class="check">&#10003;</div>
        <h3>Thank you. You are on the list.</h3>
        <p style="color:var(--ink-soft); max-width:46ch; margin:.6rem auto 0; font-weight:400;">
          McColm or Chris will be in touch shortly to confirm your time. Keep an eye on your phone and inbox.
        </p>
      </div>
    </div>

    <p class="disclaimer">
      This page is intended for wholesale, eligible and retail investors as relevant under the Financial Markets Conduct Act 2013.
      It is information only and is not financial advice or an offer to the public. The 8% p.a. figure is the target return of the Blossum Wholesale Fund,
      it is not guaranteed, past performance is not a reliable indicator of future performance, and your capital is at risk. The retail offering on Catalist
      has separate terms. Investment is subject to Blossum's offer documents and eligibility criteria. Seek independent advice if you are unsure.
    </p>
  </div>
</section>

<footer>
  <div class="wrap">
    <div>
      <img class="logo-img" src="https://blossum.nz/wp-content/uploads/2025/04/blossum_logo_white-1.png" alt="Blossum logo" />
      <p style="margin-top:.9rem;">Wholesale PIE Fund and New Zealand private credit manager. Property-secured lending across New Zealand.</p>
    </div>
    <div>
      <p>Returns are a target and are not guaranteed. Past performance is not a reliable indicator of future performance. Your capital is at risk.</p>
      <p style="margin-top:.6rem;"><a href="https://blossum.nz">blossum.nz</a> &nbsp;|&nbsp; <a href="mailto:info@blossum.nz">info@blossum.nz</a></p>
    </div>
  </div>
</footer>

<script>
(function () {
  var cfg = window.BLOSSUM_TOUR_CONFIG || {};

  // Inject tour dates
  document.querySelectorAll("[data-tour]").forEach(function (el) {
    var val = cfg[el.getAttribute("data-tour")];
    if (val && val.indexOf("{{") !== 0) el.textContent = val;
  });

  // Wire the Catalist links (fall back to an email enquiry if no URL is set yet)
  var catalistHref = cfg.CATALIST_URL ? cfg.CATALIST_URL
    : "mailto:info@blossum.nz?subject=Blossum%20retail%20offering%20(Catalist)";
  ["catalistBtn","catalistBtnInline"].forEach(function(id){
    var a = document.getElementById(id); if (a) a.href = catalistHref;
  });

  // Show contextual helper text based on investor type
  var investor = document.getElementById("investor");
  var retailNote = document.getElementById("retailNote");
  var partnerNote = document.getElementById("partnerNote");
  investor.addEventListener("change", function () {
    var v = investor.value;
    retailNote.classList.toggle("show", v.indexOf("Retail") === 0);
    partnerNote.classList.toggle("show", v.indexOf("Partnership") === 0);
  });

  var form = document.getElementById("tourForm");
  var errBox = document.getElementById("formErr");
  var success = document.getElementById("formSuccess");
  var btn = document.getElementById("submitBtn");
  function fail(msg) { errBox.textContent = msg; }

  form.addEventListener("submit", function (e) {
    e.preventDefault();
    fail("");
    var data = Object.fromEntries(new FormData(form).entries());
    if (!data.first_name || !data.last_name) return fail("Please add your name.");
    if (!/^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(data.email || "")) return fail("Please enter a valid email.");
    if ((data.phone || "").replace(/\D/g, "").length < 8) return fail("Please enter a valid phone number.");
    if (!data.preferred_city) return fail("Please choose which stop suits you.");
    if (!data.investor_type) return fail("Please tell us which option describes you.");
    if (!document.getElementById("consent").checked) return fail("Please tick the consent box so we can contact you.");

    data.source = "South Island Tour Landing Page";
    data.submitted_at = new Date().toISOString();
    data.page = location.href;

    btn.disabled = true; btn.textContent = "Sending...";
    function done() { form.style.display = "none"; success.classList.add("show"); success.scrollIntoView({ behavior: "smooth", block: "center" }); }

    if (!cfg.SUBMIT_URL) { console.log("[Blossum tour] form payload (demo mode, set SUBMIT_URL to send):", data); return done(); }

    fetch(cfg.SUBMIT_URL, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(data) })
      .then(function (r) { if (!r.ok) throw new Error("bad status " + r.status); return r; })
      .then(done)
      .catch(function (err) { console.error(err); btn.disabled = false; btn.textContent = "Request my meeting"; fail("Something went wrong sending that. Please try again, or email us directly."); });
  });
})();
</script>
Blossum logo
Our investment products are limited to select wholesale investors only. Please note that past performance is not a reliable indicator of future performance, and the rates we offer could change in the future. Terms and conditions apply.

© 2026 | Blossum | All Rights reserved

Download Investors Pack

Please add your details below and Download the Investors Pack.
Get International Investor Pack

Download Investors Pack

Please add your details below and Download the Investors Pack.
Investors PDF Download

Get in touch

Fill out the form below and we will get back to you within 24hr.
Get in Touch
..... ..... .....
..... ..... .....
...... ......