<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700&family=Epilogue:wght@500;600;700&display=swap" rel="stylesheet">
<style>
  
  
  
  

  :root {
    --paper: #F2F3F0;
    --paper-raised: #FFFFFF;
    --ink: #1A1D19;
    --ink-muted: #5B6058;
    --ink-faint: #868C82;
    --accent: #C4202E;
    --accent-soft: #F5DEDF;
    --rule: #DBDDD6;
    --rule-strong: #C7CAC1;
    --focus: #1A5FB4;
  }

  @media (prefers-color-scheme: dark) {
    :root {
      --paper: #14150F;
      --paper-raised: #1B1C16;
      --ink: #EDEAE2;
      --ink-muted: #9A9C93;
      --ink-faint: #6F7268;
      --accent: #E2545F;
      --accent-soft: #2A1517;
      --rule: #2B2D26;
      --rule-strong: #383A32;
      --focus: #6FA8F5;
    }
  }
  :root[data-theme="dark"] {
    --paper: #14150F;
    --paper-raised: #1B1C16;
    --ink: #EDEAE2;
    --ink-muted: #9A9C93;
    --ink-faint: #6F7268;
    --accent: #E2545F;
    --accent-soft: #2A1517;
    --rule: #2B2D26;
    --rule-strong: #383A32;
    --focus: #6FA8F5;
  }
  :root[data-theme="light"] {
    --paper: #F2F3F0;
    --paper-raised: #FFFFFF;
    --ink: #1A1D19;
    --ink-muted: #5B6058;
    --ink-faint: #868C82;
    --accent: #C4202E;
    --accent-soft: #F5DEDF;
    --rule: #DBDDD6;
    --rule-strong: #C7CAC1;
    --focus: #1A5FB4;
  }

  .dltd-privacy-policy, .dltd-privacy-policy * { box-sizing: border-box; }
  .dltd-privacy-policy {
    margin: 0;
    background: var(--paper);
    color: var(--ink);
    font-family: "Epilogue", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
    padding-top: 1px;
  }
  a { color: var(--accent); text-decoration-thickness: 1px; text-underline-offset: 2px; }
  a:focus-visible, button:focus-visible, [tabindex]:focus-visible {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
    border-radius: 2px;
  }

  .wrap {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 24px 96px;
  }

  header.masthead {
    padding: 56px 0 32px;
    border-bottom: 1px solid var(--rule);
    margin-bottom: 40px;
  }
  .wordmark {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
    color: var(--ink);
  }
  .wordmark span { color: var(--accent); }
  .wordmark small {
    font-family: "Epilogue", sans-serif;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.06em;
    color: var(--ink-muted);
    text-transform: none;
    margin-left: 10px;
  }
  h1.title {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: clamp(40px, 7vw, 56px);
    line-height: 1.03;
    letter-spacing: -0.005em;
    text-transform: uppercase;
    text-wrap: balance;
    margin: 22px 0 10px;
  }
  .meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-muted);
  }
  .meta-row b { color: var(--ink); font-weight: 600; }

  .summary {
    background: var(--paper-raised);
    border: 1px solid var(--rule);
    border-left: 4px solid var(--accent);
    border-radius: 6px;
    padding: 22px 24px;
    margin: 0 0 44px;
  }
  .summary .eyebrow {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 12.5px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--accent);
    display: block;
    margin-bottom: 10px;
  }
  .summary ul {
    margin: 0;
    padding-left: 20px;
    display: grid;
    gap: 8px;
  }
  .summary li { color: var(--ink); }
  .summary li b { font-weight: 700; }

  nav.toc {
    margin: 0 0 52px;
    padding: 20px 24px;
    border: 1px solid var(--rule);
    border-radius: 6px;
    background: var(--paper-raised);
  }
  nav.toc .eyebrow {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--ink-muted);
    display: block;
    margin-bottom: 12px;
  }
  nav.toc ol {
    margin: 0;
    padding: 0;
    list-style: none;
    columns: 2;
    column-gap: 28px;
  }
  nav.toc li { break-inside: avoid; margin-bottom: 8px; }
  nav.toc a {
    color: var(--ink);
    text-decoration: none;
    font-size: 14.5px;
    display: flex;
    gap: 8px;
  }
  nav.toc a:hover { color: var(--accent); }
  nav.toc a .n {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    color: var(--ink-faint);
    min-width: 18px;
  }

  section.policy-section {
    padding: 40px 0;
    border-bottom: 1px solid var(--rule);
    scroll-margin-top: 24px;
  }
  section.policy-section:last-of-type { border-bottom: none; }

  .section-head {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 16px;
  }
  .section-head .num {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 22px;
    color: var(--accent);
    line-height: 1;
    font-variant-numeric: tabular-nums;
  }
  h2 {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 26px;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    text-wrap: balance;
    margin: 0;
    line-height: 1.15;
  }
  h3 {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--ink-muted);
    margin: 24px 0 10px;
  }
  p { margin: 0 0 14px; max-width: 68ch; }
  p:last-child { margin-bottom: 0; }
  ul.plain, ol.plain { margin: 0 0 14px; padding-left: 22px; max-width: 66ch; }
  ul.plain li, ol.plain li { margin-bottom: 8px; }
  strong { font-weight: 700; color: var(--ink); }

  table.data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 20px;
    font-size: 14.5px;
  }
  .table-scroll { overflow-x: auto; }
  table.data-table th, table.data-table td {
    text-align: left;
    padding: 10px 14px 10px 0;
    border-bottom: 1px solid var(--rule);
    vertical-align: top;
  }
  table.data-table th {
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 600;
    font-size: 12.5px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ink-muted);
    white-space: nowrap;
  }
  table.data-table td { color: var(--ink); }

  .callout {
    background: var(--accent-soft);
    border-radius: 6px;
    padding: 16px 18px;
    margin: 4px 0 18px;
    font-size: 15px;
  }
  .callout b { font-weight: 700; }

  footer.closing {
    margin-top: 20px;
    padding-top: 32px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 16px;
    font-size: 13.5px;
    color: var(--ink-muted);
  }
  footer.closing a { color: var(--ink); font-weight: 700; }

  @media (max-width: 560px) {
    nav.toc ol { columns: 1; }
    .wordmark small { display: block; margin: 6px 0 0; }
  }
