Instantly share code, notes, and snippets.
Created
February 21, 2026 06:14
-
Star
0
(0)
You must be signed in to star a gist -
Fork
0
(0)
You must be signed in to fork a gist
-
-
Save davekennewell/4a85cddfe342dad8b272f93538a5e3a0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Hydrata — Trusted Infrastructure for Water Resource Management</title> | |
| <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=Source+Sans+3:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600;8..60,700&display=swap" rel="stylesheet"> | |
| <style> | |
| *, *::before, *::after { | |
| box-sizing: border-box; | |
| margin: 0; | |
| padding: 0; | |
| } | |
| :root { | |
| --navy: #1a365d; | |
| --navy-deep: #0f2440; | |
| --navy-light: #2a4a7f; | |
| --slate-900: #1e293b; | |
| --slate-700: #334155; | |
| --slate-600: #475569; | |
| --slate-500: #64748b; | |
| --slate-400: #94a3b8; | |
| --slate-300: #cbd5e1; | |
| --slate-200: #e2e8f0; | |
| --slate-100: #f1f5f9; | |
| --slate-50: #f8fafc; | |
| --white: #ffffff; | |
| --gold: #b8860b; | |
| --gold-light: #d4a017; | |
| --teal: #0d9488; | |
| --teal-light: #14b8a6; | |
| --blue-accent: #3b82f6; | |
| --font-sans: 'Source Sans 3', 'Segoe UI', system-ui, -apple-system, sans-serif; | |
| --font-serif: 'Source Serif 4', Georgia, 'Times New Roman', serif; | |
| } | |
| html { | |
| scroll-behavior: smooth; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| body { | |
| font-family: var(--font-sans); | |
| color: var(--slate-700); | |
| background: var(--white); | |
| line-height: 1.6; | |
| font-size: 16px; | |
| } | |
| /* ── Navigation ── */ | |
| .nav { | |
| position: fixed; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| z-index: 1000; | |
| background: rgba(255, 255, 255, 0.97); | |
| border-bottom: 1px solid var(--slate-200); | |
| backdrop-filter: blur(8px); | |
| -webkit-backdrop-filter: blur(8px); | |
| } | |
| .nav-inner { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| padding: 0 2rem; | |
| display: flex; | |
| align-items: center; | |
| justify-content: space-between; | |
| height: 72px; | |
| } | |
| .nav-logo { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.625rem; | |
| text-decoration: none; | |
| color: var(--navy); | |
| } | |
| .nav-logo-icon { | |
| width: 36px; | |
| height: 36px; | |
| flex-shrink: 0; | |
| } | |
| .nav-logo-text { | |
| font-family: var(--font-serif); | |
| font-size: 1.5rem; | |
| font-weight: 700; | |
| letter-spacing: -0.02em; | |
| color: var(--navy); | |
| } | |
| .nav-links { | |
| display: flex; | |
| align-items: center; | |
| gap: 2rem; | |
| list-style: none; | |
| } | |
| .nav-links a { | |
| text-decoration: none; | |
| color: var(--slate-600); | |
| font-size: 0.9375rem; | |
| font-weight: 500; | |
| transition: color 0.2s; | |
| letter-spacing: 0.01em; | |
| } | |
| .nav-links a:hover { | |
| color: var(--navy); | |
| } | |
| .nav-cta { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.375rem; | |
| padding: 0.5rem 1.25rem; | |
| background: var(--navy); | |
| color: var(--white) !important; | |
| border-radius: 6px; | |
| font-weight: 600; | |
| font-size: 0.875rem; | |
| letter-spacing: 0.02em; | |
| transition: background 0.2s; | |
| } | |
| .nav-cta:hover { | |
| background: var(--navy-light) !important; | |
| color: var(--white) !important; | |
| } | |
| .nav-mobile-toggle { | |
| display: none; | |
| background: none; | |
| border: none; | |
| cursor: pointer; | |
| padding: 0.5rem; | |
| color: var(--navy); | |
| } | |
| .nav-mobile-toggle svg { | |
| width: 24px; | |
| height: 24px; | |
| } | |
| /* ── Hero ── */ | |
| .hero { | |
| position: relative; | |
| padding: 10rem 2rem 6rem; | |
| background: linear-gradient(165deg, #f0f4f8 0%, #dce4ee 30%, #c7d5e8 60%, #b0c4de 100%); | |
| overflow: hidden; | |
| } | |
| .hero::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| bottom: 0; | |
| background: | |
| radial-gradient(ellipse 80% 60% at 20% 80%, rgba(26, 54, 93, 0.06) 0%, transparent 70%), | |
| radial-gradient(ellipse 60% 50% at 80% 20%, rgba(13, 148, 136, 0.04) 0%, transparent 60%); | |
| pointer-events: none; | |
| } | |
| .hero::after { | |
| content: ''; | |
| position: absolute; | |
| bottom: 0; | |
| left: 0; | |
| right: 0; | |
| height: 1px; | |
| background: linear-gradient(90deg, transparent, var(--slate-300), transparent); | |
| } | |
| .hero-grid-bg { | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| bottom: 0; | |
| background-image: | |
| linear-gradient(rgba(26, 54, 93, 0.03) 1px, transparent 1px), | |
| linear-gradient(90deg, rgba(26, 54, 93, 0.03) 1px, transparent 1px); | |
| background-size: 60px 60px; | |
| pointer-events: none; | |
| } | |
| .hero-inner { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| position: relative; | |
| z-index: 1; | |
| } | |
| .hero-eyebrow { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.375rem 1rem 0.375rem 0.75rem; | |
| background: rgba(26, 54, 93, 0.08); | |
| border: 1px solid rgba(26, 54, 93, 0.12); | |
| border-radius: 100px; | |
| font-size: 0.8125rem; | |
| font-weight: 600; | |
| color: var(--navy); | |
| letter-spacing: 0.04em; | |
| text-transform: uppercase; | |
| margin-bottom: 1.75rem; | |
| } | |
| .hero-eyebrow-dot { | |
| width: 6px; | |
| height: 6px; | |
| background: var(--teal); | |
| border-radius: 50%; | |
| flex-shrink: 0; | |
| } | |
| .hero h1 { | |
| font-family: var(--font-serif); | |
| font-size: clamp(2.5rem, 5vw, 3.75rem); | |
| font-weight: 700; | |
| color: var(--navy-deep); | |
| line-height: 1.15; | |
| letter-spacing: -0.025em; | |
| max-width: 780px; | |
| margin-bottom: 1.5rem; | |
| } | |
| .hero-sub { | |
| font-size: clamp(1.0625rem, 2vw, 1.25rem); | |
| color: var(--slate-600); | |
| max-width: 620px; | |
| line-height: 1.7; | |
| margin-bottom: 2.5rem; | |
| font-weight: 400; | |
| } | |
| .hero-actions { | |
| display: flex; | |
| gap: 1rem; | |
| flex-wrap: wrap; | |
| align-items: center; | |
| } | |
| .btn-primary { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.875rem 2rem; | |
| background: var(--navy); | |
| color: var(--white); | |
| text-decoration: none; | |
| border-radius: 8px; | |
| font-weight: 600; | |
| font-size: 1rem; | |
| letter-spacing: 0.01em; | |
| transition: all 0.2s; | |
| border: 2px solid var(--navy); | |
| } | |
| .btn-primary:hover { | |
| background: var(--navy-light); | |
| border-color: var(--navy-light); | |
| transform: translateY(-1px); | |
| box-shadow: 0 4px 12px rgba(26, 54, 93, 0.25); | |
| } | |
| .btn-secondary { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.875rem 2rem; | |
| background: transparent; | |
| color: var(--navy); | |
| text-decoration: none; | |
| border-radius: 8px; | |
| font-weight: 600; | |
| font-size: 1rem; | |
| letter-spacing: 0.01em; | |
| transition: all 0.2s; | |
| border: 2px solid var(--slate-300); | |
| } | |
| .btn-secondary:hover { | |
| border-color: var(--navy); | |
| background: rgba(26, 54, 93, 0.04); | |
| } | |
| .btn-arrow { | |
| font-size: 1.125rem; | |
| transition: transform 0.2s; | |
| } | |
| .btn-primary:hover .btn-arrow, | |
| .btn-secondary:hover .btn-arrow { | |
| transform: translateX(2px); | |
| } | |
| .hero-trust-line { | |
| margin-top: 3.5rem; | |
| padding-top: 2rem; | |
| border-top: 1px solid rgba(26, 54, 93, 0.1); | |
| display: flex; | |
| align-items: center; | |
| gap: 2rem; | |
| flex-wrap: wrap; | |
| } | |
| .hero-trust-label { | |
| font-size: 0.75rem; | |
| font-weight: 600; | |
| color: var(--slate-500); | |
| letter-spacing: 0.08em; | |
| text-transform: uppercase; | |
| white-space: nowrap; | |
| } | |
| .hero-trust-logos { | |
| display: flex; | |
| align-items: center; | |
| gap: 2rem; | |
| flex-wrap: wrap; | |
| } | |
| .hero-trust-logos span { | |
| font-size: 0.8125rem; | |
| font-weight: 500; | |
| color: var(--slate-500); | |
| white-space: nowrap; | |
| display: flex; | |
| align-items: center; | |
| gap: 0.375rem; | |
| } | |
| .hero-trust-logos span svg { | |
| width: 16px; | |
| height: 16px; | |
| opacity: 0.6; | |
| } | |
| /* ── Stats Bar ── */ | |
| .stats-bar { | |
| background: var(--navy-deep); | |
| padding: 0; | |
| position: relative; | |
| } | |
| .stats-bar::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| height: 3px; | |
| background: linear-gradient(90deg, var(--teal), var(--gold-light), var(--teal)); | |
| } | |
| .stats-inner { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| display: grid; | |
| grid-template-columns: repeat(4, 1fr); | |
| } | |
| .stat-item { | |
| text-align: center; | |
| padding: 2.5rem 1.5rem; | |
| position: relative; | |
| } | |
| .stat-item:not(:last-child)::after { | |
| content: ''; | |
| position: absolute; | |
| right: 0; | |
| top: 25%; | |
| height: 50%; | |
| width: 1px; | |
| background: rgba(255, 255, 255, 0.12); | |
| } | |
| .stat-number { | |
| font-family: var(--font-serif); | |
| font-size: clamp(2rem, 4vw, 2.75rem); | |
| font-weight: 700; | |
| color: var(--white); | |
| line-height: 1.1; | |
| margin-bottom: 0.375rem; | |
| } | |
| .stat-label { | |
| font-size: 0.8125rem; | |
| font-weight: 500; | |
| color: rgba(255, 255, 255, 0.6); | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| } | |
| /* ── Section Shared ── */ | |
| .section { | |
| padding: 6rem 2rem; | |
| } | |
| .section-alt { | |
| background: var(--slate-50); | |
| } | |
| .section-header { | |
| max-width: 680px; | |
| margin: 0 auto 4rem; | |
| text-align: center; | |
| } | |
| .section-eyebrow { | |
| display: inline-block; | |
| font-size: 0.75rem; | |
| font-weight: 700; | |
| color: var(--teal); | |
| letter-spacing: 0.1em; | |
| text-transform: uppercase; | |
| margin-bottom: 1rem; | |
| } | |
| .section-title { | |
| font-family: var(--font-serif); | |
| font-size: clamp(1.75rem, 3.5vw, 2.5rem); | |
| font-weight: 700; | |
| color: var(--navy-deep); | |
| line-height: 1.2; | |
| letter-spacing: -0.02em; | |
| margin-bottom: 1rem; | |
| } | |
| .section-desc { | |
| font-size: 1.0625rem; | |
| color: var(--slate-500); | |
| line-height: 1.7; | |
| } | |
| /* ── Case Studies ── */ | |
| .cases-grid { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| display: grid; | |
| grid-template-columns: repeat(3, 1fr); | |
| gap: 2rem; | |
| } | |
| .case-card { | |
| background: var(--white); | |
| border-radius: 12px; | |
| overflow: hidden; | |
| border: 1px solid var(--slate-200); | |
| transition: all 0.3s; | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| .case-card:hover { | |
| border-color: var(--slate-300); | |
| box-shadow: 0 8px 30px rgba(26, 54, 93, 0.08); | |
| transform: translateY(-2px); | |
| } | |
| .case-card-accent { | |
| height: 4px; | |
| width: 100%; | |
| } | |
| .case-card:nth-child(1) .case-card-accent { background: linear-gradient(90deg, var(--teal), #0ea5e9); } | |
| .case-card:nth-child(2) .case-card-accent { background: linear-gradient(90deg, var(--gold), var(--gold-light)); } | |
| .case-card:nth-child(3) .case-card-accent { background: linear-gradient(90deg, var(--blue-accent), #6366f1); } | |
| .case-card-body { | |
| padding: 2rem; | |
| flex: 1; | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| .case-card-location { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.375rem; | |
| font-size: 0.75rem; | |
| font-weight: 600; | |
| color: var(--slate-500); | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| margin-bottom: 0.75rem; | |
| } | |
| .case-card-location svg { | |
| width: 14px; | |
| height: 14px; | |
| color: var(--slate-400); | |
| } | |
| .case-card h3 { | |
| font-family: var(--font-serif); | |
| font-size: 1.375rem; | |
| font-weight: 700; | |
| color: var(--navy-deep); | |
| line-height: 1.3; | |
| margin-bottom: 0.75rem; | |
| letter-spacing: -0.01em; | |
| } | |
| .case-card p { | |
| font-size: 0.9375rem; | |
| color: var(--slate-600); | |
| line-height: 1.65; | |
| flex: 1; | |
| margin-bottom: 1.5rem; | |
| } | |
| .case-card-tags { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 0.5rem; | |
| margin-bottom: 1.25rem; | |
| } | |
| .case-card-tag { | |
| font-size: 0.6875rem; | |
| font-weight: 600; | |
| color: var(--slate-500); | |
| background: var(--slate-100); | |
| padding: 0.25rem 0.625rem; | |
| border-radius: 100px; | |
| letter-spacing: 0.03em; | |
| text-transform: uppercase; | |
| } | |
| .case-card-link { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.375rem; | |
| font-size: 0.875rem; | |
| font-weight: 600; | |
| color: var(--navy); | |
| text-decoration: none; | |
| transition: gap 0.2s; | |
| } | |
| .case-card-link:hover { | |
| gap: 0.625rem; | |
| color: var(--navy-light); | |
| } | |
| .case-card-link svg { | |
| width: 16px; | |
| height: 16px; | |
| } | |
| /* ── Open Standards ── */ | |
| .standards-content { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| display: grid; | |
| grid-template-columns: 1fr 1fr; | |
| gap: 4rem; | |
| align-items: center; | |
| } | |
| .standards-text h3 { | |
| font-family: var(--font-serif); | |
| font-size: 1.75rem; | |
| font-weight: 700; | |
| color: var(--navy-deep); | |
| line-height: 1.3; | |
| margin-bottom: 1.25rem; | |
| letter-spacing: -0.01em; | |
| } | |
| .standards-text > p { | |
| font-size: 1.0625rem; | |
| color: var(--slate-600); | |
| line-height: 1.7; | |
| margin-bottom: 2rem; | |
| } | |
| .standards-list { | |
| list-style: none; | |
| display: flex; | |
| flex-direction: column; | |
| gap: 1.25rem; | |
| } | |
| .standards-list li { | |
| display: flex; | |
| gap: 1rem; | |
| align-items: flex-start; | |
| } | |
| .standards-icon { | |
| width: 40px; | |
| height: 40px; | |
| background: rgba(13, 148, 136, 0.08); | |
| border-radius: 10px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| flex-shrink: 0; | |
| color: var(--teal); | |
| } | |
| .standards-icon svg { | |
| width: 20px; | |
| height: 20px; | |
| } | |
| .standards-list li strong { | |
| display: block; | |
| font-size: 0.9375rem; | |
| font-weight: 600; | |
| color: var(--navy-deep); | |
| margin-bottom: 0.125rem; | |
| } | |
| .standards-list li span { | |
| font-size: 0.875rem; | |
| color: var(--slate-500); | |
| line-height: 1.5; | |
| } | |
| .standards-visual { | |
| position: relative; | |
| } | |
| .standards-diagram { | |
| background: linear-gradient(135deg, var(--slate-50), var(--white)); | |
| border: 1px solid var(--slate-200); | |
| border-radius: 16px; | |
| padding: 3rem 2rem; | |
| text-align: center; | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .standards-diagram::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| bottom: 0; | |
| background-image: | |
| radial-gradient(circle at 2px 2px, var(--slate-200) 1px, transparent 0); | |
| background-size: 24px 24px; | |
| opacity: 0.5; | |
| pointer-events: none; | |
| } | |
| .standards-diagram-inner { | |
| position: relative; | |
| z-index: 1; | |
| } | |
| .standards-diagram-center { | |
| width: 120px; | |
| height: 120px; | |
| margin: 0 auto 2rem; | |
| background: var(--navy); | |
| border-radius: 50%; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| box-shadow: 0 0 0 12px rgba(26, 54, 93, 0.08), 0 0 0 24px rgba(26, 54, 93, 0.04); | |
| } | |
| .standards-diagram-center span { | |
| color: var(--white); | |
| font-family: var(--font-serif); | |
| font-size: 1.25rem; | |
| font-weight: 700; | |
| letter-spacing: -0.01em; | |
| } | |
| .standards-orbit { | |
| display: flex; | |
| justify-content: center; | |
| gap: 1rem; | |
| flex-wrap: wrap; | |
| } | |
| .standards-orbit-item { | |
| background: var(--white); | |
| border: 1px solid var(--slate-200); | |
| padding: 0.625rem 1rem; | |
| border-radius: 8px; | |
| font-size: 0.8125rem; | |
| font-weight: 600; | |
| color: var(--slate-600); | |
| letter-spacing: 0.02em; | |
| box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04); | |
| } | |
| /* ── Enterprise Features ── */ | |
| .features-grid { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| display: grid; | |
| grid-template-columns: repeat(4, 1fr); | |
| gap: 2rem; | |
| } | |
| .feature-card { | |
| background: var(--white); | |
| border: 1px solid var(--slate-200); | |
| border-radius: 12px; | |
| padding: 2rem; | |
| transition: all 0.3s; | |
| } | |
| .feature-card:hover { | |
| border-color: var(--slate-300); | |
| box-shadow: 0 4px 20px rgba(26, 54, 93, 0.06); | |
| } | |
| .feature-icon { | |
| width: 48px; | |
| height: 48px; | |
| background: var(--slate-50); | |
| border: 1px solid var(--slate-200); | |
| border-radius: 12px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| margin-bottom: 1.25rem; | |
| color: var(--navy); | |
| } | |
| .feature-icon svg { | |
| width: 24px; | |
| height: 24px; | |
| } | |
| .feature-card h3 { | |
| font-size: 1rem; | |
| font-weight: 700; | |
| color: var(--navy-deep); | |
| margin-bottom: 0.5rem; | |
| letter-spacing: -0.01em; | |
| } | |
| .feature-card p { | |
| font-size: 0.875rem; | |
| color: var(--slate-500); | |
| line-height: 1.6; | |
| } | |
| /* ── CTA ── */ | |
| .cta-section { | |
| padding: 6rem 2rem; | |
| background: var(--navy-deep); | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .cta-section::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| bottom: 0; | |
| background: | |
| radial-gradient(ellipse 60% 80% at 70% 50%, rgba(13, 148, 136, 0.08) 0%, transparent 60%), | |
| radial-gradient(ellipse 50% 70% at 20% 60%, rgba(59, 130, 246, 0.06) 0%, transparent 60%); | |
| pointer-events: none; | |
| } | |
| .cta-section::after { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| height: 1px; | |
| background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent); | |
| } | |
| .cta-inner { | |
| max-width: 720px; | |
| margin: 0 auto; | |
| text-align: center; | |
| position: relative; | |
| z-index: 1; | |
| } | |
| .cta-inner .section-eyebrow { | |
| color: var(--teal-light); | |
| } | |
| .cta-inner h2 { | |
| font-family: var(--font-serif); | |
| font-size: clamp(1.75rem, 3.5vw, 2.5rem); | |
| font-weight: 700; | |
| color: var(--white); | |
| line-height: 1.2; | |
| letter-spacing: -0.02em; | |
| margin-bottom: 1.25rem; | |
| } | |
| .cta-inner p { | |
| font-size: 1.0625rem; | |
| color: rgba(255, 255, 255, 0.65); | |
| line-height: 1.7; | |
| margin-bottom: 2.5rem; | |
| } | |
| .cta-actions { | |
| display: flex; | |
| gap: 1rem; | |
| justify-content: center; | |
| flex-wrap: wrap; | |
| } | |
| .btn-cta-primary { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.9375rem 2.25rem; | |
| background: var(--white); | |
| color: var(--navy-deep); | |
| text-decoration: none; | |
| border-radius: 8px; | |
| font-weight: 700; | |
| font-size: 1rem; | |
| letter-spacing: 0.01em; | |
| transition: all 0.2s; | |
| border: 2px solid var(--white); | |
| } | |
| .btn-cta-primary:hover { | |
| background: var(--slate-100); | |
| transform: translateY(-1px); | |
| box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2); | |
| } | |
| .btn-cta-secondary { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.9375rem 2.25rem; | |
| background: transparent; | |
| color: var(--white); | |
| text-decoration: none; | |
| border-radius: 8px; | |
| font-weight: 600; | |
| font-size: 1rem; | |
| letter-spacing: 0.01em; | |
| transition: all 0.2s; | |
| border: 2px solid rgba(255, 255, 255, 0.25); | |
| } | |
| .btn-cta-secondary:hover { | |
| border-color: rgba(255, 255, 255, 0.5); | |
| background: rgba(255, 255, 255, 0.05); | |
| } | |
| /* ── Footer ── */ | |
| .footer { | |
| background: var(--slate-900); | |
| padding: 4rem 2rem 2rem; | |
| border-top: 1px solid rgba(255, 255, 255, 0.06); | |
| } | |
| .footer-inner { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| } | |
| .footer-top { | |
| display: grid; | |
| grid-template-columns: 2fr 1fr 1fr 1fr; | |
| gap: 3rem; | |
| padding-bottom: 3rem; | |
| border-bottom: 1px solid rgba(255, 255, 255, 0.08); | |
| } | |
| .footer-brand .nav-logo-text { | |
| color: var(--white); | |
| margin-bottom: 1rem; | |
| display: block; | |
| } | |
| .footer-brand p { | |
| font-size: 0.875rem; | |
| color: rgba(255, 255, 255, 0.45); | |
| line-height: 1.65; | |
| max-width: 300px; | |
| } | |
| .footer-col h4 { | |
| font-size: 0.6875rem; | |
| font-weight: 700; | |
| color: rgba(255, 255, 255, 0.5); | |
| letter-spacing: 0.1em; | |
| text-transform: uppercase; | |
| margin-bottom: 1.25rem; | |
| } | |
| .footer-col ul { | |
| list-style: none; | |
| } | |
| .footer-col ul li { | |
| margin-bottom: 0.625rem; | |
| } | |
| .footer-col ul a { | |
| font-size: 0.875rem; | |
| color: rgba(255, 255, 255, 0.5); | |
| text-decoration: none; | |
| transition: color 0.2s; | |
| } | |
| .footer-col ul a:hover { | |
| color: rgba(255, 255, 255, 0.85); | |
| } | |
| .footer-bottom { | |
| padding-top: 2rem; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| flex-wrap: wrap; | |
| gap: 1rem; | |
| } | |
| .footer-bottom p { | |
| font-size: 0.8125rem; | |
| color: rgba(255, 255, 255, 0.3); | |
| } | |
| .footer-legal { | |
| display: flex; | |
| gap: 1.5rem; | |
| } | |
| .footer-legal a { | |
| font-size: 0.8125rem; | |
| color: rgba(255, 255, 255, 0.3); | |
| text-decoration: none; | |
| transition: color 0.2s; | |
| } | |
| .footer-legal a:hover { | |
| color: rgba(255, 255, 255, 0.6); | |
| } | |
| /* ── Mobile ── */ | |
| @media (max-width: 1024px) { | |
| .features-grid { | |
| grid-template-columns: repeat(2, 1fr); | |
| } | |
| .standards-content { | |
| grid-template-columns: 1fr; | |
| gap: 3rem; | |
| } | |
| .footer-top { | |
| grid-template-columns: 1fr 1fr; | |
| gap: 2rem; | |
| } | |
| } | |
| @media (max-width: 768px) { | |
| .nav-links { | |
| display: none; | |
| } | |
| .nav-mobile-toggle { | |
| display: block; | |
| } | |
| .hero { | |
| padding: 8rem 1.5rem 4rem; | |
| } | |
| .stats-inner { | |
| grid-template-columns: repeat(2, 1fr); | |
| } | |
| .stat-item:nth-child(2)::after { | |
| display: none; | |
| } | |
| .stat-item { | |
| padding: 1.75rem 1rem; | |
| } | |
| .cases-grid { | |
| grid-template-columns: 1fr; | |
| max-width: 480px; | |
| } | |
| .features-grid { | |
| grid-template-columns: 1fr; | |
| max-width: 480px; | |
| margin: 0 auto; | |
| } | |
| .section { | |
| padding: 4rem 1.5rem; | |
| } | |
| .cta-section { | |
| padding: 4rem 1.5rem; | |
| } | |
| .hero-trust-line { | |
| flex-direction: column; | |
| align-items: flex-start; | |
| gap: 1rem; | |
| } | |
| .footer-top { | |
| grid-template-columns: 1fr; | |
| } | |
| .footer-bottom { | |
| flex-direction: column; | |
| text-align: center; | |
| } | |
| } | |
| @media (max-width: 480px) { | |
| .stats-inner { | |
| grid-template-columns: 1fr 1fr; | |
| } | |
| .stat-item::after { | |
| display: none; | |
| } | |
| .hero-actions { | |
| flex-direction: column; | |
| align-items: stretch; | |
| } | |
| .btn-primary, .btn-secondary { | |
| justify-content: center; | |
| } | |
| .cta-actions { | |
| flex-direction: column; | |
| align-items: stretch; | |
| } | |
| .btn-cta-primary, .btn-cta-secondary { | |
| justify-content: center; | |
| } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <!-- ── Navigation ── --> | |
| <nav class="nav"> | |
| <div class="nav-inner"> | |
| <a href="/" class="nav-logo"> | |
| <svg class="nav-logo-icon" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg"> | |
| <rect width="36" height="36" rx="8" fill="#1a365d"/> | |
| <path d="M8 24 C10 16, 14 12, 18 18 C22 24, 26 14, 28 12" stroke="#14b8a6" stroke-width="2.5" stroke-linecap="round" fill="none"/> | |
| <path d="M8 20 C12 22, 16 17, 20 20 C24 23, 26 18, 28 17" stroke="rgba(255,255,255,0.4)" stroke-width="1.5" stroke-linecap="round" fill="none"/> | |
| <circle cx="18" cy="18" r="2" fill="white" opacity="0.9"/> | |
| </svg> | |
| <span class="nav-logo-text">Hydrata</span> | |
| </a> | |
| <ul class="nav-links"> | |
| <li><a href="#case-studies">Case Studies</a></li> | |
| <li><a href="#standards">Technology</a></li> | |
| <li><a href="#features">Features</a></li> | |
| <li><a href="/catalogue/#/?f=map">Data Catalogue</a></li> | |
| <li><a href="#contact" class="nav-cta">Request Demo <span class="btn-arrow">→</span></a></li> | |
| </ul> | |
| <button class="nav-mobile-toggle" onclick="document.querySelector('.nav-links').style.display = document.querySelector('.nav-links').style.display === 'flex' ? 'none' : 'flex'; document.querySelector('.nav-links').style.flexDirection = 'column'; document.querySelector('.nav-links').style.position = 'absolute'; document.querySelector('.nav-links').style.top = '72px'; document.querySelector('.nav-links').style.left = '0'; document.querySelector('.nav-links').style.right = '0'; document.querySelector('.nav-links').style.background = 'white'; document.querySelector('.nav-links').style.padding = '1rem 2rem'; document.querySelector('.nav-links').style.borderBottom = '1px solid #e2e8f0'; document.querySelector('.nav-links').style.gap = '1rem';"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/></svg> | |
| </button> | |
| </div> | |
| </nav> | |
| <!-- ── Hero ── --> | |
| <section class="hero"> | |
| <div class="hero-grid-bg"></div> | |
| <div class="hero-inner"> | |
| <div class="hero-eyebrow"> | |
| <span class="hero-eyebrow-dot"></span> | |
| Geoscience Australia & Australian National University | |
| </div> | |
| <h1>Trusted Infrastructure for Water Resource Management</h1> | |
| <p class="hero-sub"> | |
| Hydrata provides a collaborative, cloud-based interface to the ANUGA hydraulic model, enabling transparent surface water modelling for flood risk assessment, stormwater management, and watershed planning. | |
| </p> | |
| <div class="hero-actions"> | |
| <a href="#contact" class="btn-primary">Request a Demo <span class="btn-arrow">→</span></a> | |
| <a href="/catalogue/#/?f=map" class="btn-secondary">Explore Data Catalogue <span class="btn-arrow">→</span></a> | |
| </div> | |
| <div class="hero-trust-line"> | |
| <span class="hero-trust-label">Trusted by</span> | |
| <div class="hero-trust-logos"> | |
| <span> | |
| <svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 1a7 7 0 100 14A7 7 0 008 1zm0 12.5a5.5 5.5 0 110-11 5.5 5.5 0 010 11zM7.25 4v4.5l3.5 2.1.75-1.23-2.75-1.63V4h-1.5z"/></svg> | |
| Government Agencies | |
| </span> | |
| <span> | |
| <svg viewBox="0 0 16 16" fill="currentColor"><path d="M2 2v12h12V2H2zm10.5 10.5h-9v-9h9v9zM6 7h4v1H6V7zm0 2h4v1H6V9zm0-4h4v1H6V5z"/></svg> | |
| Research Institutions | |
| </span> | |
| <span> | |
| <svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 1L1 5v1h14V5L8 1zM3 7v5h2V7H3zm4 0v5h2V7H7zm4 0v5h2V7h-2zM1 13v2h14v-2H1z"/></svg> | |
| Engineering Firms | |
| </span> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── Stats Bar ── --> | |
| <section class="stats-bar"> | |
| <div class="stats-inner"> | |
| <div class="stat-item"> | |
| <div class="stat-number">4</div> | |
| <div class="stat-label">National Portals</div> | |
| </div> | |
| <div class="stat-item"> | |
| <div class="stat-number">3</div> | |
| <div class="stat-label">Countries Served</div> | |
| </div> | |
| <div class="stat-item"> | |
| <div class="stat-number">500+</div> | |
| <div class="stat-label">Published Datasets</div> | |
| </div> | |
| <div class="stat-item"> | |
| <div class="stat-number">100%</div> | |
| <div class="stat-label">Open Source</div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── Case Studies ── --> | |
| <section class="section section-alt" id="case-studies"> | |
| <div class="section-header"> | |
| <span class="section-eyebrow">Proven in the Field</span> | |
| <h2 class="section-title">Deployed Across Critical Water Infrastructure Programs</h2> | |
| <p class="section-desc"> | |
| From watershed management in the United States to groundwater mapping in Central America and geological surveying in the Caribbean, Hydrata supports decision-making where it matters most. | |
| </p> | |
| </div> | |
| <div class="cases-grid"> | |
| <!-- Card 1: SWAMM --> | |
| <div class="case-card"> | |
| <div class="case-card-accent"></div> | |
| <div class="case-card-body"> | |
| <div class="case-card-location"> | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M8 1.5C5.5 1.5 3.5 3.5 3.5 6c0 3.5 4.5 8.5 4.5 8.5s4.5-5 4.5-8.5c0-2.5-2-4.5-4.5-4.5z"/><circle cx="8" cy="6" r="1.5"/></svg> | |
| Decatur, Illinois, USA | |
| </div> | |
| <h3>Lake Decatur Watershed Management</h3> | |
| <p> | |
| Quantifying the effectiveness of best management practices (BMPs) for stormwater control across the Lake Decatur watershed. The SWAMM portal enables multi-stakeholder collaboration on runoff modelling and nutrient load reduction. | |
| </p> | |
| <div class="case-card-tags"> | |
| <span class="case-card-tag">Stormwater</span> | |
| <span class="case-card-tag">BMP Analysis</span> | |
| <span class="case-card-tag">Watershed</span> | |
| </div> | |
| <a href="https://theswamm.com" class="case-card-link"> | |
| Learn more | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="3" y1="8" x2="13" y2="8"/><polyline points="9,4 13,8 9,12"/></svg> | |
| </a> | |
| </div> | |
| </div> | |
| <!-- Card 2: Haiti --> | |
| <div class="case-card"> | |
| <div class="case-card-accent"></div> | |
| <div class="case-card-body"> | |
| <div class="case-card-location"> | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M8 1.5C5.5 1.5 3.5 3.5 3.5 6c0 3.5 4.5 8.5 4.5 8.5s4.5-5 4.5-8.5c0-2.5-2-4.5-4.5-4.5z"/><circle cx="8" cy="6" r="1.5"/></svg> | |
| Port-au-Prince, Haiti | |
| </div> | |
| <h3>Haiti National Hydrogeology Portal</h3> | |
| <p> | |
| A centralized geospatial platform for Haiti's geological and hydrogeological data, enabling researchers and government agencies to access, share, and analyze subsurface mapping and water resource data across the country. | |
| </p> | |
| <div class="case-card-tags"> | |
| <span class="case-card-tag">Hydrogeology</span> | |
| <span class="case-card-tag">Data Sharing</span> | |
| <span class="case-card-tag">National Portal</span> | |
| </div> | |
| <a href="https://sararaportal.com" class="case-card-link"> | |
| Learn more | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="3" y1="8" x2="13" y2="8"/><polyline points="9,4 13,8 9,12"/></svg> | |
| </a> | |
| </div> | |
| </div> | |
| <!-- Card 3: Nicaragua --> | |
| <div class="case-card"> | |
| <div class="case-card-accent"></div> | |
| <div class="case-card-body"> | |
| <div class="case-card-location"> | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M8 1.5C5.5 1.5 3.5 3.5 3.5 6c0 3.5 4.5 8.5 4.5 8.5s4.5-5 4.5-8.5c0-2.5-2-4.5-4.5-4.5z"/><circle cx="8" cy="6" r="1.5"/></svg> | |
| Managua, Nicaragua | |
| </div> | |
| <h3>Nicaragua Groundwater Resource Portal</h3> | |
| <p> | |
| Supporting sustainable groundwater resource planning through a collaborative geospatial platform. Enables cross-institutional data management for aquifer monitoring, well inventories, and regional water balance assessments. | |
| </p> | |
| <div class="case-card-tags"> | |
| <span class="case-card-tag">Groundwater</span> | |
| <span class="case-card-tag">Resource Planning</span> | |
| <span class="case-card-tag">Monitoring</span> | |
| </div> | |
| <a href="https://nicaraguahydroportal.com" class="case-card-link"> | |
| Learn more | |
| <svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="3" y1="8" x2="13" y2="8"/><polyline points="9,4 13,8 9,12"/></svg> | |
| </a> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── Built on Open Standards ── --> | |
| <section class="section" id="standards"> | |
| <div class="section-header"> | |
| <span class="section-eyebrow">Technology Foundation</span> | |
| <h2 class="section-title">Built on Open Standards</h2> | |
| <p class="section-desc"> | |
| Every component of the Hydrata platform is built on established, peer-reviewed open source technologies, ensuring transparency, reproducibility, and long-term institutional viability. | |
| </p> | |
| </div> | |
| <div class="standards-content"> | |
| <div class="standards-text"> | |
| <h3>Scientifically Validated. Institutionally Ready.</h3> | |
| <p> | |
| The ANUGA hydrodynamic model, developed by Geoscience Australia and the Australian National University, solves the shallow water wave equations using a finite-volume method on an unstructured triangular mesh. Hydrata wraps ANUGA in a modern geospatial web platform, making it accessible to teams without HPC expertise. | |
| </p> | |
| <ul class="standards-list"> | |
| <li> | |
| <div class="standards-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polygon points="12,2 22,8.5 22,15.5 12,22 2,15.5 2,8.5"/><line x1="12" y1="22" x2="12" y2="15.5"/><polyline points="22,8.5 12,15.5 2,8.5"/><polyline points="2,15.5 12,8.5 22,15.5"/></svg> | |
| </div> | |
| <div> | |
| <strong>ANUGA Hydraulic Engine</strong> | |
| <span>Peer-reviewed 2D hydrodynamic solver for flood and flow modelling</span> | |
| </div> | |
| </li> | |
| <li> | |
| <div class="standards-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10 15.3 15.3 0 01-4-10A15.3 15.3 0 0112 2z"/></svg> | |
| </div> | |
| <div> | |
| <strong>OGC-Compliant Services</strong> | |
| <span>WMS, WFS, WCS, and CSW for interoperable geospatial data exchange</span> | |
| </div> | |
| </li> | |
| <li> | |
| <div class="standards-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M21 12c0 1.66-4.03 3-9 3s-9-1.34-9-3"/><path d="M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5"/></svg> | |
| </div> | |
| <div> | |
| <strong>PostGIS Spatial Database</strong> | |
| <span>Enterprise-grade spatial queries on PostgreSQL with full SQL access</span> | |
| </div> | |
| </li> | |
| <li> | |
| <div class="standards-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg> | |
| </div> | |
| <div> | |
| <strong>GeoServer Map Services</strong> | |
| <span>High-performance rendering and tile serving for large geospatial datasets</span> | |
| </div> | |
| </li> | |
| </ul> | |
| </div> | |
| <div class="standards-visual"> | |
| <div class="standards-diagram"> | |
| <div class="standards-diagram-inner"> | |
| <div class="standards-diagram-center"> | |
| <span>Hydrata</span> | |
| </div> | |
| <div class="standards-orbit"> | |
| <div class="standards-orbit-item">ANUGA</div> | |
| <div class="standards-orbit-item">GeoNode</div> | |
| <div class="standards-orbit-item">GeoServer</div> | |
| <div class="standards-orbit-item">PostGIS</div> | |
| <div class="standards-orbit-item">MapStore</div> | |
| <div class="standards-orbit-item">OGC / WMS</div> | |
| <div class="standards-orbit-item">Django</div> | |
| <div class="standards-orbit-item">Celery</div> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── Enterprise Features ── --> | |
| <section class="section section-alt" id="features"> | |
| <div class="section-header"> | |
| <span class="section-eyebrow">Enterprise Capabilities</span> | |
| <h2 class="section-title">Built for Institutional Requirements</h2> | |
| <p class="section-desc"> | |
| Hydrata meets the security, governance, and integration requirements of government agencies, research institutions, and engineering firms managing critical water infrastructure. | |
| </p> | |
| </div> | |
| <div class="features-grid"> | |
| <div class="feature-card"> | |
| <div class="feature-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/><path d="M9 12l2 2 4-4"/></svg> | |
| </div> | |
| <h3>Role-Based Access Control</h3> | |
| <p>Granular permissions at the dataset, project, and organization level. Control who can view, edit, publish, and administer resources across your team.</p> | |
| </div> | |
| <div class="feature-card"> | |
| <div class="feature-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z"/><polyline points="14,2 14,8 20,8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10,9 9,9 8,9"/></svg> | |
| </div> | |
| <h3>Full Audit Trail</h3> | |
| <p>Complete provenance tracking for all datasets and model runs. Every modification, computation, and publication is recorded with timestamps and user attribution.</p> | |
| </div> | |
| <div class="feature-card"> | |
| <div class="feature-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polyline points="16,18 22,12 16,6"/><polyline points="8,6 2,12 8,18"/><line x1="14" y1="4" x2="10" y2="20"/></svg> | |
| </div> | |
| <h3>RESTful API Access</h3> | |
| <p>Programmatic access to all platform capabilities via documented REST APIs. Integrate with existing workflows, automate data pipelines, and build custom applications.</p> | |
| </div> | |
| <div class="feature-card"> | |
| <div class="feature-icon"> | |
| <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/><rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/></svg> | |
| </div> | |
| <h3>Custom Branding & Portals</h3> | |
| <p>Deploy dedicated, white-labeled portals for your organization or program. Custom domain, branding, and homepage configuration without separate infrastructure.</p> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── CTA ── --> | |
| <section class="cta-section" id="contact"> | |
| <div class="cta-inner"> | |
| <span class="section-eyebrow">Get Started</span> | |
| <h2>Ready to Modernize Your Water Resource Management?</h2> | |
| <p> | |
| Whether you are evaluating platforms for a national data portal, a regional watershed program, or institutional research, our team can walk you through a deployment tailored to your requirements. | |
| </p> | |
| <div class="cta-actions"> | |
| <a href="mailto:info@hydrata.com?subject=Demo%20Request" class="btn-cta-primary"> | |
| Request a Demo <span class="btn-arrow">→</span> | |
| </a> | |
| <a href="/account/signup/" class="btn-cta-secondary"> | |
| Create an Account <span class="btn-arrow">→</span> | |
| </a> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ── Footer ── --> | |
| <footer class="footer"> | |
| <div class="footer-inner"> | |
| <div class="footer-top"> | |
| <div class="footer-brand"> | |
| <span class="nav-logo-text">Hydrata</span> | |
| <p> | |
| Cloud-based hydraulic modelling infrastructure built on ANUGA, developed by Geoscience Australia and the Australian National University. Open source. Peer-reviewed. Field-proven. | |
| </p> | |
| </div> | |
| <div class="footer-col"> | |
| <h4>Platform</h4> | |
| <ul> | |
| <li><a href="/catalogue/#/?f=map">Data Catalogue</a></li> | |
| <li><a href="#features">Enterprise Features</a></li> | |
| <li><a href="#standards">Technology</a></li> | |
| <li><a href="/account/signup/">Create Account</a></li> | |
| </ul> | |
| </div> | |
| <div class="footer-col"> | |
| <h4>Portals</h4> | |
| <ul> | |
| <li><a href="https://hydrata.com">Hydrata</a></li> | |
| <li><a href="https://theswamm.com">SWAMM</a></li> | |
| <li><a href="https://sararaportal.com">Sarara Portal</a></li> | |
| <li><a href="https://nicaraguahydroportal.com">Nicaragua Hydroportal</a></li> | |
| </ul> | |
| </div> | |
| <div class="footer-col"> | |
| <h4>Resources</h4> | |
| <ul> | |
| <li><a href="https://anuga.anu.edu.au">ANUGA Documentation</a></li> | |
| <li><a href="https://www.ga.gov.au">Geoscience Australia</a></li> | |
| <li><a href="https://geonode.org">GeoNode Project</a></li> | |
| <li><a href="mailto:info@hydrata.com">Contact</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| <div class="footer-bottom"> | |
| <p>© 2026 Hydrata. All rights reserved.</p> | |
| <div class="footer-legal"> | |
| <a href="/privacy/">Privacy Policy</a> | |
| <a href="/terms/">Terms of Service</a> | |
| </div> | |
| </div> | |
| </div> | |
| </footer> | |
| </body> | |
| </html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment