| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523 |
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Terms of Use — Tasmanian Planning Scheme Assistant</title>
- <meta name="description" content="Terms of Use for the Tasmanian Planning Scheme Assistant website and services. Please read these terms carefully before using the site.">
- <link rel="canonical" href="https://tasplanning.report/terms">
- <meta name="robots" content="index,follow,max-snippet:-1,max-image-preview:large,max-video-preview:-1">
- <meta name="keywords" content="Terms of Use, TPS Assistant, Tasmanian Planning Scheme, SPP, LPS, planning information, Tasmania">
- <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=DM+Serif+Display:ital@0;1&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap" rel="stylesheet">
- <link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
- <link rel="icon" href="/favicon.ico">
- <link rel="apple-touch-icon" href="/image/apple-touch-icon.png">
- <style>
- :root {
- --bg: #0b0f0e;
- --bg-1: #111614;
- --bg-2: #181e1b;
- --bg-card: #141a17;
- --border: rgba(255,255,255,0.07);
- --border-hover: rgba(255,255,255,0.14);
- --accent: #2ddc8a;
- --accent-dim: rgba(45,220,138,0.10);
- --warn-dim: rgba(240,192,96,0.08);
- --warn: #f0c060;
- --text-primary: #eaf0ec;
- --text-secondary:#8fa899;
- --text-muted: #4f6459;
- --serif: 'DM Serif Display', Georgia, serif;
- --sans: 'DM Sans', system-ui, sans-serif;
- --radius: 10px;
- --radius-lg: 16px;
- --transition: 0.16s cubic-bezier(0.4,0,0.2,1);
- }
- *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
- html { scroll-behavior: smooth; }
- body {
- font-family: var(--sans);
- background: var(--bg);
- color: var(--text-primary);
- font-size: 16px;
- line-height: 1.7;
- -webkit-font-smoothing: antialiased;
- min-height: 100vh;
- }
- ::selection { background: var(--accent); color: #0b0f0e; }
- a { color: var(--accent); text-decoration: none; transition: opacity var(--transition); }
- a:hover { opacity: 0.8; }
- /* ── Nav ─────────────────────────────────────────────────────────── */
- .site-nav {
- position: sticky; top: 0; z-index: 100;
- background: rgba(11,15,14,0.92);
- backdrop-filter: blur(12px);
- border-bottom: 1px solid var(--border);
- }
- .nav-inner {
- max-width: 900px; margin: 0 auto; padding: 0 24px;
- display: flex; align-items: center; justify-content: space-between;
- height: 56px;
- }
- .nav-brand {
- display: flex; align-items: center; gap: 9px;
- font-size: 0.88rem; font-weight: 500;
- color: var(--text-primary); text-decoration: none;
- }
- .nav-links { display: flex; align-items: center; gap: 4px; }
- .nav-links a {
- font-size: 0.82rem; color: var(--text-secondary);
- padding: 5px 11px; border-radius: 5px; text-decoration: none;
- transition: all var(--transition);
- }
- .nav-links a:hover { color: var(--text-primary); background: rgba(255,255,255,0.05); opacity: 1; }
- .nav-links a.active { color: var(--accent); }
- /* ── Page layout ─────────────────────────────────────────────────── */
- .page-wrap {
- max-width: 760px; margin: 0 auto;
- padding: 56px 24px 96px;
- }
- /* ── Page header ─────────────────────────────────────────────────── */
- .page-header { margin-bottom: 48px; }
- .page-eyebrow {
- display: inline-flex; align-items: center; gap: 7px;
- font-size: 0.72rem; font-weight: 500; letter-spacing: 0.12em;
- text-transform: uppercase; color: var(--accent); margin-bottom: 16px;
- }
- .page-eyebrow::before {
- content: ''; display: block; width: 18px; height: 1px; background: var(--accent);
- }
- .page-header h1 {
- font-family: var(--serif); font-size: clamp(2rem, 4vw, 2.8rem);
- font-weight: 400; line-height: 1.15; margin-bottom: 14px;
- }
- .page-header h1 em { font-style: italic; color: var(--accent); }
- .page-meta {
- display: flex; align-items: center; gap: 16px;
- flex-wrap: wrap; margin-top: 16px;
- }
- .meta-chip {
- display: inline-flex; align-items: center; gap: 6px;
- background: var(--bg-card); border: 1px solid var(--border);
- border-radius: 999px; padding: 4px 12px;
- font-size: 0.75rem; color: var(--text-muted);
- }
- .meta-chip i { font-size: 0.8rem; }
- /* ── Disclaimer banner ───────────────────────────────────────────── */
- .disclaimer-banner {
- background: var(--warn-dim); border: 1px solid rgba(240,192,96,0.2);
- border-radius: var(--radius); padding: 16px 20px;
- display: flex; gap: 12px; align-items: flex-start;
- margin-bottom: 40px;
- }
- .disclaimer-banner i { color: var(--warn); font-size: 1rem; flex-shrink: 0; margin-top: 2px; }
- .disclaimer-banner p {
- color: var(--text-secondary); font-size: 0.85rem; line-height: 1.65; margin: 0;
- }
- .disclaimer-banner strong { color: var(--warn); }
- /* ── Table of contents ───────────────────────────────────────────── */
- .toc {
- background: var(--bg-card); border: 1px solid var(--border);
- border-radius: var(--radius-lg); padding: 24px 28px;
- margin-bottom: 48px;
- }
- .toc-label {
- font-size: 0.7rem; font-weight: 500; letter-spacing: 0.1em;
- text-transform: uppercase; color: var(--text-muted); margin-bottom: 14px;
- display: block;
- }
- .toc ol {
- list-style: none; display: flex; flex-direction: column;
- gap: 8px; padding: 0; counter-reset: toc;
- }
- .toc ol li {
- display: flex; align-items: baseline; gap: 10px;
- counter-increment: toc;
- }
- .toc ol li::before {
- content: counter(toc) ".";
- font-size: 0.72rem; color: var(--text-muted);
- min-width: 18px; flex-shrink: 0;
- }
- .toc ol li a {
- font-size: 0.85rem; color: var(--text-secondary);
- text-decoration: none; transition: color var(--transition); line-height: 1.4;
- }
- .toc ol li a:hover { color: var(--accent); opacity: 1; }
- /* ── Policy sections ─────────────────────────────────────────────── */
- .policy-section {
- margin-bottom: 44px; padding-bottom: 44px;
- border-bottom: 1px solid var(--border);
- }
- .policy-section:last-of-type { border-bottom: none; }
- .section-anchor { scroll-margin-top: 80px; }
- .policy-section h2 {
- font-family: var(--serif); font-size: 1.4rem; font-weight: 400;
- color: var(--text-primary); margin-bottom: 14px; line-height: 1.2;
- display: flex; align-items: center; gap: 10px;
- }
- .section-num {
- font-family: var(--sans); font-size: 0.72rem; font-weight: 500;
- color: var(--accent); background: var(--accent-dim);
- border: 1px solid rgba(45,220,138,0.2);
- border-radius: 999px; padding: 2px 9px;
- flex-shrink: 0; letter-spacing: 0.05em;
- }
- .policy-section p {
- color: var(--text-secondary); margin-bottom: 14px; font-size: 0.95rem;
- }
- .policy-section p:last-child { margin-bottom: 0; }
- .policy-section ul {
- list-style: none; display: flex; flex-direction: column;
- gap: 10px; padding: 0; margin-bottom: 14px;
- }
- .policy-section ul li {
- display: flex; align-items: flex-start; gap: 10px;
- color: var(--text-secondary); font-size: 0.95rem;
- }
- .policy-section ul li::before {
- content: '';
- width: 5px; height: 5px; border-radius: 50%;
- background: var(--accent); flex-shrink: 0; margin-top: 9px;
- }
- .policy-section ul li strong { color: var(--text-primary); font-weight: 500; }
- /* ACL highlight box */
- .highlight-box {
- background: var(--bg-1); border: 1px solid var(--border);
- border-left: 3px solid var(--accent);
- border-radius: 0 var(--radius) var(--radius) 0;
- padding: 14px 18px; margin: 16px 0;
- }
- .highlight-box p {
- color: var(--text-secondary); font-size: 0.88rem;
- margin: 0; line-height: 1.65;
- }
- .highlight-box strong { color: var(--text-primary); }
- /* ── Contact card ────────────────────────────────────────────────── */
- .contact-card {
- background: var(--bg-1); border: 1px solid var(--border);
- border-radius: var(--radius-lg); padding: 28px 32px;
- display: flex; align-items: center; justify-content: space-between;
- gap: 20px; flex-wrap: wrap; margin-top: 48px;
- }
- .contact-card h3 {
- font-family: var(--serif); font-size: 1.1rem; font-weight: 400;
- margin-bottom: 6px;
- }
- .contact-card p { color: var(--text-secondary); font-size: 0.85rem; margin: 0; }
- .btn {
- display: inline-flex; align-items: center; gap: 7px;
- padding: 10px 20px; border-radius: var(--radius);
- font-family: var(--sans); font-size: 0.85rem; font-weight: 500;
- cursor: pointer; transition: all var(--transition); text-decoration: none;
- }
- .btn-outline {
- background: transparent; color: var(--text-secondary);
- border: 1px solid var(--border-hover);
- }
- .btn-outline:hover { border-color: var(--accent); color: var(--accent); opacity: 1; }
- /* ── Footer ──────────────────────────────────────────────────────── */
- .site-footer { border-top: 1px solid var(--border); padding: 28px 0; }
- .footer-inner {
- max-width: 900px; margin: 0 auto; padding: 0 24px;
- display: flex; flex-wrap: wrap; align-items: center;
- justify-content: space-between; gap: 16px;
- }
- .footer-copy { font-size: 0.8rem; color: var(--text-muted); }
- .footer-links { display: flex; align-items: center; gap: 20px; }
- .footer-links a {
- font-size: 0.8rem; color: var(--text-muted); text-decoration: none;
- transition: color var(--transition);
- }
- .footer-links a:hover { color: var(--text-secondary); opacity: 1; }
- ::-webkit-scrollbar { width: 5px; }
- ::-webkit-scrollbar-track { background: transparent; }
- ::-webkit-scrollbar-thumb { background: var(--border-hover); border-radius: 3px; }
- </style>
- <!-- Google tag (gtag.js) -->
- <script async src="https://www.googletagmanager.com/gtag/js?id=G-LWEHQVCWEZ"></script>
- <script>
- window.dataLayer = window.dataLayer || [];
- function gtag(){dataLayer.push(arguments);}
- gtag('js', new Date());
- gtag('config', 'G-LWEHQVCWEZ');
- </script>
-
- <!-- Google Tag Manager -->
- <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
- new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
- j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
- 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
- })(window,document,'script','dataLayer','GTM-M5PFLGZT');</script>
- <!-- End Google Tag Manager -->
- </head>
- <body>
- <!-- Google Tag Manager (noscript) -->
- <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M5PFLGZT"
- height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
- <!-- End Google Tag Manager (noscript) -->
- <!-- ── Nav ──────────────────────────────────────────────────────────── -->
- <nav class="site-nav">
- <div class="nav-inner">
- <a class="nav-brand" href="/">
- <svg width="22" height="22" viewBox="0 0 28 28" fill="none">
- <rect width="28" height="28" rx="6" fill="var(--accent-dim)" stroke="rgba(45,220,138,0.25)" stroke-width="1"/>
- <path d="M8 20 L14 8 L20 20" stroke="var(--accent)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
- <path d="M10.5 16 L17.5 16" stroke="var(--accent)" stroke-width="1.5" stroke-linecap="round"/>
- </svg>
- Tasmanian Planning Scheme
- </a>
- <div class="nav-links">
- <a href="/">Home</a>
- <a href="/terms" class="active">Terms</a>
- <a href="/privacy">Privacy</a>
- </div>
- </div>
- </nav>
- <!-- ── Content ───────────────────────────────────────────────────────── -->
- <div class="page-wrap">
- <!-- Header -->
- <div class="page-header">
- <div class="page-eyebrow">Legal</div>
- <h1>Terms <em>of Use</em></h1>
- <div class="page-meta">
- <span class="meta-chip"><i class="bi bi-calendar3"></i> Last updated: 19 September 2025</span>
- <span class="meta-chip"><i class="bi bi-geo-alt"></i> Governed by Tasmanian law</span>
- </div>
- </div>
- <!-- Disclaimer banner -->
- <div class="disclaimer-banner">
- <i class="bi bi-exclamation-triangle"></i>
- <p>
- <strong>Not professional advice.</strong> The Tasmanian Planning Scheme Assistant
- is an information aid only. It does not constitute legal, planning, surveying, or
- professional advice and must not be relied upon as a substitute for reading the
- applicable instruments or obtaining advice from qualified professionals.
- </p>
- </div>
- <!-- Table of contents -->
- <div class="toc">
- <span class="toc-label">Contents</span>
- <ol>
- <li><a href="#who">Who we are</a></li>
- <li><a href="#service">What the Service does (and doesn't)</a></li>
- <li><a href="#byok">Bring your own API key (BYOK)</a></li>
- <li><a href="#responsibilities">Your responsibilities</a></li>
- <li><a href="#ip">Intellectual property</a></li>
- <li><a href="#third-party">Third-party sources & links</a></li>
- <li><a href="#changes">Changes, availability, and updates</a></li>
- <li><a href="#disclaimer">Disclaimer & limitation of liability</a></li>
- <li><a href="#acl">Australian Consumer Law</a></li>
- <li><a href="#indemnity">Indemnity</a></li>
- <li><a href="#privacy">Privacy</a></li>
- <li><a href="#governing">Governing law</a></li>
- <li><a href="#contact">Contact</a></li>
- </ol>
- </div>
- <!-- Sections -->
- <div class="policy-section">
- <h2 id="who" class="section-anchor"><span class="section-num">1</span> Who we are</h2>
- <p>
- These Terms of Use ("Terms") govern your access to and use of the Tasmanian Planning
- Scheme Assistant (the "Service"). By accessing or using the Service, you agree to be
- bound by these Terms. If you do not agree, do not use the Service.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="service" class="section-anchor"><span class="section-num">2</span> What the Service does (and doesn't)</h2>
- <p>
- The Service helps you find and summarise publicly available planning information,
- including State Planning Provisions (SPPs) and Local Provisions Schedules (LPS).
- It uses retrieval-augmented generation (RAG) to match your questions against
- Tasmanian Planning Scheme documents and generate cited responses.
- </p>
- <p>
- The Service is an information aid only. It does not constitute legal, planning,
- surveying, or professional advice, and must not be relied upon as a substitute for
- reading the applicable instruments or obtaining advice from qualified professionals.
- Always verify outputs against the official TPSO viewer and your council's LPS.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="byok" class="section-anchor"><span class="section-num">3</span> Bring your own API key (BYOK)</h2>
- <p>
- The Service optionally allows you to use your own API key from a third-party LLM
- provider (such as Anthropic, OpenAI, or xAI). When you use this feature:
- </p>
- <ul>
- <li>Your API key is stored only in your browser's local storage and is never transmitted to our servers.</li>
- <li>Your query and the retrieved planning context are sent directly from your browser to your chosen provider.</li>
- <li>You are solely responsible for any costs, usage limits, and terms of service imposed by your chosen provider.</li>
- <li>We are not responsible for the outputs generated by third-party LLM providers when accessed via BYOK.</li>
- </ul>
- </div>
- <div class="policy-section">
- <h2 id="responsibilities" class="section-anchor"><span class="section-num">4</span> Your responsibilities</h2>
- <ul>
- <li>You are responsible for verifying all results against official sources before relying on them.</li>
- <li>You must use the Service lawfully and not attempt to disrupt, reverse-engineer, or abuse it.</li>
- <li>You must not use the Service to generate or transmit unlawful, infringing, or harmful content.</li>
- <li>You must not attempt to extract, scrape, or systematically copy the planning data retrieved by the Service.</li>
- <li>You must not use automated tools to send queries at volumes that would harm the Service for other users.</li>
- </ul>
- </div>
- <div class="policy-section">
- <h2 id="ip" class="section-anchor"><span class="section-num">5</span> Intellectual property</h2>
- <p>
- We (and our licensors) own the Service, including all software, models, design elements,
- and original text, except where third-party materials are used under licence. Planning
- scheme documents (SPPs, LPS) are published by the Tasmanian Government and remain subject
- to their respective licences.
- </p>
- <p>
- You may not copy, modify, or create derivative works of the Service except as permitted
- by law or with our written permission. Nothing in these Terms transfers any intellectual
- property rights to you.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="third-party" class="section-anchor"><span class="section-num">6</span> Third-party sources & links</h2>
- <p>
- The Service may link to or quote third-party materials including Tasmanian Planning Scheme
- Online (TPSO), council websites, and Australian Standards references. Those materials are
- the responsibility of their respective owners and may change without notice. We are not
- responsible for their accuracy, currency, or availability.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="changes" class="section-anchor"><span class="section-num">7</span> Changes, availability, and updates</h2>
- <p>
- We may change or discontinue any part of the Service at any time without notice. We may
- update these Terms by posting a revised version with a new "Last updated" date. Your
- continued use after changes are posted means you accept the updated Terms.
- </p>
- <p>
- We do not guarantee that the Service will be available at all times, error-free, or that
- planning scheme content will be current. Planning schemes are amended regularly — always
- check the official TPSO viewer for the most recent version of any provision.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="disclaimer" class="section-anchor"><span class="section-num">8</span> Disclaimer & limitation of liability</h2>
- <p>
- To the maximum extent permitted by law, the Service is provided "as is" and "as available".
- We exclude all warranties, representations, and guarantees (whether express, implied, or
- statutory) except those that cannot be excluded under the Australian Consumer Law ("ACL").
- </p>
- <p>
- To the extent permitted by law, we are not liable for any loss of profits, loss of data,
- indirect, incidental, special, or consequential loss arising from your use of or reliance
- on the Service, including any planning decisions made based on outputs from the Service.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="acl" class="section-anchor"><span class="section-num">9</span> Australian Consumer Law</h2>
- <div class="highlight-box">
- <p>
- Nothing in these Terms excludes, restricts, or modifies any consumer guarantee, right,
- or remedy under the <strong>Australian Consumer Law</strong> that cannot lawfully be excluded.
- Where our liability cannot be excluded but can be limited, it is limited (at our option)
- to resupplying the services or paying the cost of having the services resupplied.
- </p>
- </div>
- </div>
- <div class="policy-section">
- <h2 id="indemnity" class="section-anchor"><span class="section-num">10</span> Indemnity</h2>
- <p>
- You indemnify us against all claims, losses, costs, and expenses (including reasonable
- legal costs) arising from your misuse of the Service, your breach of these Terms, or
- your infringement of any third-party rights.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="privacy" class="section-anchor"><span class="section-num">11</span> Privacy</h2>
- <p>
- Our <a href="/privacy">Privacy Policy</a> explains how we collect, use, and disclose
- personal information, including how query data, API keys, and analytics are handled.
- By using the Service you also agree to the Privacy Policy.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="governing" class="section-anchor"><span class="section-num">12</span> Governing law</h2>
- <p>
- These Terms are governed by the laws of Tasmania, Australia. You submit to the exclusive
- jurisdiction of the courts of Tasmania and the Commonwealth of Australia for any dispute
- arising out of or in connection with these Terms or the Service.
- </p>
- </div>
- <div class="policy-section">
- <h2 id="contact" class="section-anchor"><span class="section-num">13</span> Contact</h2>
- <p>
- If you have questions about these Terms, or wish to report a concern, please contact us
- using the details below.
- </p>
- </div>
- <!-- Contact card -->
- <div class="contact-card">
- <div>
- <h3>Questions about these Terms?</h3>
- <p>We're happy to clarify anything. Get in touch directly.</p>
- </div>
- <a href="mailto:legal@tasplanning.report" class="btn btn-outline">
- <i class="bi bi-envelope"></i> legal@tasplanning.report
- </a>
- </div>
- </div>
- <!-- ── Footer ────────────────────────────────────────────────────────── -->
- <footer class="site-footer">
- <div class="footer-inner">
- <div class="footer-copy">© <span id="y"></span> Tasmanian Planning Scheme Assistant</div>
- <div class="footer-links">
- <a href="/">Home</a>
- <a href="/terms">Terms</a>
- <a href="/privacy">Privacy</a>
- <a href="/faq">FAQ</a>
- </div>
- </div>
- </footer>
- <script>
- document.getElementById('y').textContent = new Date().getFullYear();
- </script>
- </body>
- </html>
|