</style>

<div class="dltd-privacy-policy"><div class="wrap">
  <header class="masthead">
    <span class="wordmark">DL<span>TD</span><small>DL TECHNICAL DEVELOPMENT</small></span>
    <h1 class="title">Privacy Policy</h1>
    <div class="meta-row">
      <span>Effective <b>24 August 2026</b></span>
      <span>Applies to the <b>DLTD app</b> (iOS & Android)</span>
      <span>Townsville, Queensland, Australia</span>
    </div>
  </header>

  <div class="summary">
    <span class="eyebrow">In plain English</span>
    <ul>
      <li>We collect the information needed to run a junior football development program: <b>contact details</b> for parents/guardians and coaches, and <b>player development data</b> — testing results, coach notes, session plans — for the kids in the program.</li>
      <li>Accounts aren't open sign-up. A coach or admin issues you a code first, so only people connected to the program can create one.</li>
      <li>A guardian only ever sees <b>their own</b> linked children. Coaches and admin can see players in the program so they can coach them.</li>
      <li>We don't sell data, run ads, or share it with marketers. It goes to the handful of services that keep the app running — listed in full in Section 6.</li>
      <li>You can ask to see, correct, or delete your family's data at any time — Section 8 has the how.</li>
    </ul>
  </div>

  <nav class="toc" aria-label="Table of contents">
    <span class="eyebrow">Contents</span>
    <ol>
      <li><a href="#who-we-are"><span class="n">1</span> Who we are</a></li>
      <li><a href="#accounts"><span class="n">2</span> How an account gets created</a></li>
      <li><a href="#what-we-collect"><span class="n">3</span> Information we collect</a></li>
      <li><a href="#children"><span class="n">4</span> Information about players under 18</a></li>
      <li><a href="#how-we-use"><span class="n">5</span> How we use it</a></li>
      <li><a href="#who-sees-it"><span class="n">6</span> Who can see it, and who we share it with</a></li>
      <li><a href="#storage-security"><span class="n">7</span> Storage & security</a></li>
      <li><a href="#your-rights"><span class="n">8</span> Access, correction & deletion</a></li>
      <li><a href="#retention"><span class="n">9</span> How long we keep it</a></li>
      <li><a href="#changes"><span class="n">10</span> Changes to this policy</a></li>
      <li><a href="#contact"><span class="n">11</span> Contact</a></li>
    </ol>
  </nav>

  <section class="policy-section" id="who-we-are">
    <div class="section-head"><span class="num">01</span><h2>Who we are</h2></div>
    <p>DL Technical Development (<strong>DLTD</strong>) runs a junior football (soccer) coaching and player development program in Townsville, Queensland. This policy covers the DLTD mobile app, used by parents/guardians, athletes, coaches, and program administrators to manage that program — Individual Development Plans (IDPs), physical testing, training schedules, and family contact details.</p>
    <p>DLTD is the data controller for the personal information described below. Questions or requests relating to this policy can be sent to the contact in Section 11.</p>
  </section>

  <section class="policy-section" id="accounts">
    <div class="section-head"><span class="num">02</span><h2>How an account gets created</h2></div>
    <p>The app has no open, public sign-up. Every account starts with a code issued directly by a DLTD coach or administrator to a specific person — a parent/guardian, an older athlete managing their own account, or a coach. Entering that code is what determines the account's role and links a guardian's account to their child's player record.</p>
    <p>This means account creation is gatekept from the outset: nobody can create an account, or attach themselves to a child's record, without a code issued by DLTD staff who already know the family or player.</p>
  </section>

  <section class="policy-section" id="what-we-collect">
    <div class="section-head"><span class="num">03</span><h2>Information we collect</h2></div>
    <p>What's collected depends on your role in the app.</p>

    <h3>From every account holder</h3>
    <ul class="plain">
      <li>Full name, email address, and phone number</li>
      <li>A profile photo, if you choose to add one</li>
      <li>Login credentials (your password is handled by our authentication provider and is never visible to DLTD in plain text)</li>
    </ul>

    <h3>About each player</h3>
    <div class="table-scroll">
      <table class="data-table">
        <thead><tr><th>Category</th><th>Examples</th></tr></thead>
        <tbody>
          <tr><td>Player profile</td><td>Full name, date of birth, favourite team/player/position, current club, photo</td></tr>
          <tr><td>Development plan (IDP)</td><td>Coach-authored session notes and focus areas, coach ratings across four development areas (technical, tactical, physical, psychological), the player/guardian's own self-reflections</td></tr>
          <tr><td>Physical testing</td><td>Sprint times, agility and jump measurements, and similar fitness testing results entered by a coach</td></tr>
          <tr><td>Skill and homework videos</td><td>Short video clips a player or guardian uploads as proof of a challenge or juggling-level attempt, and any video a coach attaches to a week's notes</td></tr>
          <tr><td>Commitment contract</td><td>A season goal-setting form with a hand-drawn signature from the player, guardian, and coach</td></tr>
          <tr><td>Scheduling</td><td>Which coach, date, and time a player is booked in for training</td></tr>
        </tbody>
      </table>
    </div>

    <h3>Collected automatically</h3>
    <p>If the app encounters an error, we use a third-party crash-reporting service (Sentry) to help us fix it. That report includes the device type, operating system version, app version, and the technical error itself (for example, which line of code failed). It deliberately does <strong>not</strong> include screen recordings, the content of your requests to our database, or the values of variables in your session — we've configured it not to collect any of that.</p>
  <p>A push notification token, if you allow notifications on your device — this lets us send you an alert (like an upcoming session reminder) without giving us any other access to your device.</p>
  </section>

  <section class="policy-section" id="children">
    <div class="section-head"><span class="num">04</span><h2>Information about players under 18</h2></div>
    <p>Most players in the program are minors. A player's profile and development data is entered and managed by their parent/guardian's account — not created by the child independently. Older athletes who manage their own account do so with a code issued directly by DLTD, in the same way a guardian's code would be.</p>
    <p>Because account creation itself requires a code from DLTD staff, we don't collect information about a child from anyone other than that child's own parent/guardian, a self-managing athlete, or a DLTD coach — never from an anonymous sign-up.</p>
  </section>

  <section class="policy-section" id="how-we-use">
    <div class="section-head"><span class="num">05</span><h2>How we use it</h2></div>
    <p>We use the information above to:</p>
    <ul class="plain">
      <li>Run and personalise each player's six-week development plan and physical testing record</li>
      <li>Let coaches log session notes, testing results, and goal-setting contracts</li>
      <li>Show parents/guardians their own child's development, testing history, and upcoming sessions</li>
      <li>Coordinate the training schedule between coaches and players</li>
      <li>Operate and secure the app itself, including signing you in and diagnosing crashes</li>
      <li>Send your email address occasional promotional or program updates — for example, enrollment periods or new features. You can opt out of these at any time.</li>
    </ul>
    <div class="callout">We do <b>not</b> use this information for third-party advertising, and we do not sell or rent it to anyone.</div>
  </section>

  <section class="policy-section" id="who-sees-it">
    <div class="section-head"><span class="num">06</span><h2>Who can see it, and who we share it with</h2></div>
    <h3>Within the app</h3>
    <ul class="plain">
      <li><strong>Parents/guardians</strong> can only see the players they're directly linked to — never another family's child.</li>
      <li><strong>Coaches and administrators</strong> can see players and families across the program, since coaching and scheduling isn't limited to one coach per player.</li>
    </ul>
    <h3>Outside DLTD</h3>
    <p>We don't share personal information with advertisers, data brokers, or unrelated third parties. The information passes through a small number of service providers who host and run the app on our behalf:</p>
    <div class="table-scroll">
      <table class="data-table">
        <thead><tr><th>Provider</th><th>What they handle</th></tr></thead>
        <tbody>
<tr><td>Supabase</td><td>Database, authentication, and photo/video storage for the app</td></tr>
    <tr><td>Sentry</td><td>Crash and error reporting (see Section 3 for exactly what this includes)</td></tr>
    <tr><td>Apple / Google</td><td>App distribution through the App Store and Google Play</td></tr>
    <tr><td>Expo</td><td>For delivering push notifications to your device</td></tr>
        </tbody>
      </table></div>
    <p>These providers process data on our instructions and don't have rights to use it for their own purposes. We may also disclose information if genuinely required to by law.</p>
  </section>

  <section class="policy-section" id="storage-security">
    <div class="section-head"><span class="num">07</span><h2>Storage & security</h2></div>
    <p>Data is stored with Supabase and protected by database-level access rules that enforce exactly the visibility described in Section 6 — for example, a guardian's own account is technically restricted from reading another family's records, not just hidden by the app's design. Traffic between the app and our servers is encrypted in transit.</p>
    <p>No system is perfectly secure, and we can't guarantee absolute security — but we take reasonable, proportionate steps to protect the information you share with us.</p>
  </section>

  <section class="policy-section" id="your-rights">
    <div class="section-head"><span class="num">08</span><h2>Access, correction & deletion</h2></div>
    <p>In line with the Australian Privacy Principles under the <em>Privacy Act 1988</em> (Cth), you can ask us to:</p>
    <ul class="plain">
      <li><strong>See</strong> what information we hold about you or your child</li>
      <li><strong>Correct</strong> anything that's inaccurate or out of date</li>
      <li><strong>Delete</strong> your account and associated player data, other than what we're required to keep for legal or safeguarding reasons</li>
    </ul>
    <p>Contact us using the details in Section 11 to make any of these requests.</p>
  </section>

  <section class="policy-section" id="retention">
    <div class="section-head"><span class="num">09</span><h2>How long we keep it</h2></div>
    <p>We keep account and player information for as long as the account is active with the program. If a player leaves DLTD or a family asks us to close their account, we delete the associated personal information within a reasonable period, except where we're required to retain records for legal, safety, or accounting reasons.</p>
  </section>

  <section class="policy-section" id="changes">
    <div class="section-head"><span class="num">10</span><h2>Changes to this policy</h2></div>
    <p>If we make material changes to how we handle personal information, we'll update the effective date at the top of this page. Continuing to use the app after a change means you accept the updated policy.</p>
  </section>

  <section class="policy-section" id="contact">
    <div class="section-head"><span class="num">11</span><h2>Contact</h2></div>
    <p>For any question about this policy, or to make a request under Section 8, contact:</p>
    <p><strong>Jared Craven-Griffiths</strong>, DL Technical Development<br>
    <a href="mailto:jaredcg2002@gmail.com">jaredcg2002@gmail.com</a></p>
  </section>

  <footer class="closing">
    <span>DL Technical Development — Townsville, QLD</span>
    <a href="mailto:jaredcg2002@gmail.com">jaredcg2002@gmail.com</a>
  </footer>
</div></div>