mirror of
https://github.com/Sea-Haven-Industries/seahaven-site.git
synced 2026-09-30 04:13:15 +00:00
Migrate to thin Eleventy build + a11y/SEO/perf/CI hardening (#20)
* chore(build): add Eleventy scaffold
Thin Eleventy build (v3.1.6, pinned) — passthrough-copies assets/,
robots.txt, sitemap.xml; outputs flat HTML to _site/. _data/site.json
holds site-wide constants; _data/images.json maps image keys to
src+width+height for the {% image %} shortcode (CLS fix). Output stays
flat HTML served from the same S3 bucket + CloudFront.
* refactor(templates): base layout, partials, shared JS, CSS extraction
- _includes/base.njk + nav/mobile-menu/footer partials reproduce the
shared chrome once (was hand-duplicated across 13 pages). Adds a
skip-link and <main> landmark (WCAG 2.4.1), aria-expanded/role=dialog
hooks on the menu, and a {% year %} shortcode replacing document.write.
- assets/js/nav.js: extracted sticky-nav + accessible mobile-menu dialog
(focus trap, Escape, focus return) + rAF-throttled hero parallax.
- assets/js/form.js: Basin AJAX submit with an accessible status region.
- assets/css/*.css: per-page inline <style> extracted into page CSS files
(home/about/services/careers/jobs/contact/social/legal/404); skip-link
+ :focus-visible added to main.css.
- index.njk: homepage converted as the reference page.
* fix(css): make hero-bg url root-relative after extraction
Inline CSS used a document-relative url('assets/...') that resolves
correctly from / but breaks once moved into /assets/css/home.css.
Rewrite to /assets/images/.
* refactor(pages): convert 12 pages to Eleventy templates
Convert about, services, careers (listing + 3 jobs), contact, social-
accountability, privacy-policy, terms-of-service, eula, and 404 from
standalone HTML to .njk against base.njk. Each page now carries only
front-matter (title/description/SEO) + its <main> content; shared head/
nav/footer/scripts come from the layout. JobPosting + LocalBusiness
JSON-LD preserved. Images use the {% image %} shortcode (width/height).
Contact gets an accessible #form-status region. form.js generalized to
wire BOTH the contact form and the .apply-form job application forms
(was contact-only), preserving each submit button's own label.
* fix(a11y): footer contrast to WCAG AA + scope services .form-group
Raise footer text colors (footer-bottom/col/brand/social/contact) and
darken --text-muted so muted text clears 4.5:1 on the dark footer and
warm-gray surfaces. Scope services' flex .form-group override to
.contact-form .form-group so it can't leak to the global rule.
* perf(seo): og-cover image, webp logos, hero preload
Add a real 1200x630 og-cover.jpg (was a 153x49 favicon) wired site-wide
via base.njk og:image/twitter:image. Convert nav/footer logos to webp
(nav 58KB->22KB); PNGs kept as passthrough so old URLs still resolve.
Preload the LCP hero image on the homepage (fetchpriority=high). All
<img> carry width/height via the image shortcode (CLS).
* ci(deploy): build-then-sync, cache headers, safe concurrency
Rename main.yml -> deploy.yaml (org convention). Build with Eleventy
(npm ci && npm run build) and sync _site/ instead of the repo root, so
only built output ships (no source/templates/node_modules). Split
Cache-Control (1-day assets, no-cache HTML) and keep /* invalidation
since filenames are not yet fingerprinted. concurrency cancel-in-progress
false so a deploy is never cut mid sync. ci.yaml validates _site/ via
ci-static build mode.
* docs: README for the Eleventy build and structure
* fix(security): wire services form, guard build, harden deploy
Fable build-review findings:
- BLOCK: services puts .contact-form on the <form> itself (contact uses a
wrapper div), so form.js selector '.contact-form form' never matched it
— the services lead form submitted natively with an empty reCAPTCHA
token. Selector now also matches form.contact-form.
- Guard the build before the --delete S3 sync: require index/contact/404
and >=40 files, so a silently-empty build can never wipe the live bucket.
- npm ci --ignore-scripts on deploy (build verified to pass) to shrink the
supply-chain window on the OIDC-credentialed runner.
- Escape quotes in the image shortcode alt text.
This commit is contained in:
parent
f3955e8279
commit
5ee640074c
53 changed files with 4939 additions and 4997 deletions
30
.eleventy.js
Normal file
30
.eleventy.js
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
const images = require("./_data/images.json");
|
||||||
|
|
||||||
|
module.exports = function (eleventyConfig) {
|
||||||
|
// Static assets shipped verbatim to the document root.
|
||||||
|
eleventyConfig.addPassthroughCopy("assets");
|
||||||
|
eleventyConfig.addPassthroughCopy("robots.txt");
|
||||||
|
eleventyConfig.addPassthroughCopy("sitemap.xml");
|
||||||
|
|
||||||
|
// {% image "key", "alt text", 'loading="lazy" class="x"' %}
|
||||||
|
// Emits an <img> with width/height from _data/images.json (prevents CLS).
|
||||||
|
eleventyConfig.addShortcode("image", function (key, alt, attrs = "") {
|
||||||
|
const img = images[key];
|
||||||
|
if (!img) {
|
||||||
|
throw new Error(`image shortcode: unknown key "${key}" (add it to _data/images.json)`);
|
||||||
|
}
|
||||||
|
const safeAlt = String(alt).replace(/"/g, """);
|
||||||
|
const extra = attrs ? " " + attrs : "";
|
||||||
|
return `<img src="${img.src}" width="${img.w}" height="${img.h}" alt="${safeAlt}"${extra}>`;
|
||||||
|
});
|
||||||
|
|
||||||
|
// Current year, for the footer (replaces the deprecated document.write pattern).
|
||||||
|
eleventyConfig.addShortcode("year", () => `${new Date().getFullYear()}`);
|
||||||
|
|
||||||
|
return {
|
||||||
|
dir: { input: ".", includes: "_includes", data: "_data", output: "_site" },
|
||||||
|
templateFormats: ["njk"],
|
||||||
|
htmlTemplateEngine: "njk",
|
||||||
|
markdownTemplateEngine: "njk",
|
||||||
|
};
|
||||||
|
};
|
||||||
3
.github/workflows/ci.yaml
vendored
3
.github/workflows/ci.yaml
vendored
|
|
@ -10,3 +10,6 @@ permissions:
|
||||||
jobs:
|
jobs:
|
||||||
ci:
|
ci:
|
||||||
uses: Sea-Haven-Industries/.github/.github/workflows/ci-static.yaml@main
|
uses: Sea-Haven-Industries/.github/.github/workflows/ci-static.yaml@main
|
||||||
|
with:
|
||||||
|
build-command: "npx @11ty/eleventy"
|
||||||
|
check-dir: "_site"
|
||||||
|
|
|
||||||
77
.github/workflows/deploy.yaml
vendored
Normal file
77
.github/workflows/deploy.yaml
vendored
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
name: Deploy
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
id-token: write # Required for OIDC
|
||||||
|
contents: read # Allows checkout of repo
|
||||||
|
|
||||||
|
# Never cancel a deploy mid-flight: cancelling between the S3 sync and the
|
||||||
|
# CloudFront invalidation (or mid `--delete`) would leave the bucket in a
|
||||||
|
# half-updated state. Queue instead.
|
||||||
|
concurrency:
|
||||||
|
group: deploy-${{ github.ref }}
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Set up Node
|
||||||
|
uses: actions/setup-node@v6
|
||||||
|
with:
|
||||||
|
node-version: "24"
|
||||||
|
cache: npm
|
||||||
|
|
||||||
|
- name: Build site
|
||||||
|
run: |
|
||||||
|
npm ci --ignore-scripts
|
||||||
|
npm run build
|
||||||
|
# Fail closed: never let a silently-empty build reach the --delete sync.
|
||||||
|
test -f _site/index.html
|
||||||
|
test -f _site/contact/index.html
|
||||||
|
test -f _site/404.html
|
||||||
|
count=$(find _site -type f | wc -l)
|
||||||
|
if [ "$count" -lt 40 ]; then
|
||||||
|
echo "::error::build produced only $count files (expected >= 40); aborting deploy"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Build OK: $count files."
|
||||||
|
|
||||||
|
- name: Configure AWS credentials using OIDC
|
||||||
|
uses: aws-actions/configure-aws-credentials@v6
|
||||||
|
with:
|
||||||
|
role-to-assume: arn:aws:iam::328440206208:role/githubdeploy_seahavensite
|
||||||
|
aws-region: us-east-1
|
||||||
|
|
||||||
|
- name: Sync build output to S3
|
||||||
|
run: |
|
||||||
|
# 1) Static assets — 1-day browser cache (no filename fingerprinting yet,
|
||||||
|
# so do NOT go immutable). CloudFront /* invalidation below keeps the
|
||||||
|
# edge fresh; this only affects returning visitors' browser cache.
|
||||||
|
aws s3 sync _site/ s3://seahaven.com --no-progress \
|
||||||
|
--exclude "*.html" --exclude "*.xml" --exclude "*.txt" \
|
||||||
|
--cache-control "public, max-age=86400"
|
||||||
|
|
||||||
|
# 2) HTML / sitemap / robots — always revalidate so a deploy is seen immediately.
|
||||||
|
aws s3 sync _site/ s3://seahaven.com --no-progress \
|
||||||
|
--exclude "*" --include "*.html" --include "*.xml" --include "*.txt" \
|
||||||
|
--cache-control "no-cache"
|
||||||
|
|
||||||
|
# 3) Prune files removed from the build. This pass sets no metadata, so
|
||||||
|
# it skips already-uploaded objects (preserving the Cache-Control set
|
||||||
|
# above) and only deletes objects no longer present in _site/.
|
||||||
|
aws s3 sync _site/ s3://seahaven.com --no-progress --delete
|
||||||
|
|
||||||
|
- name: Invalidate CloudFront cache
|
||||||
|
run: |
|
||||||
|
aws cloudfront create-invalidation \
|
||||||
|
--distribution-id EYK41AG0PO6XU \
|
||||||
|
--paths "/*"
|
||||||
38
.github/workflows/main.yml
vendored
38
.github/workflows/main.yml
vendored
|
|
@ -1,38 +0,0 @@
|
||||||
name: Deploy Static Site to S3
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
id-token: write # Required for OIDC
|
|
||||||
contents: read # Allows checkout of repo
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
deploy:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@v6
|
|
||||||
|
|
||||||
- name: Configure AWS credentials using OIDC
|
|
||||||
uses: aws-actions/configure-aws-credentials@v6
|
|
||||||
with:
|
|
||||||
role-to-assume: arn:aws:iam::328440206208:role/githubdeploy_seahavensite
|
|
||||||
aws-region: us-east-1
|
|
||||||
|
|
||||||
- name: Sync files to S3
|
|
||||||
run: |
|
|
||||||
aws s3 sync . s3://seahaven.com \
|
|
||||||
--delete \
|
|
||||||
--exclude ".git/*" \
|
|
||||||
--exclude ".github/*" \
|
|
||||||
--exclude "*.md"
|
|
||||||
|
|
||||||
- name: Invalidate CloudFront cache
|
|
||||||
run: |
|
|
||||||
aws cloudfront create-invalidation \
|
|
||||||
--distribution-id EYK41AG0PO6XU \
|
|
||||||
--paths "/*"
|
|
||||||
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -4,3 +4,6 @@ Thumbs.db
|
||||||
.env
|
.env
|
||||||
.env.*
|
.env.*
|
||||||
node_modules/
|
node_modules/
|
||||||
|
|
||||||
|
# Eleventy build output
|
||||||
|
_site/
|
||||||
|
|
|
||||||
12
404.njk
Normal file
12
404.njk
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Page Not Found — Sea Haven Industries"
|
||||||
|
description: "The page you're looking for doesn't exist or has been moved."
|
||||||
|
pageCss: "404"
|
||||||
|
permalink: /404.html
|
||||||
|
robots: "noindex, follow"
|
||||||
|
---
|
||||||
|
<div class="error-code">404</div>
|
||||||
|
<h1>Page Not Found</h1>
|
||||||
|
<p>The page you're looking for doesn't exist or has been moved. Let's get you back on track.</p>
|
||||||
|
<a href="/" class="btn">Back to Homepage</a>
|
||||||
31
README.md
31
README.md
|
|
@ -1,16 +1,37 @@
|
||||||
# Main Website for Sea Haven Industries
|
# Main Website for Sea Haven Industries
|
||||||
|
|
||||||

|

|
||||||
|

|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
A clean static website for Sea Haven Industries — built with semantic HTML, inline CSS, and vanilla JS. Served from an AWS S3 bucket via CloudFront.
|
A clean static website for Sea Haven Industries — authored as [Eleventy](https://www.11ty.dev/) templates that build to flat HTML, served from an AWS S3 bucket via CloudFront.
|
||||||
|
|
||||||
## Stack
|
## Stack
|
||||||
- **HTML/CSS/JS** — no frameworks, no build tools
|
- **Eleventy (11ty)** — thin static build: one base layout + partials, no client framework. Output is plain HTML/CSS/vanilla JS.
|
||||||
- **Design system** — CSS custom properties (DM Serif Display + Inter, `--rose: #cc3366`)
|
- **Design system** — CSS custom properties (DM Serif Display + Inter, `--rose: #cc3366`)
|
||||||
- **Forms** — Basin (AJAX submission, reCAPTCHA v3, honeypot spam protection)
|
- **Forms** — Basin (AJAX submission, reCAPTCHA v3, honeypot spam protection)
|
||||||
- **Hosting** — S3 + CloudFront, deployed via GitHub Actions OIDC
|
- **Hosting** — S3 + CloudFront, deployed via GitHub Actions OIDC (`npm run build` → sync `_site/`)
|
||||||
|
|
||||||
|
## Develop
|
||||||
|
```bash
|
||||||
|
npm ci # install (Eleventy, pinned)
|
||||||
|
npm run serve # local dev server with live reload
|
||||||
|
npm run build # build to _site/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Structure
|
||||||
|
| Path | Purpose |
|
||||||
|
|------|---------|
|
||||||
|
| `*.njk`, `*/index.njk` | page templates (front-matter + `<main>` content) |
|
||||||
|
| `_includes/base.njk` | document layout (head, nav, footer, skip-link, `<main>`) |
|
||||||
|
| `_includes/{nav,mobile-menu,footer}.njk` | shared chrome partials |
|
||||||
|
| `_data/site.json` | site-wide constants (nav, contact, social) |
|
||||||
|
| `_data/images.json` | image dimensions for the `{% image %}` shortcode (CLS) |
|
||||||
|
| `assets/css/` | `main.css` (shared) + per-page CSS |
|
||||||
|
| `assets/js/` | `nav.js` (chrome), `form.js` (Basin forms) |
|
||||||
|
| `.eleventy.js` | build config + shortcodes |
|
||||||
|
| `_site/` | build output (gitignored; what deploys) |
|
||||||
|
|
||||||
## Pages
|
## Pages
|
||||||
| Page | Path |
|
| Page | Path |
|
||||||
|
|
@ -24,9 +45,11 @@ A clean static website for Sea Haven Industries — built with semantic HTML, in
|
||||||
| Privacy Policy | `/privacy-policy/` |
|
| Privacy Policy | `/privacy-policy/` |
|
||||||
| Terms of Service | `/terms-of-service/` |
|
| Terms of Service | `/terms-of-service/` |
|
||||||
| Job: Dispatcher | `/careers/dispatcher/` |
|
| Job: Dispatcher | `/careers/dispatcher/` |
|
||||||
|
| Job: Scheduling Coordinator | `/careers/scheduling-coordinator/` |
|
||||||
| Job: Traveling Maintenance/Electrical Assistant | `/careers/traveling-maintenance-assistant/` |
|
| Job: Traveling Maintenance/Electrical Assistant | `/careers/traveling-maintenance-assistant/` |
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
* 12-JUN-2026: Migrated to a thin Eleventy build — shared chrome (head/nav/footer/JS) deduplicated into one base layout + partials (was hand-copied across 13 pages). Added skip-link + `<main>` landmark, accessible mobile-menu dialog, `:focus-visible`, WCAG AA footer contrast, 1200×630 `og-cover` social image, hero LCP preload, WebP logos, image `width`/`height` (CLS), and pre-deploy CI validation (htmlhint/JSON-LD/sitemap/links). Deploy now builds and syncs `_site/` with split Cache-Control.
|
||||||
* 14-JUL-2025: Initial pull from WordPress site, changed permalinks for proper navigation
|
* 14-JUL-2025: Initial pull from WordPress site, changed permalinks for proper navigation
|
||||||
* 17-JUL-2025: Add GitHub Actions workflow for S3 sync on push, using AWS OIDC
|
* 17-JUL-2025: Add GitHub Actions workflow for S3 sync on push, using AWS OIDC
|
||||||
* 04-APR-2026: Major cleanup — stripped unused JS (~805KB), consolidated CSS, removed ~1,150 dead plugin files
|
* 04-APR-2026: Major cleanup — stripped unused JS (~805KB), consolidated CSS, removed ~1,150 dead plugin files
|
||||||
|
|
|
||||||
13
_data/images.json
Normal file
13
_data/images.json
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
"hero-bg": { "src": "/assets/images/hero-bg.webp", "w": 2400, "h": 1597 },
|
||||||
|
"electrical": { "src": "/assets/images/electrical.webp", "w": 2560, "h": 1709 },
|
||||||
|
"plumbing": { "src": "/assets/images/plumbing.webp", "w": 2560, "h": 1707 },
|
||||||
|
"hvac": { "src": "/assets/images/hvac.webp", "w": 1200, "h": 800 },
|
||||||
|
"handyman": { "src": "/assets/images/handyman.webp", "w": 2560, "h": 1707 },
|
||||||
|
"garage-door": { "src": "/assets/images/garage-door.webp", "w": 1280, "h": 853 },
|
||||||
|
"team-on-site": { "src": "/assets/images/team-on-site.webp", "w": 2400, "h": 1600 },
|
||||||
|
"team-at-work": { "src": "/assets/images/team-at-work.webp", "w": 2560, "h": 1806 },
|
||||||
|
"team-member": { "src": "/assets/images/team-member.webp", "w": 473, "h": 657 },
|
||||||
|
"logo-nav": { "src": "/assets/images/seahaven-logo-nav-new.webp", "w": 953, "h": 239 },
|
||||||
|
"logo-footer": { "src": "/assets/images/seahaven-logo-footer-new.webp", "w": 153, "h": 49 }
|
||||||
|
}
|
||||||
28
_data/site.json
Normal file
28
_data/site.json
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
"name": "Sea Haven Industries",
|
||||||
|
"url": "https://seahaven.com",
|
||||||
|
"tagline": "Construction & Facilities Services",
|
||||||
|
"phoneDisplay": "(631) 776-5102",
|
||||||
|
"phoneTel": "+16317765102",
|
||||||
|
"email": "work-orders@seahaven.com",
|
||||||
|
"address": {
|
||||||
|
"street": "710 Koehler Ave",
|
||||||
|
"locality": "Ronkonkoma",
|
||||||
|
"region": "NY",
|
||||||
|
"postalCode": "11779",
|
||||||
|
"full": "710 Koehler Ave, Ronkonkoma, NY 11779"
|
||||||
|
},
|
||||||
|
"ogImage": "https://seahaven.com/assets/images/og-cover.jpg",
|
||||||
|
"locale": "en_US",
|
||||||
|
"nav": [
|
||||||
|
{ "label": "Services", "href": "/services/" },
|
||||||
|
{ "label": "About", "href": "/about/" },
|
||||||
|
{ "label": "Careers", "href": "/careers/" },
|
||||||
|
{ "label": "Accountability", "href": "/social-accountability/" }
|
||||||
|
],
|
||||||
|
"social": [
|
||||||
|
{ "label": "LinkedIn", "abbr": "in", "href": "#" },
|
||||||
|
{ "label": "Facebook", "abbr": "f", "href": "#" },
|
||||||
|
{ "label": "Instagram", "abbr": "ig", "href": "#" }
|
||||||
|
]
|
||||||
|
}
|
||||||
58
_includes/base.njk
Normal file
58
_includes/base.njk
Normal file
|
|
@ -0,0 +1,58 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>{{ title }}</title>
|
||||||
|
<meta name="description" content="{{ description }}">
|
||||||
|
<meta property="og:title" content="{{ ogTitle or title }}">
|
||||||
|
<meta property="og:description" content="{{ ogDescription or description }}">
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
||||||
|
<meta property="og:site_name" content="{{ site.name }}">
|
||||||
|
<meta property="og:image" content="{{ site.ogImage }}">
|
||||||
|
<meta property="og:locale" content="{{ site.locale }}">
|
||||||
|
<meta name="twitter:card" content="summary_large_image">
|
||||||
|
<meta name="twitter:title" content="{{ ogTitle or title }}">
|
||||||
|
<meta name="twitter:description" content="{{ ogDescription or description }}">
|
||||||
|
<meta name="twitter:image" content="{{ site.ogImage }}">
|
||||||
|
<meta name="robots" content="{{ robots or 'index, follow, max-image-preview:large' }}">
|
||||||
|
<link rel="canonical" href="{{ site.url }}{{ page.url }}">
|
||||||
|
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
||||||
|
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
||||||
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
||||||
|
<link rel="stylesheet" href="/assets/css/main.css">
|
||||||
|
{%- if pageCss %}
|
||||||
|
<link rel="stylesheet" href="/assets/css/{{ pageCss }}.css">
|
||||||
|
{%- endif %}
|
||||||
|
{%- if heroNav %}
|
||||||
|
<link rel="preload" as="image" href="/assets/images/hero-bg.webp" fetchpriority="high">
|
||||||
|
{%- endif %}
|
||||||
|
{%- block head %}{% endblock %}
|
||||||
|
{%- if recaptcha %}
|
||||||
|
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
||||||
|
{%- endif %}
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<a class="skip-link" href="#main-content">Skip to content</a>
|
||||||
|
|
||||||
|
{% include "nav.njk" %}
|
||||||
|
{% include "mobile-menu.njk" %}
|
||||||
|
|
||||||
|
<main id="main-content">
|
||||||
|
{{ content | safe }}
|
||||||
|
</main>
|
||||||
|
|
||||||
|
{% include "footer.njk" %}
|
||||||
|
|
||||||
|
<script src="/assets/js/nav.js" defer></script>
|
||||||
|
{%- if recaptcha %}
|
||||||
|
<script src="/assets/js/form.js" defer></script>
|
||||||
|
{%- endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
51
_includes/footer.njk
Normal file
51
_includes/footer.njk
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
<footer class="site-footer">
|
||||||
|
<div class="container">
|
||||||
|
<div class="footer-grid">
|
||||||
|
<div class="footer-brand">
|
||||||
|
{% image "logo-footer", site.name %}
|
||||||
|
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
||||||
|
<div class="footer-social">
|
||||||
|
{%- for s in site.social %}
|
||||||
|
<a href="{{ s.href }}" aria-label="{{ s.label }}">{{ s.abbr }}</a>
|
||||||
|
{%- endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="footer-col">
|
||||||
|
<h4>Services</h4>
|
||||||
|
<ul>
|
||||||
|
<li><a href="/services/">Electrical Work</a></li>
|
||||||
|
<li><a href="/services/">Plumbing</a></li>
|
||||||
|
<li><a href="/services/">HVACR Services</a></li>
|
||||||
|
<li><a href="/services/">Handyman Services</a></li>
|
||||||
|
<li><a href="/services/">Garage Door Repair</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="footer-col">
|
||||||
|
<h4>Company</h4>
|
||||||
|
<ul>
|
||||||
|
<li><a href="/about/">About Us</a></li>
|
||||||
|
<li><a href="/careers/">Careers</a></li>
|
||||||
|
<li><a href="/social-accountability/">Social Accountability</a></li>
|
||||||
|
<li><a href="/contact/">Contact</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="footer-col">
|
||||||
|
<h4>Contact</h4>
|
||||||
|
<div class="footer-contact-item"><strong>{{ site.address.street }}</strong></div>
|
||||||
|
<div class="footer-contact-item">{{ site.address.locality }}, {{ site.address.region }} {{ site.address.postalCode }}</div>
|
||||||
|
<div class="footer-contact-item"><a href="mailto:{{ site.email }}" class="footer-email">{{ site.email }}</a></div>
|
||||||
|
<div class="footer-contact-item"><strong>{{ site.phoneDisplay }}</strong></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="footer-bottom">
|
||||||
|
<p>©{% year %} {{ site.name }}. All rights reserved.</p>
|
||||||
|
<ul class="footer-bottom-links">
|
||||||
|
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
||||||
|
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
{%- if recaptcha %}
|
||||||
|
<p class="recaptcha-notice">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy">Privacy Policy</a> and <a href="https://policies.google.com/terms">Terms of Service</a> apply.</p>
|
||||||
|
{%- endif %}
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
7
_includes/mobile-menu.njk
Normal file
7
_includes/mobile-menu.njk
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
<div class="mobile-menu" id="mobile-menu" role="dialog" aria-modal="true" aria-label="Navigation menu">
|
||||||
|
<button class="mobile-menu-close" id="menu-close" aria-label="Close menu">✕</button>
|
||||||
|
{%- for item in site.nav %}
|
||||||
|
<a href="{{ item.href }}">{{ item.label }}</a>
|
||||||
|
{%- endfor %}
|
||||||
|
<a href="/contact/">Contact</a>
|
||||||
|
</div>
|
||||||
18
_includes/nav.njk
Normal file
18
_includes/nav.njk
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
<header class="site-header{{ '' if heroNav else ' scrolled' }}" id="site-header">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="nav-inner" aria-label="Primary">
|
||||||
|
<a href="/" class="nav-logo" aria-label="{{ site.name }} — home">
|
||||||
|
{% image "logo-nav", site.name %}
|
||||||
|
</a>
|
||||||
|
<ul class="nav-links">
|
||||||
|
{%- for item in site.nav %}
|
||||||
|
<li><a href="{{ item.href }}">{{ item.label }}</a></li>
|
||||||
|
{%- endfor %}
|
||||||
|
</ul>
|
||||||
|
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
||||||
|
<button class="nav-hamburger" id="hamburger" aria-label="Open menu" aria-expanded="false" aria-controls="mobile-menu">
|
||||||
|
<span></span><span></span><span></span>
|
||||||
|
</button>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
337
about/index.html
337
about/index.html
|
|
@ -1,337 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>About — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Learn about Sea Haven Industries — your trusted partner in construction with 20 years of experience, expert technicians, and a commitment to excellence.">
|
|
||||||
<meta property="og:title" content="About — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Learn about Sea Haven Industries — your trusted partner in construction with 20 years of experience, expert technicians, and a commitment to excellence.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/about/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/about/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── About Intro ── */
|
|
||||||
.about-intro { background: var(--surface); }
|
|
||||||
.about-intro-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: clamp(3rem, 6vw, 6rem);
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.about-intro-img {
|
|
||||||
width: 100%;
|
|
||||||
aspect-ratio: 4/5;
|
|
||||||
object-fit: cover;
|
|
||||||
border-radius: 3px;
|
|
||||||
}
|
|
||||||
.about-intro-content .label { margin-bottom: 0.75rem; }
|
|
||||||
.about-intro-content h2 { margin-bottom: 1.25rem; }
|
|
||||||
.about-intro-content p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.8;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Philosophy / Mission / Values ── */
|
|
||||||
.values-section { background: var(--warm-gray); }
|
|
||||||
.values-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(3, 1fr);
|
|
||||||
gap: 1.5rem;
|
|
||||||
}
|
|
||||||
.value-card {
|
|
||||||
background: var(--surface);
|
|
||||||
padding: 2.5rem 2rem;
|
|
||||||
border-radius: 3px;
|
|
||||||
border-top: 3px solid var(--rose);
|
|
||||||
}
|
|
||||||
.value-card h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.5rem;
|
|
||||||
line-height: 1.2;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.value-card p {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.75;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Why Choose Us ── */
|
|
||||||
.why-section { background: var(--surface); }
|
|
||||||
.why-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: clamp(3rem, 6vw, 6rem);
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.why-content .label { margin-bottom: 0.75rem; }
|
|
||||||
.why-content h2 { margin-bottom: 1rem; }
|
|
||||||
.why-content > p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
}
|
|
||||||
.feature-item {
|
|
||||||
padding: 1.25rem;
|
|
||||||
border-left: 3px solid var(--rose);
|
|
||||||
background: var(--body-bg);
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.feature-item:last-child { margin-bottom: 0; }
|
|
||||||
.feature-item h4 {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 0.375rem;
|
|
||||||
}
|
|
||||||
.feature-item p {
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.65;
|
|
||||||
}
|
|
||||||
.why-img {
|
|
||||||
width: 100%;
|
|
||||||
aspect-ratio: 3/4;
|
|
||||||
object-fit: cover;
|
|
||||||
border-radius: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.values-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.about-intro-grid { grid-template-columns: 1fr; }
|
|
||||||
.values-grid { grid-template-columns: 1fr; }
|
|
||||||
.why-grid { grid-template-columns: 1fr; }
|
|
||||||
.why-img-wrap { order: -1; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<!-- Mobile Menu -->
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<span>About Us</span>
|
|
||||||
</nav>
|
|
||||||
<h1>Your Trusted Partner in Construction</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── About Intro ── -->
|
|
||||||
<section class="section about-intro">
|
|
||||||
<div class="container">
|
|
||||||
<div class="about-intro-grid">
|
|
||||||
<div>
|
|
||||||
<img class="about-intro-img"
|
|
||||||
src="/assets/images/team-at-work.webp"
|
|
||||||
alt="Sea Haven Industries team at work"
|
|
||||||
loading="lazy">
|
|
||||||
</div>
|
|
||||||
<div class="about-intro-content">
|
|
||||||
<p class="label">About Us</p>
|
|
||||||
<h2 class="display-lg">Transforming Visions into Reality</h2>
|
|
||||||
<p>At Sea Haven Industries, we are dedicated to transforming visions into tangible realities. With 20 years of experience in the construction industry, our team of skilled professionals delivers high-quality craftsmanship and innovative solutions for every project. From commercial to industrial spaces, we prioritize customer satisfaction, safety, and sustainability in all our endeavors.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Philosophy / Mission / Values ── -->
|
|
||||||
<section class="section values-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="values-grid">
|
|
||||||
<div class="value-card">
|
|
||||||
<h3>Philosophy</h3>
|
|
||||||
<p>At Sea Haven Industries, we believe in building not just structures, but lasting relationships. Our philosophy is rooted in integrity, quality, and innovation. We strive to exceed expectations by delivering exceptional craftsmanship and reliable service.</p>
|
|
||||||
</div>
|
|
||||||
<div class="value-card">
|
|
||||||
<h3>Mission</h3>
|
|
||||||
<p>Our mission is to build the future with integrity, innovation, and excellence. We are dedicated to delivering high-quality construction services that exceed expectations, ensuring safety, sustainability, and satisfaction in every project.</p>
|
|
||||||
</div>
|
|
||||||
<div class="value-card">
|
|
||||||
<h3>Values</h3>
|
|
||||||
<p>We prioritize integrity, quality craftsmanship, and innovation. Our transparent approach and commitment to excellence drive us to deliver superior results. We value collaboration, fostering a supportive environment for success.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Why Choose Us ── -->
|
|
||||||
<section class="section why-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="why-grid">
|
|
||||||
<div class="why-content">
|
|
||||||
<p class="label">Why Choose Us</p>
|
|
||||||
<h2 class="display-lg">Built on Experience, Driven by Quality</h2>
|
|
||||||
<p>Sea Haven Industries is a premier provider of comprehensive facilities maintenance services, showcasing core capabilities that span across multiple domains.</p>
|
|
||||||
<div class="feature-item">
|
|
||||||
<h4>Rapid Response</h4>
|
|
||||||
<p>Enabled by our innovative system, we can dispatch crews for both emergency and standard service calls at a moment's notice, ensuring minimal downtime and maximum operational efficiency.</p>
|
|
||||||
</div>
|
|
||||||
<div class="feature-item">
|
|
||||||
<h4>Self-Performing Model</h4>
|
|
||||||
<p>As a self-performing company, we maintain direct control over our services, eliminating inconsistencies associated with subcontracting and guaranteeing superior quality work at competitive prices.</p>
|
|
||||||
</div>
|
|
||||||
<div class="feature-item">
|
|
||||||
<h4>Safety & Quality Standards</h4>
|
|
||||||
<p>Our commitment to maintaining the highest safety and quality standards is unwavering. Our team operates adhering to industry best practices to provide safe, reliable, and efficient services.</p>
|
|
||||||
</div>
|
|
||||||
<div class="feature-item">
|
|
||||||
<h4>Problem-solving & Innovation</h4>
|
|
||||||
<p>Our track record of custom solutions, such as retrofitting facilities with bespoke equipment, demonstrates our ability to identify, strategize, and implement effective solutions to unique client problems.</p>
|
|
||||||
</div>
|
|
||||||
<div class="feature-item">
|
|
||||||
<h4>Integrated Facilities Maintenance</h4>
|
|
||||||
<p>We offer a wide array of maintenance services including electrical work, plumbing, HVACR, garage door repair, and handyman services. Our holistic approach ensures optimal functionality and longevity of your facilities.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="why-img-wrap">
|
|
||||||
<img class="why-img"
|
|
||||||
src="/assets/images/team-member.webp"
|
|
||||||
alt="Sea Haven Industries team member"
|
|
||||||
loading="lazy">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── CTA Banner ── -->
|
|
||||||
<section class="cta-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="cta-inner">
|
|
||||||
<div class="cta-text">
|
|
||||||
<p class="label">Start Your Project</p>
|
|
||||||
<h2 class="display-md">Get in Touch, Get Results</h2>
|
|
||||||
<p>Have questions or ready to start your project? Contact us today for prompt, professional service and expert advice. We're here to help with all your construction needs.</p>
|
|
||||||
</div>
|
|
||||||
<div class="cta-actions">
|
|
||||||
<a href="/contact/" class="btn btn-primary">Contact Us</a>
|
|
||||||
<div class="cta-phone">
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 3.5C2 2.67 2.67 2 3.5 2h1.586a1 1 0 0 1 .707.293l1.414 1.414a1 1 0 0 1 0 1.414L6.12 6.207A10.003 10.003 0 0 0 9.793 9.88l1.086-1.086a1 1 0 0 1 1.414 0l1.414 1.414A1 1 0 0 1 14 11v1.5c0 .83-.67 1.5-1.5 1.5C6.596 14 2 9.404 2 3.5z"/></svg>
|
|
||||||
Or call us: <strong>(631) 776-5102</strong>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
109
about/index.njk
Normal file
109
about/index.njk
Normal file
|
|
@ -0,0 +1,109 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "About — Sea Haven Industries"
|
||||||
|
description: "Learn about Sea Haven Industries — your trusted partner in construction with 20 years of experience, expert technicians, and a commitment to excellence."
|
||||||
|
pageCss: about
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<span>About Us</span>
|
||||||
|
</nav>
|
||||||
|
<h1>Your Trusted Partner in Construction</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── About Intro ── -->
|
||||||
|
<section class="section about-intro">
|
||||||
|
<div class="container">
|
||||||
|
<div class="about-intro-grid">
|
||||||
|
<div>
|
||||||
|
{% image "team-at-work", "Sea Haven Industries team at work", 'class="about-intro-img" loading="lazy"' %}
|
||||||
|
</div>
|
||||||
|
<div class="about-intro-content">
|
||||||
|
<p class="label">About Us</p>
|
||||||
|
<h2 class="display-lg">Transforming Visions into Reality</h2>
|
||||||
|
<p>At Sea Haven Industries, we are dedicated to transforming visions into tangible realities. With 20 years of experience in the construction industry, our team of skilled professionals delivers high-quality craftsmanship and innovative solutions for every project. From commercial to industrial spaces, we prioritize customer satisfaction, safety, and sustainability in all our endeavors.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Philosophy / Mission / Values ── -->
|
||||||
|
<section class="section values-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="values-grid">
|
||||||
|
<div class="value-card">
|
||||||
|
<h3>Philosophy</h3>
|
||||||
|
<p>At Sea Haven Industries, we believe in building not just structures, but lasting relationships. Our philosophy is rooted in integrity, quality, and innovation. We strive to exceed expectations by delivering exceptional craftsmanship and reliable service.</p>
|
||||||
|
</div>
|
||||||
|
<div class="value-card">
|
||||||
|
<h3>Mission</h3>
|
||||||
|
<p>Our mission is to build the future with integrity, innovation, and excellence. We are dedicated to delivering high-quality construction services that exceed expectations, ensuring safety, sustainability, and satisfaction in every project.</p>
|
||||||
|
</div>
|
||||||
|
<div class="value-card">
|
||||||
|
<h3>Values</h3>
|
||||||
|
<p>We prioritize integrity, quality craftsmanship, and innovation. Our transparent approach and commitment to excellence drive us to deliver superior results. We value collaboration, fostering a supportive environment for success.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Why Choose Us ── -->
|
||||||
|
<section class="section why-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="why-grid">
|
||||||
|
<div class="why-content">
|
||||||
|
<p class="label">Why Choose Us</p>
|
||||||
|
<h2 class="display-lg">Built on Experience, Driven by Quality</h2>
|
||||||
|
<p>Sea Haven Industries is a premier provider of comprehensive facilities maintenance services, showcasing core capabilities that span across multiple domains.</p>
|
||||||
|
<div class="feature-item">
|
||||||
|
<h4>Rapid Response</h4>
|
||||||
|
<p>Enabled by our innovative system, we can dispatch crews for both emergency and standard service calls at a moment's notice, ensuring minimal downtime and maximum operational efficiency.</p>
|
||||||
|
</div>
|
||||||
|
<div class="feature-item">
|
||||||
|
<h4>Self-Performing Model</h4>
|
||||||
|
<p>As a self-performing company, we maintain direct control over our services, eliminating inconsistencies associated with subcontracting and guaranteeing superior quality work at competitive prices.</p>
|
||||||
|
</div>
|
||||||
|
<div class="feature-item">
|
||||||
|
<h4>Safety & Quality Standards</h4>
|
||||||
|
<p>Our commitment to maintaining the highest safety and quality standards is unwavering. Our team operates adhering to industry best practices to provide safe, reliable, and efficient services.</p>
|
||||||
|
</div>
|
||||||
|
<div class="feature-item">
|
||||||
|
<h4>Problem-solving & Innovation</h4>
|
||||||
|
<p>Our track record of custom solutions, such as retrofitting facilities with bespoke equipment, demonstrates our ability to identify, strategize, and implement effective solutions to unique client problems.</p>
|
||||||
|
</div>
|
||||||
|
<div class="feature-item">
|
||||||
|
<h4>Integrated Facilities Maintenance</h4>
|
||||||
|
<p>We offer a wide array of maintenance services including electrical work, plumbing, HVACR, garage door repair, and handyman services. Our holistic approach ensures optimal functionality and longevity of your facilities.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="why-img-wrap">
|
||||||
|
{% image "team-member", "Sea Haven Industries team member", 'class="why-img" loading="lazy"' %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── CTA Banner ── -->
|
||||||
|
<section class="cta-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="cta-inner">
|
||||||
|
<div class="cta-text">
|
||||||
|
<p class="label">Start Your Project</p>
|
||||||
|
<h2 class="display-md">Get in Touch, Get Results</h2>
|
||||||
|
<p>Have questions or ready to start your project? Contact us today for prompt, professional service and expert advice. We're here to help with all your construction needs.</p>
|
||||||
|
</div>
|
||||||
|
<div class="cta-actions">
|
||||||
|
<a href="/contact/" class="btn btn-primary">Contact Us</a>
|
||||||
|
<div class="cta-phone">
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5" aria-hidden="true" focusable="false"><path d="M2 3.5C2 2.67 2.67 2 3.5 2h1.586a1 1 0 0 1 .707.293l1.414 1.414a1 1 0 0 1 0 1.414L6.12 6.207A10.003 10.003 0 0 0 9.793 9.88l1.086-1.086a1 1 0 0 1 1.414 0l1.414 1.414A1 1 0 0 1 14 11v1.5c0 .83-.67 1.5-1.5 1.5C6.596 14 2 9.404 2 3.5z"/></svg>
|
||||||
|
Or call us: <strong>(631) 776-5102</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,18 +1,4 @@
|
||||||
<!DOCTYPE html>
|
/* ── 404 page (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Page Not Found — Sea Haven Industries</title>
|
|
||||||
<meta name="robots" content="noindex, nofollow">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<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&family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
||||||
:root {
|
:root {
|
||||||
--rose: #cc3366;
|
--rose: #cc3366;
|
||||||
|
|
@ -67,14 +53,3 @@
|
||||||
transition: background 0.2s;
|
transition: background 0.2s;
|
||||||
}
|
}
|
||||||
.btn:hover { background: var(--rose-dark); }
|
.btn:hover { background: var(--rose-dark); }
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<div class="error-code">404</div>
|
|
||||||
<h1>Page Not Found</h1>
|
|
||||||
<p>The page you're looking for doesn't exist or has been moved. Let's get you back on track.</p>
|
|
||||||
<a href="/" class="btn">Back to Homepage</a>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
100
assets/css/about.css
Normal file
100
assets/css/about.css
Normal file
|
|
@ -0,0 +1,100 @@
|
||||||
|
/* ── About page (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
/* ── About Intro ── */
|
||||||
|
.about-intro { background: var(--surface); }
|
||||||
|
.about-intro-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: clamp(3rem, 6vw, 6rem);
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.about-intro-img {
|
||||||
|
width: 100%;
|
||||||
|
aspect-ratio: 4/5;
|
||||||
|
object-fit: cover;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
.about-intro-content .label { margin-bottom: 0.75rem; }
|
||||||
|
.about-intro-content h2 { margin-bottom: 1.25rem; }
|
||||||
|
.about-intro-content p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.8;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Philosophy / Mission / Values ── */
|
||||||
|
.values-section { background: var(--warm-gray); }
|
||||||
|
.values-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
gap: 1.5rem;
|
||||||
|
}
|
||||||
|
.value-card {
|
||||||
|
background: var(--surface);
|
||||||
|
padding: 2.5rem 2rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-top: 3px solid var(--rose);
|
||||||
|
}
|
||||||
|
.value-card h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.5rem;
|
||||||
|
line-height: 1.2;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.value-card p {
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.75;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Why Choose Us ── */
|
||||||
|
.why-section { background: var(--surface); }
|
||||||
|
.why-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: clamp(3rem, 6vw, 6rem);
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.why-content .label { margin-bottom: 0.75rem; }
|
||||||
|
.why-content h2 { margin-bottom: 1rem; }
|
||||||
|
.why-content > p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
}
|
||||||
|
.feature-item {
|
||||||
|
padding: 1.25rem;
|
||||||
|
border-left: 3px solid var(--rose);
|
||||||
|
background: var(--body-bg);
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.feature-item:last-child { margin-bottom: 0; }
|
||||||
|
.feature-item h4 {
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 0.375rem;
|
||||||
|
}
|
||||||
|
.feature-item p {
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.65;
|
||||||
|
}
|
||||||
|
.why-img {
|
||||||
|
width: 100%;
|
||||||
|
aspect-ratio: 3/4;
|
||||||
|
object-fit: cover;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.values-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.about-intro-grid { grid-template-columns: 1fr; }
|
||||||
|
.values-grid { grid-template-columns: 1fr; }
|
||||||
|
.why-grid { grid-template-columns: 1fr; }
|
||||||
|
.why-img-wrap { order: -1; }
|
||||||
|
}
|
||||||
153
assets/css/careers.css
Normal file
153
assets/css/careers.css
Normal file
|
|
@ -0,0 +1,153 @@
|
||||||
|
/* ── Careers listing (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
/* ── Careers Intro ── */
|
||||||
|
.careers-intro { background: var(--surface); }
|
||||||
|
.careers-intro .label { margin-bottom: 0.75rem; }
|
||||||
|
.careers-intro h2 { margin-bottom: 1.25rem; }
|
||||||
|
.careers-intro p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
max-width: 680px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Careers Hero (override) ── */
|
||||||
|
.careers-hero {
|
||||||
|
background: linear-gradient(rgba(26,24,20,0.7), rgba(26,24,20,0.75)),
|
||||||
|
url('/assets/images/team-at-work.webp') center/cover no-repeat;
|
||||||
|
padding: 160px 0 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Why Work Here ── */
|
||||||
|
.why-section { background: var(--surface); }
|
||||||
|
.why-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(4, 1fr);
|
||||||
|
gap: clamp(1.5rem, 3vw, 2rem);
|
||||||
|
}
|
||||||
|
.why-card {
|
||||||
|
padding: clamp(1.5rem, 3vw, 2rem);
|
||||||
|
background: var(--body-bg);
|
||||||
|
border-radius: 3px;
|
||||||
|
border-top: 3px solid var(--rose);
|
||||||
|
}
|
||||||
|
.why-card h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.125rem;
|
||||||
|
line-height: 1.3;
|
||||||
|
margin-bottom: 0.625rem;
|
||||||
|
}
|
||||||
|
.why-card p {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Open Positions ── */
|
||||||
|
.positions-section { background: var(--warm-gray); }
|
||||||
|
.positions-section h2 {
|
||||||
|
margin-bottom: clamp(2rem, 4vw, 3rem);
|
||||||
|
}
|
||||||
|
.job-card {
|
||||||
|
position: relative;
|
||||||
|
background: var(--surface);
|
||||||
|
border-left: 4px solid var(--rose);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: clamp(1.5rem, 3vw, 2.5rem);
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
box-shadow: 0 1px 3px rgba(0,0,0,0.04);
|
||||||
|
transition: box-shadow 0.2s, transform 0.2s;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.job-card:hover {
|
||||||
|
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
|
||||||
|
transform: translateY(-2px);
|
||||||
|
}
|
||||||
|
.job-card h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.5rem;
|
||||||
|
line-height: 1.2;
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
}
|
||||||
|
.job-meta {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 1rem;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.job-badge {
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.04em;
|
||||||
|
padding: 0.25rem 0.75rem;
|
||||||
|
border-radius: 2px;
|
||||||
|
background: var(--rose-tint);
|
||||||
|
color: var(--rose);
|
||||||
|
}
|
||||||
|
.job-meta-item {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
|
.job-salary {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.125rem;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
}
|
||||||
|
.job-card > p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
line-height: 1.7;
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.job-link {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.375rem;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--rose);
|
||||||
|
transition: color 0.15s;
|
||||||
|
}
|
||||||
|
.job-link::after {
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
}
|
||||||
|
.job-link:hover { color: var(--rose-dark); }
|
||||||
|
|
||||||
|
/* ── CTA Section ── */
|
||||||
|
.cta-section {
|
||||||
|
background: var(--ink);
|
||||||
|
text-align: center;
|
||||||
|
padding: clamp(4rem, 8vw, 6rem) 0;
|
||||||
|
}
|
||||||
|
.cta-section h2 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: clamp(1.75rem, 3.5vw, 2.75rem);
|
||||||
|
line-height: 1.15;
|
||||||
|
color: #fff;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.cta-section p {
|
||||||
|
font-size: 1rem;
|
||||||
|
color: rgba(255,255,255,0.55);
|
||||||
|
line-height: 1.75;
|
||||||
|
max-width: 540px;
|
||||||
|
margin: 0 auto 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.why-grid { grid-template-columns: repeat(2, 1fr); }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.job-meta { flex-direction: column; gap: 0.5rem; align-items: flex-start; }
|
||||||
|
.why-grid { grid-template-columns: 1fr; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
||||||
|
}
|
||||||
80
assets/css/contact.css
Normal file
80
assets/css/contact.css
Normal file
|
|
@ -0,0 +1,80 @@
|
||||||
|
/* ── Contact page (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
.grecaptcha-badge { visibility: hidden; }
|
||||||
|
|
||||||
|
/* ── Contact Section ── */
|
||||||
|
.contact-section { background: var(--surface); }
|
||||||
|
.contact-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1.25fr;
|
||||||
|
gap: clamp(3rem, 6vw, 5rem);
|
||||||
|
}
|
||||||
|
.contact-info .label { margin-bottom: 0.75rem; }
|
||||||
|
.contact-info h2 {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.contact-info > p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
margin-bottom: 2.5rem;
|
||||||
|
}
|
||||||
|
.contact-detail {
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 1rem;
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.contact-detail-icon {
|
||||||
|
flex-shrink: 0;
|
||||||
|
width: 44px;
|
||||||
|
height: 44px;
|
||||||
|
background: var(--rose-tint);
|
||||||
|
border-radius: 2px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
color: var(--rose);
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 700;
|
||||||
|
letter-spacing: 0.04em;
|
||||||
|
}
|
||||||
|
.contact-detail-text strong {
|
||||||
|
display: block;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 0.125rem;
|
||||||
|
}
|
||||||
|
.contact-detail-text span,
|
||||||
|
.contact-detail-text a {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
.contact-detail-text a:hover { color: var(--rose); }
|
||||||
|
|
||||||
|
/* ── Contact Form ── */
|
||||||
|
.contact-form {
|
||||||
|
background: var(--body-bg);
|
||||||
|
padding: clamp(2rem, 4vw, 3rem);
|
||||||
|
border-radius: 3px;
|
||||||
|
border: 1px solid var(--border);
|
||||||
|
}
|
||||||
|
.form-row {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
.form-group textarea {
|
||||||
|
min-height: 140px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.contact-grid { grid-template-columns: 1fr; }
|
||||||
|
.form-row { grid-template-columns: 1fr; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
||||||
|
}
|
||||||
459
assets/css/home.css
Normal file
459
assets/css/home.css
Normal file
|
|
@ -0,0 +1,459 @@
|
||||||
|
/* ── Homepage (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
/* ── Homepage Nav Overrides (dark transparent → scrolled white) ── */
|
||||||
|
.site-header {
|
||||||
|
background: rgba(20, 16, 12, 0.45);
|
||||||
|
box-shadow: none;
|
||||||
|
backdrop-filter: blur(6px);
|
||||||
|
-webkit-backdrop-filter: blur(6px);
|
||||||
|
transition: background 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
|
||||||
|
}
|
||||||
|
.site-header.scrolled {
|
||||||
|
background: rgba(255,255,255,0.97);
|
||||||
|
box-shadow: 0 1px 0 var(--border);
|
||||||
|
backdrop-filter: blur(12px);
|
||||||
|
-webkit-backdrop-filter: blur(12px);
|
||||||
|
}
|
||||||
|
.site-header:not(.scrolled) .nav-links a { color: rgba(255,255,255,0.85); }
|
||||||
|
.site-header:not(.scrolled) .nav-cta {
|
||||||
|
border-color: rgba(255,255,255,0.6);
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.site-header:not(.scrolled) .nav-hamburger { color: #fff; }
|
||||||
|
|
||||||
|
/* ── Hero ── */
|
||||||
|
.hero {
|
||||||
|
position: relative;
|
||||||
|
height: 100vh;
|
||||||
|
min-height: 640px;
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-end;
|
||||||
|
padding-bottom: clamp(4rem, 8vh, 7rem);
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.hero-bg {
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
background-color: #1a1814;
|
||||||
|
background-image: url('/assets/images/hero-bg.webp');
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center 40%;
|
||||||
|
transform: scale(1.03);
|
||||||
|
transition: transform 8s ease;
|
||||||
|
}
|
||||||
|
.hero-bg::after {
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
background: linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
rgba(20, 16, 12, 0.25) 0%,
|
||||||
|
rgba(20, 16, 12, 0.15) 40%,
|
||||||
|
rgba(20, 16, 12, 0.72) 100%
|
||||||
|
);
|
||||||
|
}
|
||||||
|
.hero-content {
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
|
max-width: 780px;
|
||||||
|
}
|
||||||
|
.hero-eyebrow {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.75rem;
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.hero-eyebrow-line {
|
||||||
|
width: 40px;
|
||||||
|
height: 1.5px;
|
||||||
|
background: var(--rose);
|
||||||
|
}
|
||||||
|
.hero-eyebrow span {
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.14em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: rgba(255,255,255,0.75);
|
||||||
|
}
|
||||||
|
.hero h1 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: clamp(3rem, 7vw, 6rem);
|
||||||
|
line-height: 1.0;
|
||||||
|
letter-spacing: -0.025em;
|
||||||
|
color: #fff;
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.hero h1 em {
|
||||||
|
font-style: italic;
|
||||||
|
color: rgba(255,255,255,0.7);
|
||||||
|
}
|
||||||
|
.hero-sub {
|
||||||
|
font-size: clamp(1rem, 2vw, 1.2rem);
|
||||||
|
line-height: 1.65;
|
||||||
|
color: rgba(255,255,255,0.78);
|
||||||
|
max-width: 520px;
|
||||||
|
margin-bottom: 2.25rem;
|
||||||
|
}
|
||||||
|
.hero-actions {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 1rem;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.hero-scroll {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 2rem;
|
||||||
|
right: clamp(1.25rem, 5vw, 2.5rem);
|
||||||
|
z-index: 1;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
color: rgba(255,255,255,0.5);
|
||||||
|
font-size: 0.75rem;
|
||||||
|
letter-spacing: 0.08em;
|
||||||
|
writing-mode: vertical-rl;
|
||||||
|
transform: rotate(180deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Stats Bar ── */
|
||||||
|
.stats-bar {
|
||||||
|
background: var(--ink);
|
||||||
|
padding: 2rem 0;
|
||||||
|
}
|
||||||
|
.stats-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(4, 1fr);
|
||||||
|
gap: 1px;
|
||||||
|
background: rgba(255,255,255,0.06);
|
||||||
|
}
|
||||||
|
.stat-item {
|
||||||
|
padding: 1.75rem 2rem;
|
||||||
|
background: var(--ink);
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.stat-num {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: clamp(2rem, 4vw, 3rem);
|
||||||
|
color: #fff;
|
||||||
|
line-height: 1;
|
||||||
|
margin-bottom: 0.375rem;
|
||||||
|
}
|
||||||
|
.stat-num span { color: var(--rose); }
|
||||||
|
.stat-label {
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 500;
|
||||||
|
letter-spacing: 0.08em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: rgba(255,255,255,0.45);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Services ── */
|
||||||
|
.services-section { background: var(--surface); }
|
||||||
|
.services-intro {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: var(--gap);
|
||||||
|
align-items: end;
|
||||||
|
margin-bottom: clamp(2.5rem, 5vw, 4rem);
|
||||||
|
}
|
||||||
|
.services-intro-right {
|
||||||
|
padding-bottom: 0.25rem;
|
||||||
|
}
|
||||||
|
.services-intro-right p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.services-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
gap: 1.5rem;
|
||||||
|
}
|
||||||
|
.service-card {
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
border-radius: 3px;
|
||||||
|
aspect-ratio: 4/5;
|
||||||
|
background: var(--warm-gray);
|
||||||
|
}
|
||||||
|
.service-card img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
object-fit: cover;
|
||||||
|
transition: transform 0.6s ease;
|
||||||
|
}
|
||||||
|
.service-card:hover img { transform: scale(1.04); }
|
||||||
|
.service-card-overlay {
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
background: linear-gradient(to top, rgba(20,16,12,0.88) 0%, rgba(20,16,12,0.1) 55%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 1.75rem;
|
||||||
|
}
|
||||||
|
.service-card-num {
|
||||||
|
font-size: 0.6875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.12em;
|
||||||
|
color: var(--rose);
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.service-card h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.5rem;
|
||||||
|
color: #fff;
|
||||||
|
line-height: 1.15;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.service-card p {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: rgba(255,255,255,0.65);
|
||||||
|
line-height: 1.6;
|
||||||
|
max-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: max-height 0.35s ease, opacity 0.35s ease;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
.service-card:hover p {
|
||||||
|
max-height: 5rem;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
.service-card-link {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.375rem;
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--rose);
|
||||||
|
margin-top: 0.875rem;
|
||||||
|
transition: gap 0.2s;
|
||||||
|
}
|
||||||
|
.service-card-link:hover { gap: 0.625rem; }
|
||||||
|
|
||||||
|
/* Large service card spans 2 cols */
|
||||||
|
.service-card-wide {
|
||||||
|
grid-column: span 2;
|
||||||
|
aspect-ratio: 2/1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── About Split ── */
|
||||||
|
.about-section { background: var(--warm-gray); }
|
||||||
|
.about-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: clamp(3rem, 6vw, 6rem);
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.about-img-wrap {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.about-img-main {
|
||||||
|
width: 100%;
|
||||||
|
aspect-ratio: 4/5;
|
||||||
|
object-fit: cover;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
.about-img-badge {
|
||||||
|
position: absolute;
|
||||||
|
bottom: -1.5rem;
|
||||||
|
right: -1.5rem;
|
||||||
|
background: var(--rose);
|
||||||
|
color: #fff;
|
||||||
|
padding: 1.5rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
text-align: center;
|
||||||
|
min-width: 140px;
|
||||||
|
}
|
||||||
|
.about-img-badge strong {
|
||||||
|
display: block;
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 2.5rem;
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
.about-img-badge span {
|
||||||
|
display: block;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 500;
|
||||||
|
letter-spacing: 0.06em;
|
||||||
|
opacity: 0.85;
|
||||||
|
margin-top: 0.25rem;
|
||||||
|
}
|
||||||
|
.about-content .label { margin-bottom: 0.75rem; }
|
||||||
|
.about-content h2 { margin-bottom: 1.25rem; }
|
||||||
|
.about-content > p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.8;
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.about-pillars {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: 1rem;
|
||||||
|
margin-top: 2rem;
|
||||||
|
}
|
||||||
|
.pillar {
|
||||||
|
padding: 1.25rem;
|
||||||
|
background: var(--surface);
|
||||||
|
border-left: 3px solid var(--rose);
|
||||||
|
}
|
||||||
|
.pillar h4 {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
}
|
||||||
|
.pillar p {
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.55;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Process ── */
|
||||||
|
.process-section { background: var(--ink); }
|
||||||
|
.process-header { margin-bottom: 3.5rem; }
|
||||||
|
.process-header .label { color: rgba(204, 51, 102, 0.9); }
|
||||||
|
.process-header h2 { color: #fff; }
|
||||||
|
.process-steps {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(4, 1fr);
|
||||||
|
gap: 2rem;
|
||||||
|
counter-reset: step;
|
||||||
|
}
|
||||||
|
.process-step {
|
||||||
|
counter-increment: step;
|
||||||
|
position: relative;
|
||||||
|
padding-top: 1rem;
|
||||||
|
}
|
||||||
|
.process-step::before {
|
||||||
|
content: counter(step, decimal-leading-zero);
|
||||||
|
display: block;
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 3.5rem;
|
||||||
|
line-height: 1;
|
||||||
|
color: rgba(255,255,255,0.07);
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.process-step-bar {
|
||||||
|
width: 40px;
|
||||||
|
height: 2px;
|
||||||
|
background: var(--rose);
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.process-step h3 {
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #fff;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.process-step p {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: rgba(255,255,255,0.45);
|
||||||
|
line-height: 1.7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Testimonials ── */
|
||||||
|
.testimonials-section { background: var(--surface); }
|
||||||
|
.testimonials-header {
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-end;
|
||||||
|
justify-content: space-between;
|
||||||
|
margin-bottom: 3rem;
|
||||||
|
gap: 2rem;
|
||||||
|
}
|
||||||
|
.testimonials-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr 1fr;
|
||||||
|
gap: 1.5rem;
|
||||||
|
}
|
||||||
|
.testimonial-card {
|
||||||
|
padding: 2rem;
|
||||||
|
background: var(--body-bg);
|
||||||
|
border-top: 2px solid var(--border);
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.testimonial-card.featured {
|
||||||
|
background: var(--rose);
|
||||||
|
border-top-color: var(--rose-dark);
|
||||||
|
}
|
||||||
|
.testimonial-stars {
|
||||||
|
display: flex;
|
||||||
|
gap: 3px;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.testimonial-stars span {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: var(--rose);
|
||||||
|
}
|
||||||
|
.testimonial-card.featured .testimonial-stars span { color: rgba(255,255,255,0.9); }
|
||||||
|
.testimonial-card blockquote {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.125rem;
|
||||||
|
font-style: italic;
|
||||||
|
line-height: 1.55;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.testimonial-card.featured blockquote { color: #fff; }
|
||||||
|
.testimonial-author {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.75rem;
|
||||||
|
}
|
||||||
|
.testimonial-author-initials {
|
||||||
|
width: 36px;
|
||||||
|
height: 36px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: var(--rose-tint);
|
||||||
|
color: var(--rose);
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 700;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
.testimonial-card.featured .testimonial-author-initials {
|
||||||
|
background: rgba(255,255,255,0.2);
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.testimonial-author-name {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
}
|
||||||
|
.testimonial-card.featured .testimonial-author-name { color: #fff; }
|
||||||
|
.testimonial-author-role {
|
||||||
|
font-size: 0.75rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
|
.testimonial-card.featured .testimonial-author-role { color: rgba(255,255,255,0.65); }
|
||||||
|
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.services-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
.service-card-wide { grid-column: span 2; aspect-ratio: 16/9; }
|
||||||
|
.process-steps { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
|
||||||
|
.testimonials-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
.testimonials-grid .testimonial-card:last-child { display: none; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.hero h1 { font-size: clamp(2.5rem, 9vw, 4rem); }
|
||||||
|
|
||||||
|
.stats-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
.services-intro { grid-template-columns: 1fr; }
|
||||||
|
.services-grid { grid-template-columns: 1fr; }
|
||||||
|
.service-card-wide { grid-column: span 1; aspect-ratio: 4/3; }
|
||||||
|
.about-grid { grid-template-columns: 1fr; }
|
||||||
|
.about-img-badge { right: 1rem; }
|
||||||
|
.process-steps { grid-template-columns: 1fr; }
|
||||||
|
.testimonials-grid { grid-template-columns: 1fr; }
|
||||||
|
.testimonials-grid .testimonial-card:last-child { display: block; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
.stats-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
.hero-actions { flex-direction: column; align-items: flex-start; }
|
||||||
|
}
|
||||||
160
assets/css/jobs.css
Normal file
160
assets/css/jobs.css
Normal file
|
|
@ -0,0 +1,160 @@
|
||||||
|
/* ── Job detail (shared: dispatcher/scheduling-coordinator/traveling) (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
.grecaptcha-badge { visibility: hidden; }
|
||||||
|
|
||||||
|
/* ── Job Details ── */
|
||||||
|
.back-link {
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 500;
|
||||||
|
color: var(--rose);
|
||||||
|
margin-top: 1rem;
|
||||||
|
transition: color 0.15s;
|
||||||
|
}
|
||||||
|
.back-link:hover { color: var(--rose-dark); }
|
||||||
|
.job-details { background: var(--surface); }
|
||||||
|
.job-layout {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 340px;
|
||||||
|
gap: clamp(2.5rem, 5vw, 4rem);
|
||||||
|
align-items: start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.job-content h2 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: clamp(1.25rem, 2.5vw, 1.75rem);
|
||||||
|
line-height: 1.2;
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
margin-top: 2.5rem;
|
||||||
|
}
|
||||||
|
.job-summary {
|
||||||
|
font-size: 1.125rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
line-height: 1.6;
|
||||||
|
padding: 1.25rem 1.5rem;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
background: var(--rose-tint);
|
||||||
|
border-left: 3px solid var(--rose);
|
||||||
|
border-radius: 2px;
|
||||||
|
}
|
||||||
|
.job-content h2:first-child { margin-top: 0; }
|
||||||
|
.job-content p {
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.7;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.job-content ul {
|
||||||
|
list-style: none;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.job-content ul li {
|
||||||
|
position: relative;
|
||||||
|
padding-left: 1.25rem;
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.7;
|
||||||
|
}
|
||||||
|
.job-content ul li::before {
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 0.625rem;
|
||||||
|
width: 6px;
|
||||||
|
height: 6px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: var(--rose);
|
||||||
|
}
|
||||||
|
.job-note {
|
||||||
|
margin-top: 2rem;
|
||||||
|
padding: 1.25rem 1.5rem;
|
||||||
|
background: var(--rose-tint);
|
||||||
|
border-radius: 3px;
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
color: var(--ink-mid);
|
||||||
|
line-height: 1.6;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Job Sidebar ── */
|
||||||
|
.job-sidebar {
|
||||||
|
position: sticky;
|
||||||
|
top: 100px;
|
||||||
|
background: var(--body-bg);
|
||||||
|
border: 1px solid var(--border);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: clamp(1.5rem, 3vw, 2rem);
|
||||||
|
}
|
||||||
|
.job-sidebar h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.25rem;
|
||||||
|
margin-bottom: 1.5rem;
|
||||||
|
}
|
||||||
|
.sidebar-item {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.sidebar-item-label {
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.08em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: var(--text-muted);
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
}
|
||||||
|
.sidebar-item-value {
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
color: var(--text);
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
.sidebar-cta {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Application Form ── */
|
||||||
|
.apply-section { background: var(--warm-gray); }
|
||||||
|
.apply-section h2 {
|
||||||
|
margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
|
||||||
|
}
|
||||||
|
.apply-form {
|
||||||
|
max-width: 640px;
|
||||||
|
}
|
||||||
|
.form-group input[type="file"] {
|
||||||
|
width: 100%;
|
||||||
|
font-family: var(--font-body);
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
padding: 0.75rem 0 0.75rem 0.75rem;
|
||||||
|
}
|
||||||
|
.form-group input[type="file"]::file-selector-button {
|
||||||
|
font-family: var(--font-body);
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
font-weight: 600;
|
||||||
|
padding: 0.5rem 1.25rem;
|
||||||
|
border: 1px solid var(--border);
|
||||||
|
border-radius: 2px;
|
||||||
|
background: var(--surface);
|
||||||
|
color: var(--text);
|
||||||
|
cursor: pointer;
|
||||||
|
margin-right: 1rem;
|
||||||
|
transition: all 0.2s;
|
||||||
|
}
|
||||||
|
.form-group input[type="file"]::file-selector-button:hover {
|
||||||
|
border-color: var(--rose);
|
||||||
|
color: var(--rose);
|
||||||
|
}
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.job-layout { grid-template-columns: 1fr 280px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.job-layout { grid-template-columns: 1fr; }
|
||||||
|
.job-sidebar { position: static; order: -1; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
||||||
|
}
|
||||||
47
assets/css/legal.css
Normal file
47
assets/css/legal.css
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
/* ── Legal pages (shared: privacy/terms/eula) (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
/* ── Prose Content ── */
|
||||||
|
.prose-section {
|
||||||
|
background: var(--surface);
|
||||||
|
padding: clamp(4rem, 8vw, 7rem) 0;
|
||||||
|
}
|
||||||
|
.prose {
|
||||||
|
max-width: 800px;
|
||||||
|
}
|
||||||
|
.prose h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.375rem;
|
||||||
|
line-height: 1.25;
|
||||||
|
color: var(--text);
|
||||||
|
margin-top: 2.5rem;
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
}
|
||||||
|
.prose h3:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
.prose p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.8;
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.prose ul {
|
||||||
|
padding-left: 1.5rem;
|
||||||
|
list-style-type: disc;
|
||||||
|
color: var(--text-muted);
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.prose ul li {
|
||||||
|
line-height: 1.8;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.prose a {
|
||||||
|
color: var(--rose);
|
||||||
|
text-decoration: underline;
|
||||||
|
text-underline-offset: 2px;
|
||||||
|
}
|
||||||
|
.prose a:hover {
|
||||||
|
color: var(--rose-dark);
|
||||||
|
}
|
||||||
|
.prose em {
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
--warm-gray: #f0ece6;
|
--warm-gray: #f0ece6;
|
||||||
--border: #e0dbd4;
|
--border: #e0dbd4;
|
||||||
--text: #2a2520;
|
--text: #2a2520;
|
||||||
--text-muted: #7c756d;
|
--text-muted: #6b645d;
|
||||||
--font-display: 'DM Serif Display', Georgia, serif;
|
--font-display: 'DM Serif Display', Georgia, serif;
|
||||||
--font-body: 'Inter', system-ui, sans-serif;
|
--font-body: 'Inter', system-ui, sans-serif;
|
||||||
--max-w: 1200px;
|
--max-w: 1200px;
|
||||||
|
|
@ -37,6 +37,27 @@ body {
|
||||||
img { display: block; max-width: 100%; }
|
img { display: block; max-width: 100%; }
|
||||||
a { color: inherit; text-decoration: none; }
|
a { color: inherit; text-decoration: none; }
|
||||||
|
|
||||||
|
/* ── Skip link (a11y) ── */
|
||||||
|
.skip-link {
|
||||||
|
position: absolute;
|
||||||
|
left: -9999px;
|
||||||
|
top: 0;
|
||||||
|
z-index: 200;
|
||||||
|
background: var(--rose);
|
||||||
|
color: #fff;
|
||||||
|
padding: 0.75rem 1.25rem;
|
||||||
|
border-radius: 0 0 3px 0;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.skip-link:focus { left: 0; }
|
||||||
|
|
||||||
|
/* ── Visible keyboard focus (a11y) ── */
|
||||||
|
:focus-visible {
|
||||||
|
outline: 2px solid var(--rose);
|
||||||
|
outline-offset: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: var(--max-w);
|
max-width: var(--max-w);
|
||||||
margin-inline: auto;
|
margin-inline: auto;
|
||||||
|
|
@ -347,7 +368,7 @@ a { color: inherit; text-decoration: none; }
|
||||||
.footer-brand img { height: 38px; margin-bottom: 1rem; }
|
.footer-brand img { height: 38px; margin-bottom: 1rem; }
|
||||||
.footer-brand p {
|
.footer-brand p {
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
color: rgba(255,255,255,0.4);
|
color: rgba(255,255,255,0.62);
|
||||||
line-height: 1.75;
|
line-height: 1.75;
|
||||||
max-width: 260px;
|
max-width: 260px;
|
||||||
margin-bottom: 1.5rem;
|
margin-bottom: 1.5rem;
|
||||||
|
|
@ -364,7 +385,7 @@ a { color: inherit; text-decoration: none; }
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
color: rgba(255,255,255,0.45);
|
color: rgba(255,255,255,0.62);
|
||||||
font-size: 0.75rem;
|
font-size: 0.75rem;
|
||||||
transition: all 0.2s;
|
transition: all 0.2s;
|
||||||
}
|
}
|
||||||
|
|
@ -377,14 +398,14 @@ a { color: inherit; text-decoration: none; }
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
letter-spacing: 0.1em;
|
letter-spacing: 0.1em;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
color: rgba(255,255,255,0.3);
|
color: rgba(255,255,255,0.58);
|
||||||
margin-bottom: 1.25rem;
|
margin-bottom: 1.25rem;
|
||||||
}
|
}
|
||||||
.footer-col ul { list-style: none; }
|
.footer-col ul { list-style: none; }
|
||||||
.footer-col ul li { margin-bottom: 0.625rem; }
|
.footer-col ul li { margin-bottom: 0.625rem; }
|
||||||
.footer-col ul li a {
|
.footer-col ul li a {
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
color: rgba(255,255,255,0.5);
|
color: rgba(255,255,255,0.66);
|
||||||
transition: color 0.15s;
|
transition: color 0.15s;
|
||||||
}
|
}
|
||||||
.footer-col ul li a:hover { color: #fff; }
|
.footer-col ul li a:hover { color: #fff; }
|
||||||
|
|
@ -392,7 +413,7 @@ a { color: inherit; text-decoration: none; }
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 0.5rem;
|
gap: 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
color: rgba(255,255,255,0.5);
|
color: rgba(255,255,255,0.66);
|
||||||
margin-bottom: 0.5rem;
|
margin-bottom: 0.5rem;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
}
|
}
|
||||||
|
|
@ -407,7 +428,7 @@ a { color: inherit; text-decoration: none; }
|
||||||
}
|
}
|
||||||
.footer-bottom p {
|
.footer-bottom p {
|
||||||
font-size: 0.8125rem;
|
font-size: 0.8125rem;
|
||||||
color: rgba(255,255,255,0.28);
|
color: rgba(255,255,255,0.56);
|
||||||
}
|
}
|
||||||
.footer-bottom-links {
|
.footer-bottom-links {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
@ -416,7 +437,7 @@ a { color: inherit; text-decoration: none; }
|
||||||
}
|
}
|
||||||
.footer-bottom-links a {
|
.footer-bottom-links a {
|
||||||
font-size: 0.8125rem;
|
font-size: 0.8125rem;
|
||||||
color: rgba(255,255,255,0.28);
|
color: rgba(255,255,255,0.56);
|
||||||
transition: color 0.15s;
|
transition: color 0.15s;
|
||||||
}
|
}
|
||||||
.footer-bottom-links a:hover { color: rgba(255,255,255,0.65); }
|
.footer-bottom-links a:hover { color: rgba(255,255,255,0.65); }
|
||||||
|
|
|
||||||
142
assets/css/services.css
Normal file
142
assets/css/services.css
Normal file
|
|
@ -0,0 +1,142 @@
|
||||||
|
/* ── Services page (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
.grecaptcha-badge { visibility: hidden; }
|
||||||
|
|
||||||
|
/* ── Services Intro ── */
|
||||||
|
.services-intro-section { background: var(--surface); }
|
||||||
|
.services-intro-content {
|
||||||
|
max-width: 680px;
|
||||||
|
}
|
||||||
|
.services-intro-content .label { margin-bottom: 0.75rem; }
|
||||||
|
.services-intro-content p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1.0625rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
margin-top: 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Service Cards ── */
|
||||||
|
.services-cards-section {
|
||||||
|
background: var(--surface);
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
.services-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
gap: 1.5rem;
|
||||||
|
}
|
||||||
|
.service-card {
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
border-radius: 3px;
|
||||||
|
aspect-ratio: 4/5;
|
||||||
|
background: var(--warm-gray);
|
||||||
|
}
|
||||||
|
.service-card img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
object-fit: cover;
|
||||||
|
transition: transform 0.6s ease;
|
||||||
|
}
|
||||||
|
.service-card:hover img { transform: scale(1.04); }
|
||||||
|
.service-card-overlay {
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
background: linear-gradient(to top, rgba(20,16,12,0.88) 0%, rgba(20,16,12,0.1) 55%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 1.75rem;
|
||||||
|
}
|
||||||
|
.service-card-num {
|
||||||
|
font-size: 0.6875rem;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.12em;
|
||||||
|
color: var(--rose);
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.service-card h3 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 1.5rem;
|
||||||
|
color: #fff;
|
||||||
|
line-height: 1.15;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.service-card p {
|
||||||
|
font-size: 0.875rem;
|
||||||
|
color: rgba(255,255,255,0.65);
|
||||||
|
line-height: 1.6;
|
||||||
|
max-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: max-height 0.35s ease, opacity 0.35s ease;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
.service-card:hover p {
|
||||||
|
max-height: 5rem;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
.service-card-link {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.375rem;
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--rose);
|
||||||
|
margin-top: 0.875rem;
|
||||||
|
transition: gap 0.2s;
|
||||||
|
}
|
||||||
|
.service-card-link:hover { gap: 0.625rem; }
|
||||||
|
|
||||||
|
.service-card-wide {
|
||||||
|
grid-column: span 2;
|
||||||
|
aspect-ratio: 2/1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Contact Form Section ── */
|
||||||
|
.contact-section { background: var(--warm-gray); }
|
||||||
|
.contact-inner {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1.2fr;
|
||||||
|
gap: clamp(3rem, 6vw, 6rem);
|
||||||
|
align-items: start;
|
||||||
|
}
|
||||||
|
.contact-text .label { margin-bottom: 0.75rem; }
|
||||||
|
.contact-text h2 { margin-bottom: 1rem; }
|
||||||
|
.contact-text p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
}
|
||||||
|
.contact-form {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
.contact-form .form-group {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 0.375rem;
|
||||||
|
}
|
||||||
|
.contact-form .form-group.full-width {
|
||||||
|
grid-column: span 2;
|
||||||
|
}
|
||||||
|
.contact-form .form-group label .required {
|
||||||
|
color: var(--rose);
|
||||||
|
}
|
||||||
|
.form-submit {
|
||||||
|
grid-column: span 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Responsive (page-specific) ── */
|
||||||
|
@media (max-width: 1024px) {
|
||||||
|
.services-grid { grid-template-columns: 1fr 1fr; }
|
||||||
|
.service-card-wide { grid-column: span 2; aspect-ratio: 16/9; }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.services-grid { grid-template-columns: 1fr; }
|
||||||
|
.service-card-wide { grid-column: span 1; aspect-ratio: 4/3; }
|
||||||
|
.contact-inner { grid-template-columns: 1fr; }
|
||||||
|
.contact-form { grid-template-columns: 1fr; }
|
||||||
|
.contact-form .form-group.full-width { grid-column: span 1; }
|
||||||
|
.form-submit { grid-column: span 1; }
|
||||||
|
}
|
||||||
67
assets/css/social.css
Normal file
67
assets/css/social.css
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
/* ── Social Accountability page (extracted from inline <style>; consolidate shared rules into main.css) ── */
|
||||||
|
/* ── Intro ── */
|
||||||
|
.intro-section {
|
||||||
|
background: var(--surface);
|
||||||
|
}
|
||||||
|
.intro-content {
|
||||||
|
max-width: 800px;
|
||||||
|
}
|
||||||
|
.intro-content h2 {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: clamp(1.5rem, 3vw, 2.25rem);
|
||||||
|
line-height: 1.2;
|
||||||
|
color: var(--text);
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.intro-content p {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.8;
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Accordion ── */
|
||||||
|
.accordion-section {
|
||||||
|
background: var(--surface);
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
.accordion {
|
||||||
|
max-width: 800px;
|
||||||
|
}
|
||||||
|
.accordion details {
|
||||||
|
border-bottom: 1px solid var(--border);
|
||||||
|
}
|
||||||
|
.accordion details:first-child {
|
||||||
|
border-top: 1px solid var(--border);
|
||||||
|
}
|
||||||
|
.accordion summary {
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text);
|
||||||
|
padding: 1.25rem 0;
|
||||||
|
cursor: pointer;
|
||||||
|
list-style: none;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
.accordion summary::-webkit-details-marker { display: none; }
|
||||||
|
.accordion summary::after {
|
||||||
|
content: '+';
|
||||||
|
font-size: 1.25rem;
|
||||||
|
font-weight: 400;
|
||||||
|
color: var(--text-muted);
|
||||||
|
flex-shrink: 0;
|
||||||
|
transition: transform 0.2s;
|
||||||
|
}
|
||||||
|
.accordion details[open] summary::after {
|
||||||
|
content: '\2212';
|
||||||
|
}
|
||||||
|
.accordion details .accordion-body {
|
||||||
|
padding-bottom: 1.25rem;
|
||||||
|
color: var(--text-muted);
|
||||||
|
line-height: 1.75;
|
||||||
|
font-size: 0.9375rem;
|
||||||
|
}
|
||||||
|
|
||||||
BIN
assets/images/og-cover.jpg
Normal file
BIN
assets/images/og-cover.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 180 KiB |
BIN
assets/images/seahaven-logo-footer-new.webp
Normal file
BIN
assets/images/seahaven-logo-footer-new.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.8 KiB |
BIN
assets/images/seahaven-logo-nav-new.webp
Normal file
BIN
assets/images/seahaven-logo-nav-new.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
57
assets/js/form.js
Normal file
57
assets/js/form.js
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
// Basin AJAX submission with reCAPTCHA v3 for the contact form and job apply forms.
|
||||||
|
(function () {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
const SITE_KEY = "6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4";
|
||||||
|
// Contact page wraps the form in a .contact-form div; services puts the class
|
||||||
|
// on the <form> itself; job pages use .apply-form. Match all three.
|
||||||
|
const forms = document.querySelectorAll(".contact-form form, form.contact-form, form.apply-form");
|
||||||
|
if (!forms.length) return;
|
||||||
|
|
||||||
|
forms.forEach((form) => {
|
||||||
|
const success = document.getElementById("form-success");
|
||||||
|
const statusEl = document.getElementById("form-status"); // optional role="status" region
|
||||||
|
const tokenField = form.querySelector("#g-recaptcha-response");
|
||||||
|
const btn = form.querySelector('button[type="submit"]');
|
||||||
|
const originalLabel = btn ? btn.textContent : "";
|
||||||
|
|
||||||
|
const announce = (msg) => {
|
||||||
|
if (statusEl) statusEl.textContent = msg;
|
||||||
|
else if (msg) alert(msg);
|
||||||
|
};
|
||||||
|
|
||||||
|
form.addEventListener("submit", async (e) => {
|
||||||
|
e.preventDefault();
|
||||||
|
if (btn) {
|
||||||
|
btn.textContent = btn.dataset.sending || "Sending…";
|
||||||
|
btn.disabled = true;
|
||||||
|
}
|
||||||
|
announce("");
|
||||||
|
|
||||||
|
try {
|
||||||
|
const token = await grecaptcha.execute(SITE_KEY, { action: "submit" });
|
||||||
|
if (tokenField) tokenField.value = token;
|
||||||
|
const res = await fetch(form.action, {
|
||||||
|
method: "POST",
|
||||||
|
body: new FormData(form),
|
||||||
|
headers: { Accept: "application/json" },
|
||||||
|
});
|
||||||
|
if (!res.ok) throw new Error("Submission failed");
|
||||||
|
form.reset();
|
||||||
|
form.style.display = "none";
|
||||||
|
if (success) {
|
||||||
|
success.style.display = "block";
|
||||||
|
success.scrollIntoView({ behavior: "smooth", block: "center" });
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
if (btn) {
|
||||||
|
btn.textContent = originalLabel;
|
||||||
|
btn.disabled = false;
|
||||||
|
}
|
||||||
|
announce(
|
||||||
|
"Something went wrong. Please try again or email us directly at work-orders@seahaven.com"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})();
|
||||||
84
assets/js/nav.js
Normal file
84
assets/js/nav.js
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
// Shared site chrome behavior: sticky header, accessible mobile menu, hero parallax.
|
||||||
|
(function () {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
// ── Sticky header ──────────────────────────────────────────────
|
||||||
|
const header = document.getElementById("site-header");
|
||||||
|
if (header) {
|
||||||
|
const onScroll = () => header.classList.toggle("scrolled", window.scrollY > 40);
|
||||||
|
window.addEventListener("scroll", onScroll, { passive: true });
|
||||||
|
onScroll();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── Accessible mobile menu (dialog semantics) ──────────────────
|
||||||
|
const hamburger = document.getElementById("hamburger");
|
||||||
|
const mobileMenu = document.getElementById("mobile-menu");
|
||||||
|
const menuClose = document.getElementById("menu-close");
|
||||||
|
|
||||||
|
if (hamburger && mobileMenu && menuClose) {
|
||||||
|
const focusable = () =>
|
||||||
|
mobileMenu.querySelectorAll('a[href], button:not([disabled])');
|
||||||
|
|
||||||
|
const openMenu = () => {
|
||||||
|
mobileMenu.classList.add("open");
|
||||||
|
hamburger.setAttribute("aria-expanded", "true");
|
||||||
|
menuClose.focus();
|
||||||
|
document.addEventListener("keydown", onKeydown);
|
||||||
|
};
|
||||||
|
|
||||||
|
const closeMenu = () => {
|
||||||
|
mobileMenu.classList.remove("open");
|
||||||
|
hamburger.setAttribute("aria-expanded", "false");
|
||||||
|
document.removeEventListener("keydown", onKeydown);
|
||||||
|
hamburger.focus();
|
||||||
|
};
|
||||||
|
|
||||||
|
const onKeydown = (e) => {
|
||||||
|
if (e.key === "Escape") {
|
||||||
|
closeMenu();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (e.key !== "Tab") return;
|
||||||
|
// Focus trap
|
||||||
|
const items = focusable();
|
||||||
|
if (!items.length) return;
|
||||||
|
const first = items[0];
|
||||||
|
const last = items[items.length - 1];
|
||||||
|
if (e.shiftKey && document.activeElement === first) {
|
||||||
|
e.preventDefault();
|
||||||
|
last.focus();
|
||||||
|
} else if (!e.shiftKey && document.activeElement === last) {
|
||||||
|
e.preventDefault();
|
||||||
|
first.focus();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
hamburger.addEventListener("click", openMenu);
|
||||||
|
menuClose.addEventListener("click", closeMenu);
|
||||||
|
mobileMenu.querySelectorAll("a").forEach((a) =>
|
||||||
|
a.addEventListener("click", closeMenu)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── Hero parallax (homepage only), rAF-throttled ───────────────
|
||||||
|
const heroBg = document.getElementById("hero-bg");
|
||||||
|
if (heroBg) {
|
||||||
|
let ticking = false;
|
||||||
|
const update = () => {
|
||||||
|
if (window.scrollY < window.innerHeight) {
|
||||||
|
heroBg.style.transform = `scale(1.03) translateY(${window.scrollY * 0.18}px)`;
|
||||||
|
}
|
||||||
|
ticking = false;
|
||||||
|
};
|
||||||
|
window.addEventListener(
|
||||||
|
"scroll",
|
||||||
|
() => {
|
||||||
|
if (!ticking) {
|
||||||
|
window.requestAnimationFrame(update);
|
||||||
|
ticking = true;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{ passive: true }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
|
@ -1,502 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Dispatcher — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Apply for the Dispatcher position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:title" content="Dispatcher — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Apply for the Dispatcher position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/careers/dispatcher/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/careers/dispatcher/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.grecaptcha-badge { visibility: hidden; }
|
|
||||||
|
|
||||||
/* ── Job Details ── */
|
|
||||||
.back-link {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 500;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-top: 1rem;
|
|
||||||
transition: color 0.15s;
|
|
||||||
}
|
|
||||||
.back-link:hover { color: var(--rose-dark); }
|
|
||||||
.job-details { background: var(--surface); }
|
|
||||||
.job-layout {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 340px;
|
|
||||||
gap: clamp(2.5rem, 5vw, 4rem);
|
|
||||||
align-items: start;
|
|
||||||
}
|
|
||||||
|
|
||||||
.job-content h2 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(1.25rem, 2.5vw, 1.75rem);
|
|
||||||
line-height: 1.2;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
}
|
|
||||||
.job-summary {
|
|
||||||
font-size: 1.125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.6;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-left: 3px solid var(--rose);
|
|
||||||
border-radius: 2px;
|
|
||||||
}
|
|
||||||
.job-content h2:first-child { margin-top: 0; }
|
|
||||||
.job-content p {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.job-content ul {
|
|
||||||
list-style: none;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.job-content ul li {
|
|
||||||
position: relative;
|
|
||||||
padding-left: 1.25rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
.job-content ul li::before {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0.625rem;
|
|
||||||
width: 6px;
|
|
||||||
height: 6px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: var(--rose);
|
|
||||||
}
|
|
||||||
.job-note {
|
|
||||||
margin-top: 2rem;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-radius: 3px;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--ink-mid);
|
|
||||||
line-height: 1.6;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Job Sidebar ── */
|
|
||||||
.job-sidebar {
|
|
||||||
position: sticky;
|
|
||||||
top: 100px;
|
|
||||||
background: var(--body-bg);
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: clamp(1.5rem, 3vw, 2rem);
|
|
||||||
}
|
|
||||||
.job-sidebar h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.25rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.sidebar-item {
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-label {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.08em;
|
|
||||||
text-transform: uppercase;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-value {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.5;
|
|
||||||
}
|
|
||||||
.sidebar-cta {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Application Form ── */
|
|
||||||
.apply-section { background: var(--warm-gray); }
|
|
||||||
.apply-section h2 {
|
|
||||||
margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
|
|
||||||
}
|
|
||||||
.apply-form {
|
|
||||||
max-width: 640px;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"] {
|
|
||||||
width: 100%;
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
padding: 0.75rem 0 0.75rem 0.75rem;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button {
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
padding: 0.5rem 1.25rem;
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 2px;
|
|
||||||
background: var(--surface);
|
|
||||||
color: var(--text);
|
|
||||||
cursor: pointer;
|
|
||||||
margin-right: 1rem;
|
|
||||||
transition: all 0.2s;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button:hover {
|
|
||||||
border-color: var(--rose);
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr 280px; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr; }
|
|
||||||
.job-sidebar { position: static; order: -1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org/",
|
|
||||||
"@type": "JobPosting",
|
|
||||||
"title": "Dispatcher",
|
|
||||||
"description": "Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities. You'll be responsible for triaging and coordinating emergency and preventive work orders across the U.S., deciding in real time whether to deploy internal technicians or source external vendors.",
|
|
||||||
"datePosted": "2025-04-01",
|
|
||||||
"validThrough": "2026-12-31",
|
|
||||||
"employmentType": "FULL_TIME",
|
|
||||||
"hiringOrganization": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "Sea Haven Industries",
|
|
||||||
"sameAs": "https://seahaven.com",
|
|
||||||
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
|
||||||
},
|
|
||||||
"jobLocation": {
|
|
||||||
"@type": "Place",
|
|
||||||
"address": {
|
|
||||||
"@type": "PostalAddress",
|
|
||||||
"streetAddress": "710 Koehler Ave",
|
|
||||||
"addressLocality": "Ronkonkoma",
|
|
||||||
"addressRegion": "NY",
|
|
||||||
"postalCode": "11779",
|
|
||||||
"addressCountry": "US"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"baseSalary": {
|
|
||||||
"@type": "MonetaryAmount",
|
|
||||||
"currency": "USD",
|
|
||||||
"value": {
|
|
||||||
"@type": "QuantitativeValue",
|
|
||||||
"minValue": 72000,
|
|
||||||
"maxValue": 80000,
|
|
||||||
"unitText": "YEAR"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"jobBenefits": "PTO, 401(k) matching, hybrid flexibility",
|
|
||||||
"applicantLocationRequirements": {
|
|
||||||
"@type": "Country",
|
|
||||||
"name": "US"
|
|
||||||
},
|
|
||||||
"directApply": true
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<span>/</span>
|
|
||||||
Dispatcher
|
|
||||||
</nav>
|
|
||||||
<h1>Dispatcher</h1>
|
|
||||||
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Job Details ── -->
|
|
||||||
<section class="job-details section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="job-layout">
|
|
||||||
|
|
||||||
<!-- Main Content -->
|
|
||||||
<div class="job-content">
|
|
||||||
<p class="job-summary">You’re the control center for 50+ technicians across the U.S.—triaging emergency work orders, sourcing vendors, and making sure every job closes clean.</p>
|
|
||||||
<h2>About the Role</h2>
|
|
||||||
<p>Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities. This is not a typical scheduling role. You’ll be responsible for triaging and coordinating emergency and preventive work orders across the U.S.—often under tight SLAs—deciding in real time whether to deploy internal technicians or source external vendors.</p>
|
|
||||||
<p>You are the control center. When something breaks, you make sure the right person is on-site, on time, and the job gets closed—without needing to be chased. If you naturally take ownership, stay calm under pressure, and don’t let things slip, you’ll do well here.</p>
|
|
||||||
|
|
||||||
<h2>What You’ll Do</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Own incoming work orders end-to-end—from intake to completion, ensuring nothing stalls or falls through</li>
|
|
||||||
<li>Triage and prioritize requests based on urgency (Priority 1–5) and SLA requirements</li>
|
|
||||||
<li>Dispatch and coordinate 50+ technicians nationwide, factoring in location, availability, and response time</li>
|
|
||||||
<li>Make judgment calls on when to use in-house techs vs. third-party vendors—especially in remote or hard-to-cover regions</li>
|
|
||||||
<li>Source and coordinate external vendors when needed (including last-minute/emergency coverage)</li>
|
|
||||||
<li>Manage active jobs across multiple time zones, tracking progress and proactively following up on delays</li>
|
|
||||||
<li>Handle high-pressure emergency requests requiring response times as fast as 1–4 hours</li>
|
|
||||||
<li>Ensure clean job closure—including proper documentation, status updates, and invoice follow-ups</li>
|
|
||||||
<li>Identify breakdowns in scheduling, coverage, or execution and flag issues before they escalate</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>What This Role Is Really Like</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Some days are steady. Others are fast, reactive, and unpredictable</li>
|
|
||||||
<li>You may be juggling multiple active work orders across different states and urgency levels</li>
|
|
||||||
<li>Fast-paced environment—you’ll need to act quickly with incomplete information</li>
|
|
||||||
<li>Finding coverage in remote areas can require creativity and persistence</li>
|
|
||||||
<li>Success depends on constant follow-up—not just dispatching, but making sure the job actually gets done</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>What We’re Looking For</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Experience in dispatching, logistics, or field service coordination (multi-region or nationwide strongly preferred)</li>
|
|
||||||
<li>Proven ability to manage high-volume, time-sensitive workflows without losing track of details</li>
|
|
||||||
<li>Strong decision-making skills—you can assess situations quickly and act without hand-holding</li>
|
|
||||||
<li>Excellent communication—comfortable coordinating with technicians, vendors, and clients all day</li>
|
|
||||||
<li>Highly organized with a relentless follow-up mindset</li>
|
|
||||||
<li>Resourceful—able to find solutions when coverage is limited or plans fall through</li>
|
|
||||||
<li>Comfortable working with systems like Slack and standard office tools</li>
|
|
||||||
<li>Calm under pressure and able to re-prioritize in real time</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<div class="job-note">
|
|
||||||
People with a criminal record are encouraged to apply.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Sidebar -->
|
|
||||||
<aside class="job-sidebar">
|
|
||||||
<h3>Job Overview</h3>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Job Type</div>
|
|
||||||
<div class="sidebar-item-value">Full-time</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Pay</div>
|
|
||||||
<div class="sidebar-item-value">$72,000–$80,000/year</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Schedule</div>
|
|
||||||
<div class="sidebar-item-value">Monday to Friday</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Benefits</div>
|
|
||||||
<div class="sidebar-item-value">PTO + 401(k) matching</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Work Location</div>
|
|
||||||
<div class="sidebar-item-value">Ronkonkoma, NY<br>Hybrid flexibility available</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
|
||||||
</aside>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Application Form ── -->
|
|
||||||
<section class="apply-section section" id="apply-section">
|
|
||||||
<div class="container">
|
|
||||||
<h2 class="display-md">Apply For This Position</h2>
|
|
||||||
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
|
||||||
<strong style="color: var(--text);">Application received!</strong>
|
|
||||||
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
|
||||||
</div>
|
|
||||||
<form class="apply-form" action="https://usebasin.com/f/611f7992dbf9" method="POST" enctype="multipart/form-data">
|
|
||||||
<input type="hidden" name="_gotcha" style="display:none">
|
|
||||||
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
|
||||||
<input type="hidden" name="g-recaptcha-version" value="v3">
|
|
||||||
<input type="hidden" name="_next" value="https://seahaven.com/careers/dispatcher/?submitted=true">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-name">Name *</label>
|
|
||||||
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-email">Email *</label>
|
|
||||||
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-phone">Phone *</label>
|
|
||||||
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-cover">Cover Letter</label>
|
|
||||||
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-resume">Resume *</label>
|
|
||||||
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
|
||||||
</div>
|
|
||||||
<div class="form-submit">
|
|
||||||
<button type="submit" class="btn btn-primary">Submit Application</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
|
|
||||||
// AJAX form submission
|
|
||||||
const applyForm = document.querySelector('.apply-form');
|
|
||||||
const successMsg = document.getElementById('form-success');
|
|
||||||
applyForm.addEventListener('submit', async (e) => {
|
|
||||||
e.preventDefault();
|
|
||||||
const btn = applyForm.querySelector('button[type="submit"]');
|
|
||||||
btn.textContent = 'Submitting...';
|
|
||||||
btn.disabled = true;
|
|
||||||
try {
|
|
||||||
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
|
|
||||||
document.getElementById('g-recaptcha-response').value = token;
|
|
||||||
const data = new FormData(applyForm);
|
|
||||||
const res = await fetch(applyForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
|
|
||||||
if (res.ok) {
|
|
||||||
applyForm.reset();
|
|
||||||
applyForm.style.display = 'none';
|
|
||||||
successMsg.style.display = 'block';
|
|
||||||
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
||||||
} else {
|
|
||||||
throw new Error('Submission failed');
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
btn.textContent = 'Submit Application';
|
|
||||||
btn.disabled = false;
|
|
||||||
alert('Something went wrong. Please try again or email your resume to work-orders@seahaven.com');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
193
careers/dispatcher/index.njk
Normal file
193
careers/dispatcher/index.njk
Normal file
|
|
@ -0,0 +1,193 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Dispatcher — Sea Haven Industries"
|
||||||
|
description: "Apply for the Dispatcher position at Sea Haven Industries. View job details and submit your application today."
|
||||||
|
pageCss: jobs
|
||||||
|
recaptcha: true
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<a href="/careers/">Careers</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
Dispatcher
|
||||||
|
</nav>
|
||||||
|
<h1>Dispatcher</h1>
|
||||||
|
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Job Details ── -->
|
||||||
|
<section class="job-details section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="job-layout">
|
||||||
|
|
||||||
|
<!-- Main Content -->
|
||||||
|
<div class="job-content">
|
||||||
|
<p class="job-summary">You’re the control center for 50+ technicians across the U.S.—triaging emergency work orders, sourcing vendors, and making sure every job closes clean.</p>
|
||||||
|
<h2>About the Role</h2>
|
||||||
|
<p>Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities. This is not a typical scheduling role. You’ll be responsible for triaging and coordinating emergency and preventive work orders across the U.S.—often under tight SLAs—deciding in real time whether to deploy internal technicians or source external vendors.</p>
|
||||||
|
<p>You are the control center. When something breaks, you make sure the right person is on-site, on time, and the job gets closed—without needing to be chased. If you naturally take ownership, stay calm under pressure, and don’t let things slip, you’ll do well here.</p>
|
||||||
|
|
||||||
|
<h2>What You’ll Do</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Own incoming work orders end-to-end—from intake to completion, ensuring nothing stalls or falls through</li>
|
||||||
|
<li>Triage and prioritize requests based on urgency (Priority 1–5) and SLA requirements</li>
|
||||||
|
<li>Dispatch and coordinate 50+ technicians nationwide, factoring in location, availability, and response time</li>
|
||||||
|
<li>Make judgment calls on when to use in-house techs vs. third-party vendors—especially in remote or hard-to-cover regions</li>
|
||||||
|
<li>Source and coordinate external vendors when needed (including last-minute/emergency coverage)</li>
|
||||||
|
<li>Manage active jobs across multiple time zones, tracking progress and proactively following up on delays</li>
|
||||||
|
<li>Handle high-pressure emergency requests requiring response times as fast as 1–4 hours</li>
|
||||||
|
<li>Ensure clean job closure—including proper documentation, status updates, and invoice follow-ups</li>
|
||||||
|
<li>Identify breakdowns in scheduling, coverage, or execution and flag issues before they escalate</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>What This Role Is Really Like</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Some days are steady. Others are fast, reactive, and unpredictable</li>
|
||||||
|
<li>You may be juggling multiple active work orders across different states and urgency levels</li>
|
||||||
|
<li>Fast-paced environment—you’ll need to act quickly with incomplete information</li>
|
||||||
|
<li>Finding coverage in remote areas can require creativity and persistence</li>
|
||||||
|
<li>Success depends on constant follow-up—not just dispatching, but making sure the job actually gets done</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>What We’re Looking For</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Experience in dispatching, logistics, or field service coordination (multi-region or nationwide strongly preferred)</li>
|
||||||
|
<li>Proven ability to manage high-volume, time-sensitive workflows without losing track of details</li>
|
||||||
|
<li>Strong decision-making skills—you can assess situations quickly and act without hand-holding</li>
|
||||||
|
<li>Excellent communication—comfortable coordinating with technicians, vendors, and clients all day</li>
|
||||||
|
<li>Highly organized with a relentless follow-up mindset</li>
|
||||||
|
<li>Resourceful—able to find solutions when coverage is limited or plans fall through</li>
|
||||||
|
<li>Comfortable working with systems like Slack and standard office tools</li>
|
||||||
|
<li>Calm under pressure and able to re-prioritize in real time</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="job-note">
|
||||||
|
People with a criminal record are encouraged to apply.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Sidebar -->
|
||||||
|
<aside class="job-sidebar">
|
||||||
|
<h3>Job Overview</h3>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Job Type</div>
|
||||||
|
<div class="sidebar-item-value">Full-time</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Pay</div>
|
||||||
|
<div class="sidebar-item-value">$72,000–$80,000/year</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Schedule</div>
|
||||||
|
<div class="sidebar-item-value">Monday to Friday</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Benefits</div>
|
||||||
|
<div class="sidebar-item-value">PTO + 401(k) matching</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Work Location</div>
|
||||||
|
<div class="sidebar-item-value">Ronkonkoma, NY<br>Hybrid flexibility available</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
||||||
|
</aside>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Application Form ── -->
|
||||||
|
<section class="apply-section section" id="apply-section">
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="display-md">Apply For This Position</h2>
|
||||||
|
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
||||||
|
<strong style="color: var(--text);">Application received!</strong>
|
||||||
|
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
||||||
|
</div>
|
||||||
|
<form class="apply-form" action="https://usebasin.com/f/611f7992dbf9" method="POST" enctype="multipart/form-data">
|
||||||
|
<input type="hidden" name="_gotcha" style="display:none">
|
||||||
|
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
||||||
|
<input type="hidden" name="g-recaptcha-version" value="v3">
|
||||||
|
<input type="hidden" name="_next" value="https://seahaven.com/careers/dispatcher/?submitted=true">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-name">Name *</label>
|
||||||
|
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-email">Email *</label>
|
||||||
|
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-phone">Phone *</label>
|
||||||
|
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-cover">Cover Letter</label>
|
||||||
|
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-resume">Resume *</label>
|
||||||
|
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
||||||
|
</div>
|
||||||
|
<div class="form-submit">
|
||||||
|
<button type="submit" class="btn btn-primary">Submit Application</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<script type="application/ld+json">
|
||||||
|
{
|
||||||
|
"@context": "https://schema.org/",
|
||||||
|
"@type": "JobPosting",
|
||||||
|
"title": "Dispatcher",
|
||||||
|
"description": "Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities. You'll be responsible for triaging and coordinating emergency and preventive work orders across the U.S., deciding in real time whether to deploy internal technicians or source external vendors.",
|
||||||
|
"datePosted": "2025-04-01",
|
||||||
|
"validThrough": "2026-12-31",
|
||||||
|
"employmentType": "FULL_TIME",
|
||||||
|
"hiringOrganization": {
|
||||||
|
"@type": "Organization",
|
||||||
|
"name": "Sea Haven Industries",
|
||||||
|
"sameAs": "https://seahaven.com",
|
||||||
|
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
||||||
|
},
|
||||||
|
"jobLocation": {
|
||||||
|
"@type": "Place",
|
||||||
|
"address": {
|
||||||
|
"@type": "PostalAddress",
|
||||||
|
"streetAddress": "710 Koehler Ave",
|
||||||
|
"addressLocality": "Ronkonkoma",
|
||||||
|
"addressRegion": "NY",
|
||||||
|
"postalCode": "11779",
|
||||||
|
"addressCountry": "US"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"baseSalary": {
|
||||||
|
"@type": "MonetaryAmount",
|
||||||
|
"currency": "USD",
|
||||||
|
"value": {
|
||||||
|
"@type": "QuantitativeValue",
|
||||||
|
"minValue": 72000,
|
||||||
|
"maxValue": 80000,
|
||||||
|
"unitText": "YEAR"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"jobBenefits": "PTO, 401(k) matching, hybrid flexibility",
|
||||||
|
"applicantLocationRequirements": {
|
||||||
|
"@type": "Country",
|
||||||
|
"name": "US"
|
||||||
|
},
|
||||||
|
"directApply": true
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
@ -1,379 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Careers — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Join the Sea Haven Industries team. Explore careers opportunities and grow with a company committed to staff development and excellence in construction.">
|
|
||||||
<meta property="og:title" content="Careers — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Join the Sea Haven Industries team. Explore careers opportunities and grow with a company committed to staff development and excellence in construction.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/careers/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/careers/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Careers Intro ── */
|
|
||||||
.careers-intro { background: var(--surface); }
|
|
||||||
.careers-intro .label { margin-bottom: 0.75rem; }
|
|
||||||
.careers-intro h2 { margin-bottom: 1.25rem; }
|
|
||||||
.careers-intro p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
max-width: 680px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Careers Hero (override) ── */
|
|
||||||
.careers-hero {
|
|
||||||
background: linear-gradient(rgba(26,24,20,0.7), rgba(26,24,20,0.75)),
|
|
||||||
url('/assets/images/team-at-work.webp') center/cover no-repeat;
|
|
||||||
padding: 160px 0 80px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Why Work Here ── */
|
|
||||||
.why-section { background: var(--surface); }
|
|
||||||
.why-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(4, 1fr);
|
|
||||||
gap: clamp(1.5rem, 3vw, 2rem);
|
|
||||||
}
|
|
||||||
.why-card {
|
|
||||||
padding: clamp(1.5rem, 3vw, 2rem);
|
|
||||||
background: var(--body-bg);
|
|
||||||
border-radius: 3px;
|
|
||||||
border-top: 3px solid var(--rose);
|
|
||||||
}
|
|
||||||
.why-card h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.125rem;
|
|
||||||
line-height: 1.3;
|
|
||||||
margin-bottom: 0.625rem;
|
|
||||||
}
|
|
||||||
.why-card p {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Open Positions ── */
|
|
||||||
.positions-section { background: var(--warm-gray); }
|
|
||||||
.positions-section h2 {
|
|
||||||
margin-bottom: clamp(2rem, 4vw, 3rem);
|
|
||||||
}
|
|
||||||
.job-card {
|
|
||||||
position: relative;
|
|
||||||
background: var(--surface);
|
|
||||||
border-left: 4px solid var(--rose);
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: clamp(1.5rem, 3vw, 2.5rem);
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
box-shadow: 0 1px 3px rgba(0,0,0,0.04);
|
|
||||||
transition: box-shadow 0.2s, transform 0.2s;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
.job-card:hover {
|
|
||||||
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
|
|
||||||
transform: translateY(-2px);
|
|
||||||
}
|
|
||||||
.job-card h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.5rem;
|
|
||||||
line-height: 1.2;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
}
|
|
||||||
.job-meta {
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
gap: 1rem;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.job-badge {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.04em;
|
|
||||||
padding: 0.25rem 0.75rem;
|
|
||||||
border-radius: 2px;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
.job-meta-item {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
}
|
|
||||||
.job-salary {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.125rem;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
}
|
|
||||||
.job-card > p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
line-height: 1.7;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.job-link {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.375rem;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--rose);
|
|
||||||
transition: color 0.15s;
|
|
||||||
}
|
|
||||||
.job-link::after {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
inset: 0;
|
|
||||||
}
|
|
||||||
.job-link:hover { color: var(--rose-dark); }
|
|
||||||
|
|
||||||
/* ── CTA Section ── */
|
|
||||||
.cta-section {
|
|
||||||
background: var(--ink);
|
|
||||||
text-align: center;
|
|
||||||
padding: clamp(4rem, 8vw, 6rem) 0;
|
|
||||||
}
|
|
||||||
.cta-section h2 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(1.75rem, 3.5vw, 2.75rem);
|
|
||||||
line-height: 1.15;
|
|
||||||
color: #fff;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.cta-section p {
|
|
||||||
font-size: 1rem;
|
|
||||||
color: rgba(255,255,255,0.55);
|
|
||||||
line-height: 1.75;
|
|
||||||
max-width: 540px;
|
|
||||||
margin: 0 auto 2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.why-grid { grid-template-columns: repeat(2, 1fr); }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.job-meta { flex-direction: column; gap: 0.5rem; align-items: flex-start; }
|
|
||||||
.why-grid { grid-template-columns: 1fr; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero careers-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
Careers
|
|
||||||
</nav>
|
|
||||||
<h1>Join Our Team</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Careers Intro ── -->
|
|
||||||
<section class="careers-intro section">
|
|
||||||
<div class="container">
|
|
||||||
<p class="label">Careers</p>
|
|
||||||
<h2 class="display-md">Build Your Future With Us</h2>
|
|
||||||
<p>At Sea Haven Industries, we're always looking for skilled, dedicated professionals to join our growing team. We value hard work, integrity, and a commitment to excellence.</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Open Positions ── -->
|
|
||||||
<section class="positions-section section">
|
|
||||||
<div class="container">
|
|
||||||
<h2 class="display-md">Open Positions</h2>
|
|
||||||
|
|
||||||
<article class="job-card">
|
|
||||||
<h3>Dispatcher</h3>
|
|
||||||
<div class="job-salary">$72,000–$80,000 per year</div>
|
|
||||||
<div class="job-meta">
|
|
||||||
<span class="job-badge">Full-time</span>
|
|
||||||
<span class="job-meta-item">Ronkonkoma, NY 11779</span>
|
|
||||||
<span class="job-meta-item">Monday to Friday, 9am–5pm</span>
|
|
||||||
</div>
|
|
||||||
<p>Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities</p>
|
|
||||||
<a href="/careers/dispatcher/" class="job-link">Learn more →</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="job-card">
|
|
||||||
<h3>Scheduling Coordinator</h3>
|
|
||||||
<div class="job-salary">$70,000–$80,000 per year</div>
|
|
||||||
<div class="job-meta">
|
|
||||||
<span class="job-badge">Full-time</span>
|
|
||||||
<span class="job-meta-item">Ronkonkoma, NY 11779</span>
|
|
||||||
<span class="job-meta-item">Monday to Friday, 9am–5pm</span>
|
|
||||||
</div>
|
|
||||||
<p>A high-ownership role coordinating preventive maintenance work-order scheduling across industrial facilities nationwide—keeping jobs organized, tracked, and closed out clean.</p>
|
|
||||||
<a href="/careers/scheduling-coordinator/" class="job-link">Learn more →</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="job-card">
|
|
||||||
<h3>Traveling Maintenance / Electrical Assistant</h3>
|
|
||||||
<div class="job-salary">$63,000–$80,000 per year</div>
|
|
||||||
<div class="job-meta">
|
|
||||||
<span class="job-badge">Full-time</span>
|
|
||||||
<span class="job-meta-item">Lafayette, LA 70508</span>
|
|
||||||
<span class="job-meta-item">Monday to Friday, with occasional project-based weekends</span>
|
|
||||||
</div>
|
|
||||||
<p>This is a hands-on, travel-heavy role designed for someone who wants to learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.</p>
|
|
||||||
<a href="/careers/traveling-maintenance-assistant/" class="job-link">Learn more →</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Why Work Here ── -->
|
|
||||||
<section class="why-section section">
|
|
||||||
<div class="container">
|
|
||||||
<p class="label">Why Sea Haven</p>
|
|
||||||
<h2 class="display-md" style="margin-bottom: clamp(2rem, 4vw, 3rem);">Why Work Here</h2>
|
|
||||||
<div class="why-grid">
|
|
||||||
<div class="why-card">
|
|
||||||
<h3>Above-Market Pay</h3>
|
|
||||||
<p>Competitive salaries with daily per diem on travel roles. Most field team members clear $75K+ in their first year.</p>
|
|
||||||
</div>
|
|
||||||
<div class="why-card">
|
|
||||||
<h3>Benefits From Day One</h3>
|
|
||||||
<p>PTO and 401(k) matching included. We invest in the people who show up and do the work.</p>
|
|
||||||
</div>
|
|
||||||
<div class="why-card">
|
|
||||||
<h3>Hands-On Mentorship</h3>
|
|
||||||
<p>Work directly alongside experienced professionals. Real skill development through apprentice-style training—no classrooms.</p>
|
|
||||||
</div>
|
|
||||||
<div class="why-card">
|
|
||||||
<h3>No Red Tape</h3>
|
|
||||||
<p>Small team, field-focused, straightforward work. You’ll have real ownership and direct access to leadership.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── CTA ── -->
|
|
||||||
<section class="cta-section">
|
|
||||||
<div class="container">
|
|
||||||
<h2>Don't see a role that fits?</h2>
|
|
||||||
<p>We're always interested in hearing from talented individuals. Send us your resume and let us know how you can contribute to our team.</p>
|
|
||||||
<a href="/contact/" class="btn btn-ghost-light">Contact Us</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
105
careers/index.njk
Normal file
105
careers/index.njk
Normal file
|
|
@ -0,0 +1,105 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Careers — Sea Haven Industries"
|
||||||
|
description: "Join the Sea Haven Industries team. Explore careers opportunities and grow with a company committed to staff development and excellence in construction."
|
||||||
|
pageCss: careers
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero careers-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
Careers
|
||||||
|
</nav>
|
||||||
|
<h1>Join Our Team</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Careers Intro ── -->
|
||||||
|
<section class="careers-intro section">
|
||||||
|
<div class="container">
|
||||||
|
<p class="label">Careers</p>
|
||||||
|
<h2 class="display-md">Build Your Future With Us</h2>
|
||||||
|
<p>At Sea Haven Industries, we're always looking for skilled, dedicated professionals to join our growing team. We value hard work, integrity, and a commitment to excellence.</p>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Open Positions ── -->
|
||||||
|
<section class="positions-section section">
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="display-md">Open Positions</h2>
|
||||||
|
|
||||||
|
<article class="job-card">
|
||||||
|
<h3>Dispatcher</h3>
|
||||||
|
<div class="job-salary">$72,000–$80,000 per year</div>
|
||||||
|
<div class="job-meta">
|
||||||
|
<span class="job-badge">Full-time</span>
|
||||||
|
<span class="job-meta-item">Ronkonkoma, NY 11779</span>
|
||||||
|
<span class="job-meta-item">Monday to Friday, 9am–5pm</span>
|
||||||
|
</div>
|
||||||
|
<p>Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities</p>
|
||||||
|
<a href="/careers/dispatcher/" class="job-link" aria-label="Learn more about the Dispatcher position">Learn more →</a>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="job-card">
|
||||||
|
<h3>Scheduling Coordinator</h3>
|
||||||
|
<div class="job-salary">$70,000–$80,000 per year</div>
|
||||||
|
<div class="job-meta">
|
||||||
|
<span class="job-badge">Full-time</span>
|
||||||
|
<span class="job-meta-item">Ronkonkoma, NY 11779</span>
|
||||||
|
<span class="job-meta-item">Monday to Friday, 9am–5pm</span>
|
||||||
|
</div>
|
||||||
|
<p>A high-ownership role coordinating preventive maintenance work-order scheduling across industrial facilities nationwide—keeping jobs organized, tracked, and closed out clean.</p>
|
||||||
|
<a href="/careers/scheduling-coordinator/" class="job-link" aria-label="Learn more about the Scheduling Coordinator position">Learn more →</a>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="job-card">
|
||||||
|
<h3>Traveling Maintenance / Electrical Assistant</h3>
|
||||||
|
<div class="job-salary">$63,000–$80,000 per year</div>
|
||||||
|
<div class="job-meta">
|
||||||
|
<span class="job-badge">Full-time</span>
|
||||||
|
<span class="job-meta-item">Lafayette, LA 70508</span>
|
||||||
|
<span class="job-meta-item">Monday to Friday, with occasional project-based weekends</span>
|
||||||
|
</div>
|
||||||
|
<p>This is a hands-on, travel-heavy role designed for someone who wants to learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.</p>
|
||||||
|
<a href="/careers/traveling-maintenance-assistant/" class="job-link" aria-label="Learn more about the Traveling Maintenance / Electrical Assistant position">Learn more →</a>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Why Work Here ── -->
|
||||||
|
<section class="why-section section">
|
||||||
|
<div class="container">
|
||||||
|
<p class="label">Why Sea Haven</p>
|
||||||
|
<h2 class="display-md" style="margin-bottom: clamp(2rem, 4vw, 3rem);">Why Work Here</h2>
|
||||||
|
<div class="why-grid">
|
||||||
|
<div class="why-card">
|
||||||
|
<h3>Above-Market Pay</h3>
|
||||||
|
<p>Competitive salaries with daily per diem on travel roles. Most field team members clear $75K+ in their first year.</p>
|
||||||
|
</div>
|
||||||
|
<div class="why-card">
|
||||||
|
<h3>Benefits From Day One</h3>
|
||||||
|
<p>PTO and 401(k) matching included. We invest in the people who show up and do the work.</p>
|
||||||
|
</div>
|
||||||
|
<div class="why-card">
|
||||||
|
<h3>Hands-On Mentorship</h3>
|
||||||
|
<p>Work directly alongside experienced professionals. Real skill development through apprentice-style training—no classrooms.</p>
|
||||||
|
</div>
|
||||||
|
<div class="why-card">
|
||||||
|
<h3>No Red Tape</h3>
|
||||||
|
<p>Small team, field-focused, straightforward work. You’ll have real ownership and direct access to leadership.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── CTA ── -->
|
||||||
|
<section class="cta-section">
|
||||||
|
<div class="container">
|
||||||
|
<h2>Don't see a role that fits?</h2>
|
||||||
|
<p>We're always interested in hearing from talented individuals. Send us your resume and let us know how you can contribute to our team.</p>
|
||||||
|
<a href="/contact/" class="btn btn-ghost-light">Contact Us</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,521 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Scheduling Coordinator — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Apply for the Scheduling Coordinator position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:title" content="Scheduling Coordinator — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Apply for the Scheduling Coordinator position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/careers/scheduling-coordinator/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/careers/scheduling-coordinator/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.grecaptcha-badge { visibility: hidden; }
|
|
||||||
|
|
||||||
/* ── Job Details ── */
|
|
||||||
.back-link {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 500;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-top: 1rem;
|
|
||||||
transition: color 0.15s;
|
|
||||||
}
|
|
||||||
.back-link:hover { color: var(--rose-dark); }
|
|
||||||
.job-details { background: var(--surface); }
|
|
||||||
.job-layout {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 340px;
|
|
||||||
gap: clamp(2.5rem, 5vw, 4rem);
|
|
||||||
align-items: start;
|
|
||||||
}
|
|
||||||
|
|
||||||
.job-content h2 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(1.25rem, 2.5vw, 1.75rem);
|
|
||||||
line-height: 1.2;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
}
|
|
||||||
.job-summary {
|
|
||||||
font-size: 1.125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.6;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-left: 3px solid var(--rose);
|
|
||||||
border-radius: 2px;
|
|
||||||
}
|
|
||||||
.job-content h2:first-child { margin-top: 0; }
|
|
||||||
.job-content p {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.job-content ul {
|
|
||||||
list-style: none;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.job-content ul li {
|
|
||||||
position: relative;
|
|
||||||
padding-left: 1.25rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
.job-content ul li::before {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0.625rem;
|
|
||||||
width: 6px;
|
|
||||||
height: 6px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: var(--rose);
|
|
||||||
}
|
|
||||||
.job-note {
|
|
||||||
margin-top: 2rem;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-radius: 3px;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--ink-mid);
|
|
||||||
line-height: 1.6;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Job Sidebar ── */
|
|
||||||
.job-sidebar {
|
|
||||||
position: sticky;
|
|
||||||
top: 100px;
|
|
||||||
background: var(--body-bg);
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: clamp(1.5rem, 3vw, 2rem);
|
|
||||||
}
|
|
||||||
.job-sidebar h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.25rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.sidebar-item {
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-label {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.08em;
|
|
||||||
text-transform: uppercase;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-value {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.5;
|
|
||||||
}
|
|
||||||
.sidebar-cta {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Application Form ── */
|
|
||||||
.apply-section { background: var(--warm-gray); }
|
|
||||||
.apply-section h2 {
|
|
||||||
margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
|
|
||||||
}
|
|
||||||
.apply-form {
|
|
||||||
max-width: 640px;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"] {
|
|
||||||
width: 100%;
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
padding: 0.75rem 0 0.75rem 0.75rem;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button {
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
padding: 0.5rem 1.25rem;
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 2px;
|
|
||||||
background: var(--surface);
|
|
||||||
color: var(--text);
|
|
||||||
cursor: pointer;
|
|
||||||
margin-right: 1rem;
|
|
||||||
transition: all 0.2s;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button:hover {
|
|
||||||
border-color: var(--rose);
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr 280px; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr; }
|
|
||||||
.job-sidebar { position: static; order: -1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org/",
|
|
||||||
"@type": "JobPosting",
|
|
||||||
"title": "Scheduling Coordinator",
|
|
||||||
"description": "We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States. This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient. This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.",
|
|
||||||
"datePosted": "2025-04-01",
|
|
||||||
"validThrough": "2026-12-31",
|
|
||||||
"employmentType": "FULL_TIME",
|
|
||||||
"hiringOrganization": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "Sea Haven Industries",
|
|
||||||
"sameAs": "https://seahaven.com",
|
|
||||||
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
|
||||||
},
|
|
||||||
"jobLocation": {
|
|
||||||
"@type": "Place",
|
|
||||||
"address": {
|
|
||||||
"@type": "PostalAddress",
|
|
||||||
"streetAddress": "710 Koehler Ave",
|
|
||||||
"addressLocality": "Ronkonkoma",
|
|
||||||
"addressRegion": "NY",
|
|
||||||
"postalCode": "11779",
|
|
||||||
"addressCountry": "US"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"baseSalary": {
|
|
||||||
"@type": "MonetaryAmount",
|
|
||||||
"currency": "USD",
|
|
||||||
"value": {
|
|
||||||
"@type": "QuantitativeValue",
|
|
||||||
"minValue": 70000,
|
|
||||||
"maxValue": 80000,
|
|
||||||
"unitText": "YEAR"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"jobBenefits": "401(k) matching, PTO, hybrid flexibility for strong candidates, optional overtime",
|
|
||||||
"applicantLocationRequirements": {
|
|
||||||
"@type": "Country",
|
|
||||||
"name": "US"
|
|
||||||
},
|
|
||||||
"directApply": true
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<span>/</span>
|
|
||||||
Scheduling Coordinator
|
|
||||||
</nav>
|
|
||||||
<h1>Scheduling Coordinator</h1>
|
|
||||||
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Job Details ── -->
|
|
||||||
<section class="job-details section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="job-layout">
|
|
||||||
|
|
||||||
<!-- Main Content -->
|
|
||||||
<div class="job-content">
|
|
||||||
<p class="job-summary">A high-ownership role coordinating preventive maintenance scheduling across industrial facilities nationwide—keeping work orders organized, on track, and closed out clean.</p>
|
|
||||||
<h2>Position Overview</h2>
|
|
||||||
<p>We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States.</p>
|
|
||||||
<p>This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient.</p>
|
|
||||||
<p>This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.</p>
|
|
||||||
|
|
||||||
<h2>Benefits</h2>
|
|
||||||
<ul>
|
|
||||||
<li>401(k) with company matching</li>
|
|
||||||
<li>Paid Time Off (PTO)</li>
|
|
||||||
<li>Hybrid flexibility available for strong candidates</li>
|
|
||||||
<li>Optional overtime / additional shift opportunities</li>
|
|
||||||
<li>Opportunity to help build and improve operational processes</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Key Responsibilities</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Schedule and coordinate preventive maintenance (PM) work orders</li>
|
|
||||||
<li>Assign and manage work orders based on territories and scheduling needs</li>
|
|
||||||
<li>Track work orders from scheduling through completion</li>
|
|
||||||
<li>Conduct daily follow-ups on open, pending, and overdue items</li>
|
|
||||||
<li>Communicate with industrial sites and internal teams regarding updates, schedule changes, and ETAs</li>
|
|
||||||
<li>Ensure closing documentation and work-order details are completed accurately</li>
|
|
||||||
<li>Help resolve scheduling issues and support operational escalations</li>
|
|
||||||
<li>Maintain organization and visibility across multiple ongoing priorities</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Qualifications</h2>
|
|
||||||
<p><strong>Required</strong></p>
|
|
||||||
<ul>
|
|
||||||
<li>2–3 years of experience in scheduling, logistics, operations coordination, dispatch support, or related fields preferred</li>
|
|
||||||
<li>Strong candidates with approximately 1 year of highly relevant experience may also be considered</li>
|
|
||||||
<li>Strong organizational and multitasking abilities</li>
|
|
||||||
<li>Excellent communication and follow-up skills</li>
|
|
||||||
<li>Ability to manage multiple priorities in a fast-paced environment</li>
|
|
||||||
<li>Ability to work independently and take ownership of responsibilities</li>
|
|
||||||
</ul>
|
|
||||||
<p><strong>Preferred</strong></p>
|
|
||||||
<ul>
|
|
||||||
<li>Transportation or logistics industry experience</li>
|
|
||||||
<li>Dispatch experience</li>
|
|
||||||
<li>Multi-site coordination experience</li>
|
|
||||||
<li>Customer service experience</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Technical Skills</h2>
|
|
||||||
<p>Candidates should be comfortable with:</p>
|
|
||||||
<ul>
|
|
||||||
<li>Google Workspace (Google Sheets, Gmail, etc.)</li>
|
|
||||||
<li>Slack</li>
|
|
||||||
<li>General workplace systems and technology</li>
|
|
||||||
<li>Learning and adapting to new software platforms</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Why Join Us?</h2>
|
|
||||||
<p>This is an opportunity to step into a high-impact role with meaningful ownership and visibility across operations. You’ll help create structure, improve processes, and play an important role in supporting a growing team.</p>
|
|
||||||
<p>If you enjoy bringing organization to fast-moving environments and keeping operations running smoothly, we’d love to hear from you.</p>
|
|
||||||
|
|
||||||
<div class="job-note">
|
|
||||||
People with a criminal record are encouraged to apply.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Sidebar -->
|
|
||||||
<aside class="job-sidebar">
|
|
||||||
<h3>Job Overview</h3>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Job Type</div>
|
|
||||||
<div class="sidebar-item-value">Full-time</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Pay</div>
|
|
||||||
<div class="sidebar-item-value">$70,000–$80,000/year</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Schedule</div>
|
|
||||||
<div class="sidebar-item-value">Monday to Friday<br>Optional overtime available</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Benefits</div>
|
|
||||||
<div class="sidebar-item-value">401(k) matching + PTO</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Work Location</div>
|
|
||||||
<div class="sidebar-item-value">Ronkonkoma, NY (in person)<br>Hybrid flexibility for strong candidates</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
|
||||||
</aside>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Application Form ── -->
|
|
||||||
<section class="apply-section section" id="apply-section">
|
|
||||||
<div class="container">
|
|
||||||
<h2 class="display-md">Apply For This Position</h2>
|
|
||||||
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
|
||||||
<strong style="color: var(--text);">Application received!</strong>
|
|
||||||
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
|
||||||
</div>
|
|
||||||
<form class="apply-form" action="https://usebasin.com/f/611f7992dbf9" method="POST" enctype="multipart/form-data">
|
|
||||||
<input type="hidden" name="_gotcha" style="display:none">
|
|
||||||
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
|
||||||
<input type="hidden" name="g-recaptcha-version" value="v3">
|
|
||||||
<input type="hidden" name="_next" value="https://seahaven.com/careers/scheduling-coordinator/?submitted=true">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-name">Name *</label>
|
|
||||||
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-email">Email *</label>
|
|
||||||
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-phone">Phone *</label>
|
|
||||||
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-cover">Cover Letter</label>
|
|
||||||
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-resume">Resume *</label>
|
|
||||||
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
|
||||||
</div>
|
|
||||||
<div class="form-submit">
|
|
||||||
<button type="submit" class="btn btn-primary">Submit Application</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
|
|
||||||
// AJAX form submission
|
|
||||||
const applyForm = document.querySelector('.apply-form');
|
|
||||||
const successMsg = document.getElementById('form-success');
|
|
||||||
applyForm.addEventListener('submit', async (e) => {
|
|
||||||
e.preventDefault();
|
|
||||||
const btn = applyForm.querySelector('button[type="submit"]');
|
|
||||||
btn.textContent = 'Submitting...';
|
|
||||||
btn.disabled = true;
|
|
||||||
try {
|
|
||||||
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
|
|
||||||
document.getElementById('g-recaptcha-response').value = token;
|
|
||||||
const data = new FormData(applyForm);
|
|
||||||
const res = await fetch(applyForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
|
|
||||||
if (res.ok) {
|
|
||||||
applyForm.reset();
|
|
||||||
applyForm.style.display = 'none';
|
|
||||||
successMsg.style.display = 'block';
|
|
||||||
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
||||||
} else {
|
|
||||||
throw new Error('Submission failed');
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
btn.textContent = 'Submit Application';
|
|
||||||
btn.disabled = false;
|
|
||||||
alert('Something went wrong. Please try again or email your resume to work-orders@seahaven.com');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
212
careers/scheduling-coordinator/index.njk
Normal file
212
careers/scheduling-coordinator/index.njk
Normal file
|
|
@ -0,0 +1,212 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Scheduling Coordinator — Sea Haven Industries"
|
||||||
|
description: "Apply for the Scheduling Coordinator position at Sea Haven Industries. View job details and submit your application today."
|
||||||
|
pageCss: jobs
|
||||||
|
recaptcha: true
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<a href="/careers/">Careers</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
Scheduling Coordinator
|
||||||
|
</nav>
|
||||||
|
<h1>Scheduling Coordinator</h1>
|
||||||
|
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Job Details ── -->
|
||||||
|
<section class="job-details section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="job-layout">
|
||||||
|
|
||||||
|
<!-- Main Content -->
|
||||||
|
<div class="job-content">
|
||||||
|
<p class="job-summary">A high-ownership role coordinating preventive maintenance scheduling across industrial facilities nationwide—keeping work orders organized, on track, and closed out clean.</p>
|
||||||
|
<h2>Position Overview</h2>
|
||||||
|
<p>We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States.</p>
|
||||||
|
<p>This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient.</p>
|
||||||
|
<p>This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.</p>
|
||||||
|
|
||||||
|
<h2>Benefits</h2>
|
||||||
|
<ul>
|
||||||
|
<li>401(k) with company matching</li>
|
||||||
|
<li>Paid Time Off (PTO)</li>
|
||||||
|
<li>Hybrid flexibility available for strong candidates</li>
|
||||||
|
<li>Optional overtime / additional shift opportunities</li>
|
||||||
|
<li>Opportunity to help build and improve operational processes</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Key Responsibilities</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Schedule and coordinate preventive maintenance (PM) work orders</li>
|
||||||
|
<li>Assign and manage work orders based on territories and scheduling needs</li>
|
||||||
|
<li>Track work orders from scheduling through completion</li>
|
||||||
|
<li>Conduct daily follow-ups on open, pending, and overdue items</li>
|
||||||
|
<li>Communicate with industrial sites and internal teams regarding updates, schedule changes, and ETAs</li>
|
||||||
|
<li>Ensure closing documentation and work-order details are completed accurately</li>
|
||||||
|
<li>Help resolve scheduling issues and support operational escalations</li>
|
||||||
|
<li>Maintain organization and visibility across multiple ongoing priorities</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Qualifications</h2>
|
||||||
|
<p><strong>Required</strong></p>
|
||||||
|
<ul>
|
||||||
|
<li>2–3 years of experience in scheduling, logistics, operations coordination, dispatch support, or related fields preferred</li>
|
||||||
|
<li>Strong candidates with approximately 1 year of highly relevant experience may also be considered</li>
|
||||||
|
<li>Strong organizational and multitasking abilities</li>
|
||||||
|
<li>Excellent communication and follow-up skills</li>
|
||||||
|
<li>Ability to manage multiple priorities in a fast-paced environment</li>
|
||||||
|
<li>Ability to work independently and take ownership of responsibilities</li>
|
||||||
|
</ul>
|
||||||
|
<p><strong>Preferred</strong></p>
|
||||||
|
<ul>
|
||||||
|
<li>Transportation or logistics industry experience</li>
|
||||||
|
<li>Dispatch experience</li>
|
||||||
|
<li>Multi-site coordination experience</li>
|
||||||
|
<li>Customer service experience</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Technical Skills</h2>
|
||||||
|
<p>Candidates should be comfortable with:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Google Workspace (Google Sheets, Gmail, etc.)</li>
|
||||||
|
<li>Slack</li>
|
||||||
|
<li>General workplace systems and technology</li>
|
||||||
|
<li>Learning and adapting to new software platforms</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Why Join Us?</h2>
|
||||||
|
<p>This is an opportunity to step into a high-impact role with meaningful ownership and visibility across operations. You’ll help create structure, improve processes, and play an important role in supporting a growing team.</p>
|
||||||
|
<p>If you enjoy bringing organization to fast-moving environments and keeping operations running smoothly, we’d love to hear from you.</p>
|
||||||
|
|
||||||
|
<div class="job-note">
|
||||||
|
People with a criminal record are encouraged to apply.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Sidebar -->
|
||||||
|
<aside class="job-sidebar">
|
||||||
|
<h3>Job Overview</h3>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Job Type</div>
|
||||||
|
<div class="sidebar-item-value">Full-time</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Pay</div>
|
||||||
|
<div class="sidebar-item-value">$70,000–$80,000/year</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Schedule</div>
|
||||||
|
<div class="sidebar-item-value">Monday to Friday<br>Optional overtime available</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Benefits</div>
|
||||||
|
<div class="sidebar-item-value">401(k) matching + PTO</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Work Location</div>
|
||||||
|
<div class="sidebar-item-value">Ronkonkoma, NY (in person)<br>Hybrid flexibility for strong candidates</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
||||||
|
</aside>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Application Form ── -->
|
||||||
|
<section class="apply-section section" id="apply-section">
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="display-md">Apply For This Position</h2>
|
||||||
|
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
||||||
|
<strong style="color: var(--text);">Application received!</strong>
|
||||||
|
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
||||||
|
</div>
|
||||||
|
<form class="apply-form" action="https://usebasin.com/f/611f7992dbf9" method="POST" enctype="multipart/form-data">
|
||||||
|
<input type="hidden" name="_gotcha" style="display:none">
|
||||||
|
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
||||||
|
<input type="hidden" name="g-recaptcha-version" value="v3">
|
||||||
|
<input type="hidden" name="_next" value="https://seahaven.com/careers/scheduling-coordinator/?submitted=true">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-name">Name *</label>
|
||||||
|
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-email">Email *</label>
|
||||||
|
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-phone">Phone *</label>
|
||||||
|
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-cover">Cover Letter</label>
|
||||||
|
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-resume">Resume *</label>
|
||||||
|
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
||||||
|
</div>
|
||||||
|
<div class="form-submit">
|
||||||
|
<button type="submit" class="btn btn-primary">Submit Application</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<script type="application/ld+json">
|
||||||
|
{
|
||||||
|
"@context": "https://schema.org/",
|
||||||
|
"@type": "JobPosting",
|
||||||
|
"title": "Scheduling Coordinator",
|
||||||
|
"description": "We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States. This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient. This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.",
|
||||||
|
"datePosted": "2025-04-01",
|
||||||
|
"validThrough": "2026-12-31",
|
||||||
|
"employmentType": "FULL_TIME",
|
||||||
|
"hiringOrganization": {
|
||||||
|
"@type": "Organization",
|
||||||
|
"name": "Sea Haven Industries",
|
||||||
|
"sameAs": "https://seahaven.com",
|
||||||
|
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
||||||
|
},
|
||||||
|
"jobLocation": {
|
||||||
|
"@type": "Place",
|
||||||
|
"address": {
|
||||||
|
"@type": "PostalAddress",
|
||||||
|
"streetAddress": "710 Koehler Ave",
|
||||||
|
"addressLocality": "Ronkonkoma",
|
||||||
|
"addressRegion": "NY",
|
||||||
|
"postalCode": "11779",
|
||||||
|
"addressCountry": "US"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"baseSalary": {
|
||||||
|
"@type": "MonetaryAmount",
|
||||||
|
"currency": "USD",
|
||||||
|
"value": {
|
||||||
|
"@type": "QuantitativeValue",
|
||||||
|
"minValue": 70000,
|
||||||
|
"maxValue": 80000,
|
||||||
|
"unitText": "YEAR"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"jobBenefits": "401(k) matching, PTO, hybrid flexibility for strong candidates, optional overtime",
|
||||||
|
"applicantLocationRequirements": {
|
||||||
|
"@type": "Country",
|
||||||
|
"name": "US"
|
||||||
|
},
|
||||||
|
"directApply": true
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
@ -1,537 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Traveling Maintenance/Electrical Assistant — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Apply for the Traveling Maintenance/Electrical Assistant position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:title" content="Traveling Maintenance/Electrical Assistant — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Apply for the Traveling Maintenance/Electrical Assistant position at Sea Haven Industries. View job details and submit your application today.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/careers/traveling-maintenance-assistant/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/careers/traveling-maintenance-assistant/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.grecaptcha-badge { visibility: hidden; }
|
|
||||||
|
|
||||||
/* ── Job Details ── */
|
|
||||||
.back-link {
|
|
||||||
display: inline-block;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 500;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-top: 1rem;
|
|
||||||
transition: color 0.15s;
|
|
||||||
}
|
|
||||||
.back-link:hover { color: var(--rose-dark); }
|
|
||||||
.job-details { background: var(--surface); }
|
|
||||||
.job-layout {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 340px;
|
|
||||||
gap: clamp(2.5rem, 5vw, 4rem);
|
|
||||||
align-items: start;
|
|
||||||
}
|
|
||||||
|
|
||||||
.job-content h2 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(1.25rem, 2.5vw, 1.75rem);
|
|
||||||
line-height: 1.2;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
}
|
|
||||||
.job-summary {
|
|
||||||
font-size: 1.125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.6;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-left: 3px solid var(--rose);
|
|
||||||
border-radius: 2px;
|
|
||||||
}
|
|
||||||
.job-content h2:first-child { margin-top: 0; }
|
|
||||||
.job-content p {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.job-content ul {
|
|
||||||
list-style: none;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.job-content ul li {
|
|
||||||
position: relative;
|
|
||||||
padding-left: 1.25rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
.job-content ul li::before {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0.625rem;
|
|
||||||
width: 6px;
|
|
||||||
height: 6px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: var(--rose);
|
|
||||||
}
|
|
||||||
.job-note {
|
|
||||||
margin-top: 2rem;
|
|
||||||
padding: 1.25rem 1.5rem;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-radius: 3px;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--ink-mid);
|
|
||||||
line-height: 1.6;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Job Sidebar ── */
|
|
||||||
.job-sidebar {
|
|
||||||
position: sticky;
|
|
||||||
top: 100px;
|
|
||||||
background: var(--body-bg);
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 3px;
|
|
||||||
padding: clamp(1.5rem, 3vw, 2rem);
|
|
||||||
}
|
|
||||||
.job-sidebar h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.25rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.sidebar-item {
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-label {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.08em;
|
|
||||||
text-transform: uppercase;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
.sidebar-item-value {
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
color: var(--text);
|
|
||||||
line-height: 1.5;
|
|
||||||
}
|
|
||||||
.sidebar-cta {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Application Form ── */
|
|
||||||
.apply-section { background: var(--warm-gray); }
|
|
||||||
.apply-section h2 {
|
|
||||||
margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
|
|
||||||
}
|
|
||||||
.apply-form {
|
|
||||||
max-width: 640px;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"] {
|
|
||||||
width: 100%;
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
padding: 0.75rem 0 0.75rem 0.75rem;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button {
|
|
||||||
font-family: var(--font-body);
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
padding: 0.5rem 1.25rem;
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
border-radius: 2px;
|
|
||||||
background: var(--surface);
|
|
||||||
color: var(--text);
|
|
||||||
cursor: pointer;
|
|
||||||
margin-right: 1rem;
|
|
||||||
transition: all 0.2s;
|
|
||||||
}
|
|
||||||
.form-group input[type="file"]::file-selector-button:hover {
|
|
||||||
border-color: var(--rose);
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr 280px; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.job-layout { grid-template-columns: 1fr; }
|
|
||||||
.job-sidebar { position: static; order: -1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org/",
|
|
||||||
"@type": "JobPosting",
|
|
||||||
"title": "Traveling Maintenance / Electrical Assistant",
|
|
||||||
"description": "A hands-on, travel-heavy role working directly alongside an experienced technician, supporting maintenance and electrical work across large-scale commercial and industrial facilities. Learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.",
|
|
||||||
"datePosted": "2025-04-01",
|
|
||||||
"validThrough": "2026-12-31",
|
|
||||||
"employmentType": "FULL_TIME",
|
|
||||||
"hiringOrganization": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "Sea Haven Industries",
|
|
||||||
"sameAs": "https://seahaven.com",
|
|
||||||
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
|
||||||
},
|
|
||||||
"jobLocation": {
|
|
||||||
"@type": "Place",
|
|
||||||
"address": {
|
|
||||||
"@type": "PostalAddress",
|
|
||||||
"addressLocality": "Lafayette",
|
|
||||||
"addressRegion": "LA",
|
|
||||||
"postalCode": "70508",
|
|
||||||
"addressCountry": "US"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"baseSalary": {
|
|
||||||
"@type": "MonetaryAmount",
|
|
||||||
"currency": "USD",
|
|
||||||
"value": {
|
|
||||||
"@type": "QuantitativeValue",
|
|
||||||
"minValue": 63000,
|
|
||||||
"maxValue": 80000,
|
|
||||||
"unitText": "YEAR"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"jobBenefits": "PTO, 401(k) matching, daily per diem while traveling, hotels covered",
|
|
||||||
"applicantLocationRequirements": {
|
|
||||||
"@type": "Country",
|
|
||||||
"name": "US"
|
|
||||||
},
|
|
||||||
"directApply": true
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<span>/</span>
|
|
||||||
Traveling Maintenance/Electrical Assistant
|
|
||||||
</nav>
|
|
||||||
<h1>Traveling Maintenance/Electrical Assistant</h1>
|
|
||||||
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Job Details ── -->
|
|
||||||
<section class="job-details section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="job-layout">
|
|
||||||
|
|
||||||
<!-- Main Content -->
|
|
||||||
<div class="job-content">
|
|
||||||
<p class="job-summary">Learn real trade skills fast—work side-by-side with a veteran technician across commercial facilities, earn above-market pay with per diem, and travel the Gulf South.</p>
|
|
||||||
<h2>Overview</h2>
|
|
||||||
<p>This is not a typical “helper” role. You’ll work directly alongside a highly experienced technician, supporting maintenance and electrical work across large-scale commercial and industrial facilities. This is a hands-on, travel-heavy role designed for someone who wants to learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.</p>
|
|
||||||
|
|
||||||
<h2>What You’ll Be Doing</h2>
|
|
||||||
<p>You’ll assist in a wide range of field tasks, including:</p>
|
|
||||||
<ul>
|
|
||||||
<li>Electrical support (running conduit, pulling wire, changing breakers)</li>
|
|
||||||
<li>General maintenance and repair work</li>
|
|
||||||
<li>Light plumbing assistance (valves, basic systems)</li>
|
|
||||||
<li>Painting and facility upkeep</li>
|
|
||||||
<li>Loading/unloading materials and tools</li>
|
|
||||||
<li>Working on lifts and at heights (up to ~35 ft)</li>
|
|
||||||
</ul>
|
|
||||||
<p>You’ll be working side-by-side with the lead technician at all times—this is a true apprentice-style role.</p>
|
|
||||||
|
|
||||||
<h2>Work Environment & Schedule</h2>
|
|
||||||
<p>Work takes place at commercial facilities across Louisiana, South Arkansas, and Mississippi.</p>
|
|
||||||
<ul>
|
|
||||||
<li>Start: ~9:00–10:30 AM</li>
|
|
||||||
<li>End: ~3:30–4:30 PM</li>
|
|
||||||
<li>Mostly weekday work, with occasional project-based weekends</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Travel Requirements</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Travel required almost every week</li>
|
|
||||||
<li>Up to 5 days on the road</li>
|
|
||||||
<li>Overnight stays ~75% of the time</li>
|
|
||||||
<li>Hotels arranged and covered</li>
|
|
||||||
<li>Daily per diem provided</li>
|
|
||||||
</ul>
|
|
||||||
<p>If you’re not comfortable being on the road regularly, this role won’t be a fit.</p>
|
|
||||||
|
|
||||||
<h2>Why This Role Stands Out</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Direct mentorship from a veteran industry professional</li>
|
|
||||||
<li>Exposure to electrical, maintenance, and facility work</li>
|
|
||||||
<li>Fast, hands-on skill development—no classroom training</li>
|
|
||||||
<li>Work inside major commercial environments</li>
|
|
||||||
<li>Stable, consistent workload</li>
|
|
||||||
<li>No corporate bureaucracy—field-focused, straightforward work</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Required</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Minimum 6 months experience in construction, electrical, HVAC, or similar hands-on work</li>
|
|
||||||
<li>Comfortable with physical labor, lifting, and working at heights</li>
|
|
||||||
<li>Able to follow strict safety standards</li>
|
|
||||||
<li>Ability to take direction and work under supervision</li>
|
|
||||||
<li>Reliable, punctual, and consistent</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Preferred</h2>
|
|
||||||
<ul>
|
|
||||||
<li>Valid driver’s license</li>
|
|
||||||
<li>Clean background</li>
|
|
||||||
<li>Basic electrical or maintenance experience</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<div class="job-note">
|
|
||||||
People with a criminal record are encouraged to apply.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Sidebar -->
|
|
||||||
<aside class="job-sidebar">
|
|
||||||
<h3>Job Overview</h3>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Job Type</div>
|
|
||||||
<div class="sidebar-item-value">Full-time</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Base Salary</div>
|
|
||||||
<div class="sidebar-item-value">$63,000/year</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Per Diem</div>
|
|
||||||
<div class="sidebar-item-value">$50/day while traveling</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Total Compensation</div>
|
|
||||||
<div class="sidebar-item-value">~$75K–$83K+ annually</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Schedule</div>
|
|
||||||
<div class="sidebar-item-value">Monday to Friday<br>~9:00 AM–4:30 PM</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Benefits</div>
|
|
||||||
<div class="sidebar-item-value">PTO + 401(k) matching</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Probationary Period</div>
|
|
||||||
<div class="sidebar-item-value">90 days</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sidebar-item">
|
|
||||||
<div class="sidebar-item-label">Work Location</div>
|
|
||||||
<div class="sidebar-item-value">Travel—LA, AR, MS</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
|
||||||
</aside>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Application Form ── -->
|
|
||||||
<section class="apply-section section" id="apply-section">
|
|
||||||
<div class="container">
|
|
||||||
<h2 class="display-md">Apply For This Position</h2>
|
|
||||||
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
|
||||||
<strong style="color: var(--text);">Application received!</strong>
|
|
||||||
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
|
||||||
</div>
|
|
||||||
<form class="apply-form" action="https://usebasin.com/f/1d3141e6918e" method="POST" enctype="multipart/form-data">
|
|
||||||
<input type="hidden" name="_gotcha" style="display:none">
|
|
||||||
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
|
||||||
<input type="hidden" name="g-recaptcha-version" value="v3">
|
|
||||||
<input type="hidden" name="_next" value="https://seahaven.com/careers/traveling-maintenance-assistant/?submitted=true">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-name">Name *</label>
|
|
||||||
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-email">Email *</label>
|
|
||||||
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-phone">Phone *</label>
|
|
||||||
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-cover">Cover Letter</label>
|
|
||||||
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="apply-resume">Resume *</label>
|
|
||||||
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
|
||||||
</div>
|
|
||||||
<div class="form-submit">
|
|
||||||
<button type="submit" class="btn btn-primary">Submit Application</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
|
|
||||||
// AJAX form submission
|
|
||||||
const applyForm = document.querySelector('.apply-form');
|
|
||||||
const successMsg = document.getElementById('form-success');
|
|
||||||
applyForm.addEventListener('submit', async (e) => {
|
|
||||||
e.preventDefault();
|
|
||||||
const btn = applyForm.querySelector('button[type="submit"]');
|
|
||||||
btn.textContent = 'Submitting...';
|
|
||||||
btn.disabled = true;
|
|
||||||
try {
|
|
||||||
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
|
|
||||||
document.getElementById('g-recaptcha-response').value = token;
|
|
||||||
const data = new FormData(applyForm);
|
|
||||||
const res = await fetch(applyForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
|
|
||||||
if (res.ok) {
|
|
||||||
applyForm.reset();
|
|
||||||
applyForm.style.display = 'none';
|
|
||||||
successMsg.style.display = 'block';
|
|
||||||
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
||||||
} else {
|
|
||||||
throw new Error('Submission failed');
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
btn.textContent = 'Submit Application';
|
|
||||||
btn.disabled = false;
|
|
||||||
alert('Something went wrong. Please try again or email your resume to work-orders@seahaven.com');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
228
careers/traveling-maintenance-assistant/index.njk
Normal file
228
careers/traveling-maintenance-assistant/index.njk
Normal file
|
|
@ -0,0 +1,228 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Traveling Maintenance/Electrical Assistant — Sea Haven Industries"
|
||||||
|
description: "Apply for the Traveling Maintenance/Electrical Assistant position at Sea Haven Industries. View job details and submit your application today."
|
||||||
|
pageCss: jobs
|
||||||
|
recaptcha: true
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<a href="/careers/">Careers</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
Traveling Maintenance/Electrical Assistant
|
||||||
|
</nav>
|
||||||
|
<h1>Traveling Maintenance/Electrical Assistant</h1>
|
||||||
|
<a href="/careers/" class="back-link">← Back to All Positions</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Job Details ── -->
|
||||||
|
<section class="job-details section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="job-layout">
|
||||||
|
|
||||||
|
<!-- Main Content -->
|
||||||
|
<div class="job-content">
|
||||||
|
<p class="job-summary">Learn real trade skills fast—work side-by-side with a veteran technician across commercial facilities, earn above-market pay with per diem, and travel the Gulf South.</p>
|
||||||
|
<h2>Overview</h2>
|
||||||
|
<p>This is not a typical “helper” role. You’ll work directly alongside a highly experienced technician, supporting maintenance and electrical work across large-scale commercial and industrial facilities. This is a hands-on, travel-heavy role designed for someone who wants to learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.</p>
|
||||||
|
|
||||||
|
<h2>What You’ll Be Doing</h2>
|
||||||
|
<p>You’ll assist in a wide range of field tasks, including:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Electrical support (running conduit, pulling wire, changing breakers)</li>
|
||||||
|
<li>General maintenance and repair work</li>
|
||||||
|
<li>Light plumbing assistance (valves, basic systems)</li>
|
||||||
|
<li>Painting and facility upkeep</li>
|
||||||
|
<li>Loading/unloading materials and tools</li>
|
||||||
|
<li>Working on lifts and at heights (up to ~35 ft)</li>
|
||||||
|
</ul>
|
||||||
|
<p>You’ll be working side-by-side with the lead technician at all times—this is a true apprentice-style role.</p>
|
||||||
|
|
||||||
|
<h2>Work Environment & Schedule</h2>
|
||||||
|
<p>Work takes place at commercial facilities across Louisiana, South Arkansas, and Mississippi.</p>
|
||||||
|
<ul>
|
||||||
|
<li>Start: ~9:00–10:30 AM</li>
|
||||||
|
<li>End: ~3:30–4:30 PM</li>
|
||||||
|
<li>Mostly weekday work, with occasional project-based weekends</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Travel Requirements</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Travel required almost every week</li>
|
||||||
|
<li>Up to 5 days on the road</li>
|
||||||
|
<li>Overnight stays ~75% of the time</li>
|
||||||
|
<li>Hotels arranged and covered</li>
|
||||||
|
<li>Daily per diem provided</li>
|
||||||
|
</ul>
|
||||||
|
<p>If you’re not comfortable being on the road regularly, this role won’t be a fit.</p>
|
||||||
|
|
||||||
|
<h2>Why This Role Stands Out</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Direct mentorship from a veteran industry professional</li>
|
||||||
|
<li>Exposure to electrical, maintenance, and facility work</li>
|
||||||
|
<li>Fast, hands-on skill development—no classroom training</li>
|
||||||
|
<li>Work inside major commercial environments</li>
|
||||||
|
<li>Stable, consistent workload</li>
|
||||||
|
<li>No corporate bureaucracy—field-focused, straightforward work</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Required</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Minimum 6 months experience in construction, electrical, HVAC, or similar hands-on work</li>
|
||||||
|
<li>Comfortable with physical labor, lifting, and working at heights</li>
|
||||||
|
<li>Able to follow strict safety standards</li>
|
||||||
|
<li>Ability to take direction and work under supervision</li>
|
||||||
|
<li>Reliable, punctual, and consistent</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Preferred</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Valid driver’s license</li>
|
||||||
|
<li>Clean background</li>
|
||||||
|
<li>Basic electrical or maintenance experience</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="job-note">
|
||||||
|
People with a criminal record are encouraged to apply.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Sidebar -->
|
||||||
|
<aside class="job-sidebar">
|
||||||
|
<h3>Job Overview</h3>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Job Type</div>
|
||||||
|
<div class="sidebar-item-value">Full-time</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Base Salary</div>
|
||||||
|
<div class="sidebar-item-value">$63,000/year</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Per Diem</div>
|
||||||
|
<div class="sidebar-item-value">$50/day while traveling</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Total Compensation</div>
|
||||||
|
<div class="sidebar-item-value">~$75K–$83K+ annually</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Schedule</div>
|
||||||
|
<div class="sidebar-item-value">Monday to Friday<br>~9:00 AM–4:30 PM</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Benefits</div>
|
||||||
|
<div class="sidebar-item-value">PTO + 401(k) matching</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Probationary Period</div>
|
||||||
|
<div class="sidebar-item-value">90 days</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="sidebar-item">
|
||||||
|
<div class="sidebar-item-label">Work Location</div>
|
||||||
|
<div class="sidebar-item-value">Travel—LA, AR, MS</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
|
||||||
|
</aside>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Application Form ── -->
|
||||||
|
<section class="apply-section section" id="apply-section">
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="display-md">Apply For This Position</h2>
|
||||||
|
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
|
||||||
|
<strong style="color: var(--text);">Application received!</strong>
|
||||||
|
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
|
||||||
|
</div>
|
||||||
|
<form class="apply-form" action="https://usebasin.com/f/1d3141e6918e" method="POST" enctype="multipart/form-data">
|
||||||
|
<input type="hidden" name="_gotcha" style="display:none">
|
||||||
|
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
||||||
|
<input type="hidden" name="g-recaptcha-version" value="v3">
|
||||||
|
<input type="hidden" name="_next" value="https://seahaven.com/careers/traveling-maintenance-assistant/?submitted=true">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-name">Name *</label>
|
||||||
|
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-email">Email *</label>
|
||||||
|
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-phone">Phone *</label>
|
||||||
|
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-cover">Cover Letter</label>
|
||||||
|
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="apply-resume">Resume *</label>
|
||||||
|
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
|
||||||
|
</div>
|
||||||
|
<div class="form-submit">
|
||||||
|
<button type="submit" class="btn btn-primary">Submit Application</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<script type="application/ld+json">
|
||||||
|
{
|
||||||
|
"@context": "https://schema.org/",
|
||||||
|
"@type": "JobPosting",
|
||||||
|
"title": "Traveling Maintenance / Electrical Assistant",
|
||||||
|
"description": "A hands-on, travel-heavy role working directly alongside an experienced technician, supporting maintenance and electrical work across large-scale commercial and industrial facilities. Learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.",
|
||||||
|
"datePosted": "2025-04-01",
|
||||||
|
"validThrough": "2026-12-31",
|
||||||
|
"employmentType": "FULL_TIME",
|
||||||
|
"hiringOrganization": {
|
||||||
|
"@type": "Organization",
|
||||||
|
"name": "Sea Haven Industries",
|
||||||
|
"sameAs": "https://seahaven.com",
|
||||||
|
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
|
||||||
|
},
|
||||||
|
"jobLocation": {
|
||||||
|
"@type": "Place",
|
||||||
|
"address": {
|
||||||
|
"@type": "PostalAddress",
|
||||||
|
"addressLocality": "Lafayette",
|
||||||
|
"addressRegion": "LA",
|
||||||
|
"postalCode": "70508",
|
||||||
|
"addressCountry": "US"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"baseSalary": {
|
||||||
|
"@type": "MonetaryAmount",
|
||||||
|
"currency": "USD",
|
||||||
|
"value": {
|
||||||
|
"@type": "QuantitativeValue",
|
||||||
|
"minValue": 63000,
|
||||||
|
"maxValue": 80000,
|
||||||
|
"unitText": "YEAR"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"jobBenefits": "PTO, 401(k) matching, daily per diem while traveling, hotels covered",
|
||||||
|
"applicantLocationRequirements": {
|
||||||
|
"@type": "Country",
|
||||||
|
"name": "US"
|
||||||
|
},
|
||||||
|
"directApply": true
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
@ -1,332 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Contact — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Get in touch with Sea Haven Industries. Have a question or project idea? Contact us today to discuss your construction and facilities needs.">
|
|
||||||
<meta property="og:title" content="Contact — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Get in touch with Sea Haven Industries. Have a question or project idea? Contact us today to discuss your construction and facilities needs.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/contact/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/contact/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.grecaptcha-badge { visibility: hidden; }
|
|
||||||
|
|
||||||
/* ── Contact Section ── */
|
|
||||||
.contact-section { background: var(--surface); }
|
|
||||||
.contact-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1.25fr;
|
|
||||||
gap: clamp(3rem, 6vw, 5rem);
|
|
||||||
}
|
|
||||||
.contact-info .label { margin-bottom: 0.75rem; }
|
|
||||||
.contact-info h2 {
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.contact-info > p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
margin-bottom: 2.5rem;
|
|
||||||
}
|
|
||||||
.contact-detail {
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-start;
|
|
||||||
gap: 1rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.contact-detail-icon {
|
|
||||||
flex-shrink: 0;
|
|
||||||
width: 44px;
|
|
||||||
height: 44px;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
border-radius: 2px;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
color: var(--rose);
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 700;
|
|
||||||
letter-spacing: 0.04em;
|
|
||||||
}
|
|
||||||
.contact-detail-text strong {
|
|
||||||
display: block;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 0.125rem;
|
|
||||||
}
|
|
||||||
.contact-detail-text span,
|
|
||||||
.contact-detail-text a {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.5;
|
|
||||||
}
|
|
||||||
.contact-detail-text a:hover { color: var(--rose); }
|
|
||||||
|
|
||||||
/* ── Contact Form ── */
|
|
||||||
.contact-form {
|
|
||||||
background: var(--body-bg);
|
|
||||||
padding: clamp(2rem, 4vw, 3rem);
|
|
||||||
border-radius: 3px;
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
}
|
|
||||||
.form-row {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: 1rem;
|
|
||||||
}
|
|
||||||
.form-group textarea {
|
|
||||||
min-height: 140px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.contact-grid { grid-template-columns: 1fr; }
|
|
||||||
.form-row { grid-template-columns: 1fr; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.footer-bottom { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
Contact Us
|
|
||||||
</nav>
|
|
||||||
<h1>Get in Touch</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Contact Section ── -->
|
|
||||||
<section class="contact-section section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="contact-grid">
|
|
||||||
|
|
||||||
<!-- Left Column — Info -->
|
|
||||||
<div class="contact-info">
|
|
||||||
<p class="label">Contact Us</p>
|
|
||||||
<h2 class="display-md">Have a Question or Project Idea? Let's Talk!</h2>
|
|
||||||
<p>Have a project in mind or need more information about our construction services? Contact us today! Our friendly and knowledgeable team is ready to answer your questions, provide you with a detailed estimate, and guide you through the next steps.</p>
|
|
||||||
|
|
||||||
<div class="contact-detail">
|
|
||||||
<div class="contact-detail-icon">LOC</div>
|
|
||||||
<div class="contact-detail-text">
|
|
||||||
<strong>Address</strong>
|
|
||||||
<span>710 Koehler Ave, Ronkonkoma, NY 11779</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="contact-detail">
|
|
||||||
<div class="contact-detail-icon">@</div>
|
|
||||||
<div class="contact-detail-text">
|
|
||||||
<strong>Email</strong>
|
|
||||||
<a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="contact-detail">
|
|
||||||
<div class="contact-detail-icon">TEL</div>
|
|
||||||
<div class="contact-detail-text">
|
|
||||||
<strong>Phone</strong>
|
|
||||||
<a href="tel:+16317765102">(631) 776-5102</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Right Column — Form -->
|
|
||||||
<div class="contact-form">
|
|
||||||
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; border-radius: 2px;">
|
|
||||||
<strong style="color: var(--text);">Message sent!</strong>
|
|
||||||
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for reaching out. We'll get back to you shortly.</p>
|
|
||||||
</div>
|
|
||||||
<form action="https://usebasin.com/f/08bc652e1969" method="POST">
|
|
||||||
<input type="hidden" name="_gotcha" style="display:none">
|
|
||||||
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
|
||||||
<input type="hidden" name="g-recaptcha-version" value="v3">
|
|
||||||
<div class="form-row">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="first-name">First Name *</label>
|
|
||||||
<input type="text" id="first-name" name="first_name" required placeholder="John">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="last-name">Last Name *</label>
|
|
||||||
<input type="text" id="last-name" name="last_name" required placeholder="Doe">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-row">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="email">Email *</label>
|
|
||||||
<input type="email" id="email" name="email" required placeholder="john@example.com">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="phone">Phone</label>
|
|
||||||
<input type="tel" id="phone" name="phone" placeholder="(555) 123-4567">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="subject">Subject</label>
|
|
||||||
<input type="text" id="subject" name="subject" placeholder="How can we help?">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="message">Message *</label>
|
|
||||||
<textarea id="message" name="message" required placeholder="Tell us about your project..."></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-submit">
|
|
||||||
<button type="submit" class="btn btn-primary">Send Message</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
|
|
||||||
// AJAX form submission
|
|
||||||
const contactForm = document.querySelector('.contact-form form');
|
|
||||||
const successMsg = document.getElementById('form-success');
|
|
||||||
contactForm.addEventListener('submit', async (e) => {
|
|
||||||
e.preventDefault();
|
|
||||||
const btn = contactForm.querySelector('button[type="submit"]');
|
|
||||||
btn.textContent = 'Sending...';
|
|
||||||
btn.disabled = true;
|
|
||||||
try {
|
|
||||||
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
|
|
||||||
document.getElementById('g-recaptcha-response').value = token;
|
|
||||||
const data = new FormData(contactForm);
|
|
||||||
const res = await fetch(contactForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
|
|
||||||
if (res.ok) {
|
|
||||||
contactForm.reset();
|
|
||||||
contactForm.style.display = 'none';
|
|
||||||
successMsg.style.display = 'block';
|
|
||||||
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
||||||
} else {
|
|
||||||
throw new Error('Submission failed');
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
btn.textContent = 'Send Message';
|
|
||||||
btn.disabled = false;
|
|
||||||
alert('Something went wrong. Please try again or email us directly at work-orders@seahaven.com');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
103
contact/index.njk
Normal file
103
contact/index.njk
Normal file
|
|
@ -0,0 +1,103 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Contact — Sea Haven Industries"
|
||||||
|
description: "Get in touch with Sea Haven Industries. Have a question or project idea? Contact us today to discuss your construction and facilities needs."
|
||||||
|
pageCss: contact
|
||||||
|
recaptcha: true
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
Contact Us
|
||||||
|
</nav>
|
||||||
|
<h1>Get in Touch</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Contact Section ── -->
|
||||||
|
<section class="contact-section section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="contact-grid">
|
||||||
|
|
||||||
|
<!-- Left Column — Info -->
|
||||||
|
<div class="contact-info">
|
||||||
|
<p class="label">Contact Us</p>
|
||||||
|
<h2 class="display-md">Have a Question or Project Idea? Let's Talk!</h2>
|
||||||
|
<p>Have a project in mind or need more information about our construction services? Contact us today! Our friendly and knowledgeable team is ready to answer your questions, provide you with a detailed estimate, and guide you through the next steps.</p>
|
||||||
|
|
||||||
|
<div class="contact-detail">
|
||||||
|
<div class="contact-detail-icon">LOC</div>
|
||||||
|
<div class="contact-detail-text">
|
||||||
|
<strong>Address</strong>
|
||||||
|
<span>710 Koehler Ave, Ronkonkoma, NY 11779</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="contact-detail">
|
||||||
|
<div class="contact-detail-icon">@</div>
|
||||||
|
<div class="contact-detail-text">
|
||||||
|
<strong>Email</strong>
|
||||||
|
<a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="contact-detail">
|
||||||
|
<div class="contact-detail-icon">TEL</div>
|
||||||
|
<div class="contact-detail-text">
|
||||||
|
<strong>Phone</strong>
|
||||||
|
<a href="tel:+16317765102">(631) 776-5102</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Right Column — Form -->
|
||||||
|
<div class="contact-form">
|
||||||
|
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; border-radius: 2px;">
|
||||||
|
<strong style="color: var(--text);">Message sent!</strong>
|
||||||
|
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for reaching out. We'll get back to you shortly.</p>
|
||||||
|
</div>
|
||||||
|
<div id="form-status" role="status" aria-live="assertive" class="form-status"></div>
|
||||||
|
<form action="https://usebasin.com/f/08bc652e1969" method="POST">
|
||||||
|
<input type="hidden" name="_gotcha" style="display:none">
|
||||||
|
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
||||||
|
<input type="hidden" name="g-recaptcha-version" value="v3">
|
||||||
|
<div class="form-row">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="first-name">First Name *</label>
|
||||||
|
<input type="text" id="first-name" name="first_name" required placeholder="John">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="last-name">Last Name *</label>
|
||||||
|
<input type="text" id="last-name" name="last_name" required placeholder="Doe">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-row">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="email">Email *</label>
|
||||||
|
<input type="email" id="email" name="email" required placeholder="john@example.com">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="phone">Phone</label>
|
||||||
|
<input type="tel" id="phone" name="phone" placeholder="(555) 123-4567">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="subject">Subject</label>
|
||||||
|
<input type="text" id="subject" name="subject" placeholder="How can we help?">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="message">Message *</label>
|
||||||
|
<textarea id="message" name="message" required placeholder="Tell us about your project..."></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-submit">
|
||||||
|
<button type="submit" class="btn btn-primary">Send Message</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,114 +1,16 @@
|
||||||
<!DOCTYPE html>
|
---
|
||||||
<html lang="en-US">
|
layout: base.njk
|
||||||
<head>
|
title: "End User License Agreement — Sea Haven Industries"
|
||||||
<meta charset="UTF-8">
|
description: "End User License Agreement for Sea Haven Industries QuickBooks application."
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
pageCss: legal
|
||||||
<title>End User License Agreement — Sea Haven Industries</title>
|
robots: "noindex, nofollow"
|
||||||
<meta name="description" content="End User License Agreement for Sea Haven Industries QuickBooks application.">
|
---
|
||||||
<meta property="og:title" content="End User License Agreement — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="End User License Agreement for Sea Haven Industries QuickBooks application.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/eula/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="noindex, nofollow">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Prose Content ── */
|
|
||||||
.prose-section {
|
|
||||||
background: var(--surface);
|
|
||||||
padding: clamp(4rem, 8vw, 7rem) 0;
|
|
||||||
}
|
|
||||||
.prose {
|
|
||||||
max-width: 800px;
|
|
||||||
}
|
|
||||||
.prose h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.375rem;
|
|
||||||
line-height: 1.25;
|
|
||||||
color: var(--text);
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
}
|
|
||||||
.prose h3:first-child {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.prose p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul {
|
|
||||||
padding-left: 1.5rem;
|
|
||||||
list-style-type: disc;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul li {
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.prose a {
|
|
||||||
color: var(--rose);
|
|
||||||
text-decoration: underline;
|
|
||||||
text-underline-offset: 2px;
|
|
||||||
}
|
|
||||||
.prose a:hover {
|
|
||||||
color: var(--rose-dark);
|
|
||||||
}
|
|
||||||
.prose em {
|
|
||||||
color: var(--text-muted);
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
<!-- ── Page Hero ── -->
|
||||||
<section class="page-hero">
|
<section class="page-hero">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
<a href="/">Home</a>
|
<a href="/">Home</a>
|
||||||
<span>/</span>
|
<span aria-hidden="true">/</span>
|
||||||
<span>End User License Agreement</span>
|
<span>End User License Agreement</span>
|
||||||
</nav>
|
</nav>
|
||||||
<h1>End User License Agreement</h1>
|
<h1>End User License Agreement</h1>
|
||||||
|
|
@ -182,71 +84,3 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
916
index.html
916
index.html
|
|
@ -1,916 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Sea Haven Industries — Construction & Facilities Services</title>
|
|
||||||
<meta name="description" content="Sea Haven Industries is a trusted construction and facilities services company with years of experience in electrical, plumbing, HVAC, and general contracting.">
|
|
||||||
<meta property="og:title" content="Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Constructing excellence, every step of the way. Your trusted partner in construction and facilities services.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Homepage Nav Overrides (dark transparent → scrolled white) ── */
|
|
||||||
.site-header {
|
|
||||||
background: rgba(20, 16, 12, 0.45);
|
|
||||||
box-shadow: none;
|
|
||||||
backdrop-filter: blur(6px);
|
|
||||||
-webkit-backdrop-filter: blur(6px);
|
|
||||||
transition: background 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
|
|
||||||
}
|
|
||||||
.site-header.scrolled {
|
|
||||||
background: rgba(255,255,255,0.97);
|
|
||||||
box-shadow: 0 1px 0 var(--border);
|
|
||||||
backdrop-filter: blur(12px);
|
|
||||||
-webkit-backdrop-filter: blur(12px);
|
|
||||||
}
|
|
||||||
.site-header:not(.scrolled) .nav-links a { color: rgba(255,255,255,0.85); }
|
|
||||||
.site-header:not(.scrolled) .nav-cta {
|
|
||||||
border-color: rgba(255,255,255,0.6);
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
.site-header:not(.scrolled) .nav-hamburger { color: #fff; }
|
|
||||||
|
|
||||||
/* ── Hero ── */
|
|
||||||
.hero {
|
|
||||||
position: relative;
|
|
||||||
height: 100vh;
|
|
||||||
min-height: 640px;
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-end;
|
|
||||||
padding-bottom: clamp(4rem, 8vh, 7rem);
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.hero-bg {
|
|
||||||
position: absolute;
|
|
||||||
inset: 0;
|
|
||||||
background-color: #1a1814;
|
|
||||||
background-image: url('assets/images/hero-bg.webp');
|
|
||||||
background-size: cover;
|
|
||||||
background-position: center 40%;
|
|
||||||
transform: scale(1.03);
|
|
||||||
transition: transform 8s ease;
|
|
||||||
}
|
|
||||||
.hero-bg::after {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
inset: 0;
|
|
||||||
background: linear-gradient(
|
|
||||||
to bottom,
|
|
||||||
rgba(20, 16, 12, 0.25) 0%,
|
|
||||||
rgba(20, 16, 12, 0.15) 40%,
|
|
||||||
rgba(20, 16, 12, 0.72) 100%
|
|
||||||
);
|
|
||||||
}
|
|
||||||
.hero-content {
|
|
||||||
position: relative;
|
|
||||||
z-index: 1;
|
|
||||||
max-width: 780px;
|
|
||||||
}
|
|
||||||
.hero-eyebrow {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.75rem;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.hero-eyebrow-line {
|
|
||||||
width: 40px;
|
|
||||||
height: 1.5px;
|
|
||||||
background: var(--rose);
|
|
||||||
}
|
|
||||||
.hero-eyebrow span {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.14em;
|
|
||||||
text-transform: uppercase;
|
|
||||||
color: rgba(255,255,255,0.75);
|
|
||||||
}
|
|
||||||
.hero h1 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(3rem, 7vw, 6rem);
|
|
||||||
line-height: 1.0;
|
|
||||||
letter-spacing: -0.025em;
|
|
||||||
color: #fff;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.hero h1 em {
|
|
||||||
font-style: italic;
|
|
||||||
color: rgba(255,255,255,0.7);
|
|
||||||
}
|
|
||||||
.hero-sub {
|
|
||||||
font-size: clamp(1rem, 2vw, 1.2rem);
|
|
||||||
line-height: 1.65;
|
|
||||||
color: rgba(255,255,255,0.78);
|
|
||||||
max-width: 520px;
|
|
||||||
margin-bottom: 2.25rem;
|
|
||||||
}
|
|
||||||
.hero-actions {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 1rem;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
.hero-scroll {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 2rem;
|
|
||||||
right: clamp(1.25rem, 5vw, 2.5rem);
|
|
||||||
z-index: 1;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.5rem;
|
|
||||||
color: rgba(255,255,255,0.5);
|
|
||||||
font-size: 0.75rem;
|
|
||||||
letter-spacing: 0.08em;
|
|
||||||
writing-mode: vertical-rl;
|
|
||||||
transform: rotate(180deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Stats Bar ── */
|
|
||||||
.stats-bar {
|
|
||||||
background: var(--ink);
|
|
||||||
padding: 2rem 0;
|
|
||||||
}
|
|
||||||
.stats-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(4, 1fr);
|
|
||||||
gap: 1px;
|
|
||||||
background: rgba(255,255,255,0.06);
|
|
||||||
}
|
|
||||||
.stat-item {
|
|
||||||
padding: 1.75rem 2rem;
|
|
||||||
background: var(--ink);
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.stat-num {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(2rem, 4vw, 3rem);
|
|
||||||
color: #fff;
|
|
||||||
line-height: 1;
|
|
||||||
margin-bottom: 0.375rem;
|
|
||||||
}
|
|
||||||
.stat-num span { color: var(--rose); }
|
|
||||||
.stat-label {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 500;
|
|
||||||
letter-spacing: 0.08em;
|
|
||||||
text-transform: uppercase;
|
|
||||||
color: rgba(255,255,255,0.45);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Services ── */
|
|
||||||
.services-section { background: var(--surface); }
|
|
||||||
.services-intro {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: var(--gap);
|
|
||||||
align-items: end;
|
|
||||||
margin-bottom: clamp(2.5rem, 5vw, 4rem);
|
|
||||||
}
|
|
||||||
.services-intro-right {
|
|
||||||
padding-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
.services-intro-right p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.services-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(3, 1fr);
|
|
||||||
gap: 1.5rem;
|
|
||||||
}
|
|
||||||
.service-card {
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
border-radius: 3px;
|
|
||||||
aspect-ratio: 4/5;
|
|
||||||
background: var(--warm-gray);
|
|
||||||
}
|
|
||||||
.service-card img {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
object-fit: cover;
|
|
||||||
transition: transform 0.6s ease;
|
|
||||||
}
|
|
||||||
.service-card:hover img { transform: scale(1.04); }
|
|
||||||
.service-card-overlay {
|
|
||||||
position: absolute;
|
|
||||||
inset: 0;
|
|
||||||
background: linear-gradient(to top, rgba(20,16,12,0.88) 0%, rgba(20,16,12,0.1) 55%);
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: flex-end;
|
|
||||||
padding: 1.75rem;
|
|
||||||
}
|
|
||||||
.service-card-num {
|
|
||||||
font-size: 0.6875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.12em;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.service-card h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.5rem;
|
|
||||||
color: #fff;
|
|
||||||
line-height: 1.15;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.service-card p {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: rgba(255,255,255,0.65);
|
|
||||||
line-height: 1.6;
|
|
||||||
max-height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
transition: max-height 0.35s ease, opacity 0.35s ease;
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
.service-card:hover p {
|
|
||||||
max-height: 5rem;
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
.service-card-link {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.375rem;
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-top: 0.875rem;
|
|
||||||
transition: gap 0.2s;
|
|
||||||
}
|
|
||||||
.service-card-link:hover { gap: 0.625rem; }
|
|
||||||
|
|
||||||
/* Large service card spans 2 cols */
|
|
||||||
.service-card-wide {
|
|
||||||
grid-column: span 2;
|
|
||||||
aspect-ratio: 2/1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── About Split ── */
|
|
||||||
.about-section { background: var(--warm-gray); }
|
|
||||||
.about-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: clamp(3rem, 6vw, 6rem);
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
.about-img-wrap {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.about-img-main {
|
|
||||||
width: 100%;
|
|
||||||
aspect-ratio: 4/5;
|
|
||||||
object-fit: cover;
|
|
||||||
border-radius: 3px;
|
|
||||||
}
|
|
||||||
.about-img-badge {
|
|
||||||
position: absolute;
|
|
||||||
bottom: -1.5rem;
|
|
||||||
right: -1.5rem;
|
|
||||||
background: var(--rose);
|
|
||||||
color: #fff;
|
|
||||||
padding: 1.5rem;
|
|
||||||
border-radius: 3px;
|
|
||||||
text-align: center;
|
|
||||||
min-width: 140px;
|
|
||||||
}
|
|
||||||
.about-img-badge strong {
|
|
||||||
display: block;
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 2.5rem;
|
|
||||||
line-height: 1;
|
|
||||||
}
|
|
||||||
.about-img-badge span {
|
|
||||||
display: block;
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 500;
|
|
||||||
letter-spacing: 0.06em;
|
|
||||||
opacity: 0.85;
|
|
||||||
margin-top: 0.25rem;
|
|
||||||
}
|
|
||||||
.about-content .label { margin-bottom: 0.75rem; }
|
|
||||||
.about-content h2 { margin-bottom: 1.25rem; }
|
|
||||||
.about-content > p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.about-pillars {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: 1rem;
|
|
||||||
margin-top: 2rem;
|
|
||||||
}
|
|
||||||
.pillar {
|
|
||||||
padding: 1.25rem;
|
|
||||||
background: var(--surface);
|
|
||||||
border-left: 3px solid var(--rose);
|
|
||||||
}
|
|
||||||
.pillar h4 {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
.pillar p {
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.55;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Process ── */
|
|
||||||
.process-section { background: var(--ink); }
|
|
||||||
.process-header { margin-bottom: 3.5rem; }
|
|
||||||
.process-header .label { color: rgba(204, 51, 102, 0.9); }
|
|
||||||
.process-header h2 { color: #fff; }
|
|
||||||
.process-steps {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(4, 1fr);
|
|
||||||
gap: 2rem;
|
|
||||||
counter-reset: step;
|
|
||||||
}
|
|
||||||
.process-step {
|
|
||||||
counter-increment: step;
|
|
||||||
position: relative;
|
|
||||||
padding-top: 1rem;
|
|
||||||
}
|
|
||||||
.process-step::before {
|
|
||||||
content: counter(step, decimal-leading-zero);
|
|
||||||
display: block;
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 3.5rem;
|
|
||||||
line-height: 1;
|
|
||||||
color: rgba(255,255,255,0.07);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.process-step-bar {
|
|
||||||
width: 40px;
|
|
||||||
height: 2px;
|
|
||||||
background: var(--rose);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.process-step h3 {
|
|
||||||
font-size: 1rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: #fff;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.process-step p {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: rgba(255,255,255,0.45);
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Testimonials ── */
|
|
||||||
.testimonials-section { background: var(--surface); }
|
|
||||||
.testimonials-header {
|
|
||||||
display: flex;
|
|
||||||
align-items: flex-end;
|
|
||||||
justify-content: space-between;
|
|
||||||
margin-bottom: 3rem;
|
|
||||||
gap: 2rem;
|
|
||||||
}
|
|
||||||
.testimonials-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr 1fr;
|
|
||||||
gap: 1.5rem;
|
|
||||||
}
|
|
||||||
.testimonial-card {
|
|
||||||
padding: 2rem;
|
|
||||||
background: var(--body-bg);
|
|
||||||
border-top: 2px solid var(--border);
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.testimonial-card.featured {
|
|
||||||
background: var(--rose);
|
|
||||||
border-top-color: var(--rose-dark);
|
|
||||||
}
|
|
||||||
.testimonial-stars {
|
|
||||||
display: flex;
|
|
||||||
gap: 3px;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.testimonial-stars span {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
.testimonial-card.featured .testimonial-stars span { color: rgba(255,255,255,0.9); }
|
|
||||||
.testimonial-card blockquote {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.125rem;
|
|
||||||
font-style: italic;
|
|
||||||
line-height: 1.55;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
||||||
.testimonial-card.featured blockquote { color: #fff; }
|
|
||||||
.testimonial-author {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.75rem;
|
|
||||||
}
|
|
||||||
.testimonial-author-initials {
|
|
||||||
width: 36px;
|
|
||||||
height: 36px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: var(--rose-tint);
|
|
||||||
color: var(--rose);
|
|
||||||
font-size: 0.75rem;
|
|
||||||
font-weight: 700;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
flex-shrink: 0;
|
|
||||||
}
|
|
||||||
.testimonial-card.featured .testimonial-author-initials {
|
|
||||||
background: rgba(255,255,255,0.2);
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
.testimonial-author-name {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
}
|
|
||||||
.testimonial-card.featured .testimonial-author-name { color: #fff; }
|
|
||||||
.testimonial-author-role {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
}
|
|
||||||
.testimonial-card.featured .testimonial-author-role { color: rgba(255,255,255,0.65); }
|
|
||||||
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.services-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
.service-card-wide { grid-column: span 2; aspect-ratio: 16/9; }
|
|
||||||
.process-steps { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
|
|
||||||
.testimonials-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
.testimonials-grid .testimonial-card:last-child { display: none; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.hero h1 { font-size: clamp(2.5rem, 9vw, 4rem); }
|
|
||||||
|
|
||||||
.stats-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
.services-intro { grid-template-columns: 1fr; }
|
|
||||||
.services-grid { grid-template-columns: 1fr; }
|
|
||||||
.service-card-wide { grid-column: span 1; aspect-ratio: 4/3; }
|
|
||||||
.about-grid { grid-template-columns: 1fr; }
|
|
||||||
.about-img-badge { right: 1rem; }
|
|
||||||
.process-steps { grid-template-columns: 1fr; }
|
|
||||||
.testimonials-grid { grid-template-columns: 1fr; }
|
|
||||||
.testimonials-grid .testimonial-card:last-child { display: block; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
|
||||||
.stats-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
.hero-actions { flex-direction: column; align-items: flex-start; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<!-- Mobile Menu -->
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Hero ── -->
|
|
||||||
<section class="hero">
|
|
||||||
<div class="hero-bg" id="hero-bg"></div>
|
|
||||||
<div class="container">
|
|
||||||
<div class="hero-content">
|
|
||||||
<div class="hero-eyebrow">
|
|
||||||
<div class="hero-eyebrow-line"></div>
|
|
||||||
<span>Construction & Facilities Services — Ronkonkoma, NY</span>
|
|
||||||
</div>
|
|
||||||
<h1>Built on<br><em>integrity,</em><br>delivered with<br>precision.</h1>
|
|
||||||
<p class="hero-sub">With 20 years of experience, Sea Haven Industries provides responsive and reliable construction management solutions, ensuring every project meets the highest standards of quality and professionalism.</p>
|
|
||||||
<div class="hero-actions">
|
|
||||||
<a href="/services/" class="btn btn-primary">
|
|
||||||
Explore Services
|
|
||||||
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
<a href="/contact/" class="btn btn-ghost-light">Request a Quote</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hero-scroll">Scroll</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Stats Bar ── -->
|
|
||||||
<div class="stats-bar">
|
|
||||||
<div class="container">
|
|
||||||
<div class="stats-grid">
|
|
||||||
<div class="stat-item">
|
|
||||||
<div class="stat-num">2,500<span>+</span></div>
|
|
||||||
<div class="stat-label">Projects Annually</div>
|
|
||||||
</div>
|
|
||||||
<div class="stat-item">
|
|
||||||
<div class="stat-num">1,000<span>+</span></div>
|
|
||||||
<div class="stat-label">Customers</div>
|
|
||||||
</div>
|
|
||||||
<div class="stat-item">
|
|
||||||
<div class="stat-num">120<span>+</span></div>
|
|
||||||
<div class="stat-label">Expert Technicians</div>
|
|
||||||
</div>
|
|
||||||
<div class="stat-item">
|
|
||||||
<div class="stat-num">40<span>+</span></div>
|
|
||||||
<div class="stat-label">Branch Offices</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Services ── -->
|
|
||||||
<section class="section services-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="services-intro">
|
|
||||||
<div class="services-intro-left">
|
|
||||||
<p class="label">What We Do</p>
|
|
||||||
<h2 class="display-lg">Comprehensive facilities expertise, under one roof.</h2>
|
|
||||||
</div>
|
|
||||||
<div class="services-intro-right">
|
|
||||||
<p>We combine deep technical knowledge across multiple trades with a self-performing model — so you work with one trusted partner, not a rotating cast of subcontractors. No middlemen, no inconsistencies, just reliable results.</p>
|
|
||||||
<a href="/services/" class="btn btn-outline">View All Services</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="services-grid">
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/electrical.webp"
|
|
||||||
alt="Electrical installation work"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">01 — Electrical</div>
|
|
||||||
<h3>Electrical Systems</h3>
|
|
||||||
<p>Installation, maintenance, and repair for commercial and residential electrical systems.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/plumbing.webp"
|
|
||||||
alt="Professional plumbing services"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">02 — Plumbing</div>
|
|
||||||
<h3>Plumbing</h3>
|
|
||||||
<p>From minor repairs to major installations, our experienced plumbers are ready to handle all your plumbing needs.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/hvac.webp"
|
|
||||||
alt="HVAC air conditioning service"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">03 — HVACR</div>
|
|
||||||
<h3>HVACR Services</h3>
|
|
||||||
<p>Expert installation, efficient repair, and maintenance of heating, ventilation, and air conditioning systems.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/handyman.webp"
|
|
||||||
alt="Handyman services"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">04 — Handyman</div>
|
|
||||||
<h3>Handyman Services</h3>
|
|
||||||
<p>Our expert team handles a variety of repair and maintenance tasks, ensuring your facility always remains in prime condition.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card service-card-wide">
|
|
||||||
<img src="/assets/images/garage-door.webp"
|
|
||||||
alt="Garage door repair service"
|
|
||||||
loading="lazy"
|
|
||||||
style="object-position: center 60%">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">05 — Garage Door Repair</div>
|
|
||||||
<h3>Garage Door Repair</h3>
|
|
||||||
<p>Expert repair and maintenance services to ensure the smooth operation and extended longevity of your garage doors.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── About ── -->
|
|
||||||
<section class="section about-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="about-grid">
|
|
||||||
<div class="about-img-wrap">
|
|
||||||
<img class="about-img-main"
|
|
||||||
src="/assets/images/team-on-site.webp"
|
|
||||||
alt="Sea Haven Industries team on site"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="about-img-badge">
|
|
||||||
<strong>20</strong>
|
|
||||||
<span>Years of<br>Experience</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="about-content">
|
|
||||||
<p class="label">Who We Are</p>
|
|
||||||
<h2 class="display-md">A contractor that treats your project like their own.</h2>
|
|
||||||
<p>With 20 years of experience, Sea Haven Industries was built on the conviction that facilities work should be done right the first time. As a self-performing company, we maintain direct control over every project — no subcontractors, no surprises.</p>
|
|
||||||
<p>Every project, regardless of size, gets the same attention to safety, code compliance, and craftsmanship that our clients have come to expect.</p>
|
|
||||||
<div class="about-pillars">
|
|
||||||
<div class="pillar">
|
|
||||||
<h4>Rapid Response</h4>
|
|
||||||
<p>Emergency and standard crews dispatched at a moment's notice — minimal downtime, maximum efficiency.</p>
|
|
||||||
</div>
|
|
||||||
<div class="pillar">
|
|
||||||
<h4>Quality</h4>
|
|
||||||
<p>Industry best practices and 120+ licensed technicians on every job.</p>
|
|
||||||
</div>
|
|
||||||
<div class="pillar">
|
|
||||||
<h4>Safety</h4>
|
|
||||||
<p>OSHA-compliant processes and a zero-incident culture across all trades.</p>
|
|
||||||
</div>
|
|
||||||
<div class="pillar">
|
|
||||||
<h4>Innovation</h4>
|
|
||||||
<p>Custom solutions — from retrofitting facilities with bespoke equipment to solving unique client challenges.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div style="margin-top: 2rem;">
|
|
||||||
<a href="/about/" class="btn btn-primary">Our Story</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Process ── -->
|
|
||||||
<section class="section process-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="process-header section-header">
|
|
||||||
<p class="label">How We Work</p>
|
|
||||||
<h2 class="display-lg" style="color:#fff; max-width: 500px;">A proven process from first call to final inspection.</h2>
|
|
||||||
</div>
|
|
||||||
<div class="process-steps">
|
|
||||||
<div class="process-step">
|
|
||||||
<div class="process-step-bar"></div>
|
|
||||||
<h3>Discovery & Assessment</h3>
|
|
||||||
<p>We listen first. A site visit or detailed consultation helps us understand scope, constraints, and your specific objectives.</p>
|
|
||||||
</div>
|
|
||||||
<div class="process-step">
|
|
||||||
<div class="process-step-bar"></div>
|
|
||||||
<h3>Proposal & Planning</h3>
|
|
||||||
<p>A clear, itemized proposal with realistic timelines. No vague estimates — just a detailed plan you can hold us to.</p>
|
|
||||||
</div>
|
|
||||||
<div class="process-step">
|
|
||||||
<div class="process-step-bar"></div>
|
|
||||||
<h3>Execution</h3>
|
|
||||||
<p>Licensed crews, managed schedules, and regular progress updates. We keep the site clean and communication consistent.</p>
|
|
||||||
</div>
|
|
||||||
<div class="process-step">
|
|
||||||
<div class="process-step-bar"></div>
|
|
||||||
<h3>Sign-Off & Support</h3>
|
|
||||||
<p>We don't consider a job done until you do. Walk-throughs, documentation, and ongoing support for any follow-up needs.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Testimonials ── -->
|
|
||||||
<section class="section testimonials-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="testimonials-header">
|
|
||||||
<div>
|
|
||||||
<p class="label">Client Feedback</p>
|
|
||||||
<h2 class="display-md">What our clients say.</h2>
|
|
||||||
</div>
|
|
||||||
<a href="/contact/" class="btn btn-outline" style="flex-shrink:0">Work With Us</a>
|
|
||||||
</div>
|
|
||||||
<div class="testimonials-grid">
|
|
||||||
<div class="testimonial-card">
|
|
||||||
<div class="testimonial-stars">
|
|
||||||
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
|
||||||
</div>
|
|
||||||
<blockquote>"Sea Haven Industries did an amazing job on our commercial addition. Their team was not only skilled but also very respectful of our space. They completed the project on time, and the result is stunning."</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<div class="testimonial-author-initials">LG</div>
|
|
||||||
<div>
|
|
||||||
<div class="testimonial-author-name">Laura G.</div>
|
|
||||||
<div class="testimonial-author-role">Commercial Property Manager</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="testimonial-card featured">
|
|
||||||
<div class="testimonial-stars">
|
|
||||||
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
|
||||||
</div>
|
|
||||||
<blockquote>"From start to finish, Sea Haven Industries provided excellent service. Their team was prompt, courteous, and incredibly skilled. The quality of their work speaks for itself."</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<div class="testimonial-author-initials">JD</div>
|
|
||||||
<div>
|
|
||||||
<div class="testimonial-author-name">John D.</div>
|
|
||||||
<div class="testimonial-author-role">Real Estate Investor</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="testimonial-card">
|
|
||||||
<div class="testimonial-stars">
|
|
||||||
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
|
||||||
</div>
|
|
||||||
<blockquote>"I was impressed with the professionalism and skill of the team at Sea Haven Industries. They managed our commercial renovation with minimal disruption and delivered exceptional results."</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<div class="testimonial-author-initials">ES</div>
|
|
||||||
<div>
|
|
||||||
<div class="testimonial-author-name">Emily S.</div>
|
|
||||||
<div class="testimonial-author-role">Facilities Director</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── CTA ── -->
|
|
||||||
<section class="cta-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="cta-inner">
|
|
||||||
<div class="cta-text">
|
|
||||||
<p class="label">Start Your Project</p>
|
|
||||||
<h2 class="display-md">Ready to get it done right?</h2>
|
|
||||||
<p>Whether it's a repair call, a maintenance contract, or a full construction project — Sea Haven is ready to help. Get a detailed, no-obligation quote from our team.</p>
|
|
||||||
</div>
|
|
||||||
<div class="cta-actions">
|
|
||||||
<a href="/contact/" class="btn btn-primary">Request a Free Quote</a>
|
|
||||||
<div class="cta-phone">
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 3.5C2 2.67 2.67 2 3.5 2h1.586a1 1 0 0 1 .707.293l1.414 1.414a1 1 0 0 1 0 1.414L6.12 6.207A10.003 10.003 0 0 0 9.793 9.88l1.086-1.086a1 1 0 0 1 1.414 0l1.414 1.414A1 1 0 0 1 14 11v1.5c0 .83-.67 1.5-1.5 1.5C6.596 14 2 9.404 2 3.5z"/></svg>
|
|
||||||
Or call us: <strong>(631) 776-5102</strong>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
// Sticky nav
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
|
|
||||||
// Parallax hero bg (subtle)
|
|
||||||
const heroBg = document.getElementById('hero-bg');
|
|
||||||
window.addEventListener('scroll', () => {
|
|
||||||
if (heroBg && window.scrollY < window.innerHeight) {
|
|
||||||
heroBg.style.transform = `scale(1.03) translateY(${window.scrollY * 0.18}px)`;
|
|
||||||
}
|
|
||||||
}, { passive: true });
|
|
||||||
|
|
||||||
// Mobile menu
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "LocalBusiness",
|
|
||||||
"name": "Sea Haven Industries",
|
|
||||||
"description": "Construction and facilities services company specializing in electrical, plumbing, HVACR, handyman, and garage door services.",
|
|
||||||
"url": "https://seahaven.com",
|
|
||||||
"telephone": "+16317765102",
|
|
||||||
"email": "work-orders@seahaven.com",
|
|
||||||
"address": {
|
|
||||||
"@type": "PostalAddress",
|
|
||||||
"streetAddress": "710 Koehler Ave",
|
|
||||||
"addressLocality": "Ronkonkoma",
|
|
||||||
"addressRegion": "NY",
|
|
||||||
"postalCode": "11779",
|
|
||||||
"addressCountry": "US"
|
|
||||||
},
|
|
||||||
"image": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png",
|
|
||||||
"numberOfEmployees": {
|
|
||||||
"@type": "QuantitativeValue",
|
|
||||||
"minValue": 120
|
|
||||||
},
|
|
||||||
"foundingDate": "2006",
|
|
||||||
"serviceType": ["Electrical Work", "Plumbing", "HVACR Services", "Handyman Services", "Garage Door Repair"]
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
312
index.njk
Normal file
312
index.njk
Normal file
|
|
@ -0,0 +1,312 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Sea Haven Industries — Construction & Facilities Services"
|
||||||
|
description: "Sea Haven Industries is a trusted construction and facilities services company with years of experience in electrical, plumbing, HVAC, and general contracting."
|
||||||
|
heroNav: true
|
||||||
|
pageCss: home
|
||||||
|
permalink: /index.html
|
||||||
|
---
|
||||||
|
<!-- ── Hero ── -->
|
||||||
|
<section class="hero">
|
||||||
|
<div class="hero-bg" id="hero-bg"></div>
|
||||||
|
<div class="container">
|
||||||
|
<div class="hero-content">
|
||||||
|
<div class="hero-eyebrow">
|
||||||
|
<div class="hero-eyebrow-line"></div>
|
||||||
|
<span>Construction & Facilities Services — Ronkonkoma, NY</span>
|
||||||
|
</div>
|
||||||
|
<h1>Built on<br><em>integrity,</em><br>delivered with<br>precision.</h1>
|
||||||
|
<p class="hero-sub">With 20 years of experience, Sea Haven Industries provides responsive and reliable construction management solutions, ensuring every project meets the highest standards of quality and professionalism.</p>
|
||||||
|
<div class="hero-actions">
|
||||||
|
<a href="/services/" class="btn btn-primary">
|
||||||
|
Explore Services
|
||||||
|
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
<a href="/contact/" class="btn btn-ghost-light">Request a Quote</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hero-scroll">Scroll</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Stats Bar ── -->
|
||||||
|
<div class="stats-bar">
|
||||||
|
<div class="container">
|
||||||
|
<div class="stats-grid">
|
||||||
|
<div class="stat-item">
|
||||||
|
<div class="stat-num">2,500<span>+</span></div>
|
||||||
|
<div class="stat-label">Projects Annually</div>
|
||||||
|
</div>
|
||||||
|
<div class="stat-item">
|
||||||
|
<div class="stat-num">1,000<span>+</span></div>
|
||||||
|
<div class="stat-label">Customers</div>
|
||||||
|
</div>
|
||||||
|
<div class="stat-item">
|
||||||
|
<div class="stat-num">120<span>+</span></div>
|
||||||
|
<div class="stat-label">Expert Technicians</div>
|
||||||
|
</div>
|
||||||
|
<div class="stat-item">
|
||||||
|
<div class="stat-num">40<span>+</span></div>
|
||||||
|
<div class="stat-label">Branch Offices</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- ── Services ── -->
|
||||||
|
<section class="section services-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="services-intro">
|
||||||
|
<div class="services-intro-left">
|
||||||
|
<p class="label">What We Do</p>
|
||||||
|
<h2 class="display-lg">Comprehensive facilities expertise, under one roof.</h2>
|
||||||
|
</div>
|
||||||
|
<div class="services-intro-right">
|
||||||
|
<p>We combine deep technical knowledge across multiple trades with a self-performing model — so you work with one trusted partner, not a rotating cast of subcontractors. No middlemen, no inconsistencies, just reliable results.</p>
|
||||||
|
<a href="/services/" class="btn btn-outline">View All Services</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="services-grid">
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "electrical", "Electrical installation work", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">01 — Electrical</div>
|
||||||
|
<h3>Electrical Systems</h3>
|
||||||
|
<p>Installation, maintenance, and repair for commercial and residential electrical systems.</p>
|
||||||
|
<a href="/services/" class="service-card-link">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "plumbing", "Professional plumbing services", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">02 — Plumbing</div>
|
||||||
|
<h3>Plumbing</h3>
|
||||||
|
<p>From minor repairs to major installations, our experienced plumbers are ready to handle all your plumbing needs.</p>
|
||||||
|
<a href="/services/" class="service-card-link">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "hvac", "HVAC air conditioning service", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">03 — HVACR</div>
|
||||||
|
<h3>HVACR Services</h3>
|
||||||
|
<p>Expert installation, efficient repair, and maintenance of heating, ventilation, and air conditioning systems.</p>
|
||||||
|
<a href="/services/" class="service-card-link">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "handyman", "Handyman services", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">04 — Handyman</div>
|
||||||
|
<h3>Handyman Services</h3>
|
||||||
|
<p>Our expert team handles a variety of repair and maintenance tasks, ensuring your facility always remains in prime condition.</p>
|
||||||
|
<a href="/services/" class="service-card-link">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card service-card-wide">
|
||||||
|
{% image "garage-door", "Garage door repair service", 'loading="lazy" style="object-position: center 60%"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">05 — Garage Door Repair</div>
|
||||||
|
<h3>Garage Door Repair</h3>
|
||||||
|
<p>Expert repair and maintenance services to ensure the smooth operation and extended longevity of your garage doors.</p>
|
||||||
|
<a href="/services/" class="service-card-link">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── About ── -->
|
||||||
|
<section class="section about-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="about-grid">
|
||||||
|
<div class="about-img-wrap">
|
||||||
|
{% image "team-on-site", "Sea Haven Industries team on site", 'class="about-img-main" loading="lazy"' %}
|
||||||
|
<div class="about-img-badge">
|
||||||
|
<strong>20</strong>
|
||||||
|
<span>Years of<br>Experience</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="about-content">
|
||||||
|
<p class="label">Who We Are</p>
|
||||||
|
<h2 class="display-md">A contractor that treats your project like their own.</h2>
|
||||||
|
<p>With 20 years of experience, Sea Haven Industries was built on the conviction that facilities work should be done right the first time. As a self-performing company, we maintain direct control over every project — no subcontractors, no surprises.</p>
|
||||||
|
<p>Every project, regardless of size, gets the same attention to safety, code compliance, and craftsmanship that our clients have come to expect.</p>
|
||||||
|
<div class="about-pillars">
|
||||||
|
<div class="pillar">
|
||||||
|
<h4>Rapid Response</h4>
|
||||||
|
<p>Emergency and standard crews dispatched at a moment's notice — minimal downtime, maximum efficiency.</p>
|
||||||
|
</div>
|
||||||
|
<div class="pillar">
|
||||||
|
<h4>Quality</h4>
|
||||||
|
<p>Industry best practices and 120+ licensed technicians on every job.</p>
|
||||||
|
</div>
|
||||||
|
<div class="pillar">
|
||||||
|
<h4>Safety</h4>
|
||||||
|
<p>OSHA-compliant processes and a zero-incident culture across all trades.</p>
|
||||||
|
</div>
|
||||||
|
<div class="pillar">
|
||||||
|
<h4>Innovation</h4>
|
||||||
|
<p>Custom solutions — from retrofitting facilities with bespoke equipment to solving unique client challenges.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="margin-top: 2rem;">
|
||||||
|
<a href="/about/" class="btn btn-primary">Our Story</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Process ── -->
|
||||||
|
<section class="section process-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="process-header section-header">
|
||||||
|
<p class="label">How We Work</p>
|
||||||
|
<h2 class="display-lg" style="color:#fff; max-width: 500px;">A proven process from first call to final inspection.</h2>
|
||||||
|
</div>
|
||||||
|
<div class="process-steps">
|
||||||
|
<div class="process-step">
|
||||||
|
<div class="process-step-bar"></div>
|
||||||
|
<h3>Discovery & Assessment</h3>
|
||||||
|
<p>We listen first. A site visit or detailed consultation helps us understand scope, constraints, and your specific objectives.</p>
|
||||||
|
</div>
|
||||||
|
<div class="process-step">
|
||||||
|
<div class="process-step-bar"></div>
|
||||||
|
<h3>Proposal & Planning</h3>
|
||||||
|
<p>A clear, itemized proposal with realistic timelines. No vague estimates — just a detailed plan you can hold us to.</p>
|
||||||
|
</div>
|
||||||
|
<div class="process-step">
|
||||||
|
<div class="process-step-bar"></div>
|
||||||
|
<h3>Execution</h3>
|
||||||
|
<p>Licensed crews, managed schedules, and regular progress updates. We keep the site clean and communication consistent.</p>
|
||||||
|
</div>
|
||||||
|
<div class="process-step">
|
||||||
|
<div class="process-step-bar"></div>
|
||||||
|
<h3>Sign-Off & Support</h3>
|
||||||
|
<p>We don't consider a job done until you do. Walk-throughs, documentation, and ongoing support for any follow-up needs.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Testimonials ── -->
|
||||||
|
<section class="section testimonials-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="testimonials-header">
|
||||||
|
<div>
|
||||||
|
<p class="label">Client Feedback</p>
|
||||||
|
<h2 class="display-md">What our clients say.</h2>
|
||||||
|
</div>
|
||||||
|
<a href="/contact/" class="btn btn-outline" style="flex-shrink:0">Work With Us</a>
|
||||||
|
</div>
|
||||||
|
<div class="testimonials-grid">
|
||||||
|
<div class="testimonial-card">
|
||||||
|
<div class="testimonial-stars">
|
||||||
|
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
||||||
|
</div>
|
||||||
|
<blockquote>"Sea Haven Industries did an amazing job on our commercial addition. Their team was not only skilled but also very respectful of our space. They completed the project on time, and the result is stunning."</blockquote>
|
||||||
|
<div class="testimonial-author">
|
||||||
|
<div class="testimonial-author-initials">LG</div>
|
||||||
|
<div>
|
||||||
|
<div class="testimonial-author-name">Laura G.</div>
|
||||||
|
<div class="testimonial-author-role">Commercial Property Manager</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="testimonial-card featured">
|
||||||
|
<div class="testimonial-stars">
|
||||||
|
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
||||||
|
</div>
|
||||||
|
<blockquote>"From start to finish, Sea Haven Industries provided excellent service. Their team was prompt, courteous, and incredibly skilled. The quality of their work speaks for itself."</blockquote>
|
||||||
|
<div class="testimonial-author">
|
||||||
|
<div class="testimonial-author-initials">JD</div>
|
||||||
|
<div>
|
||||||
|
<div class="testimonial-author-name">John D.</div>
|
||||||
|
<div class="testimonial-author-role">Real Estate Investor</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="testimonial-card">
|
||||||
|
<div class="testimonial-stars">
|
||||||
|
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
|
||||||
|
</div>
|
||||||
|
<blockquote>"I was impressed with the professionalism and skill of the team at Sea Haven Industries. They managed our commercial renovation with minimal disruption and delivered exceptional results."</blockquote>
|
||||||
|
<div class="testimonial-author">
|
||||||
|
<div class="testimonial-author-initials">ES</div>
|
||||||
|
<div>
|
||||||
|
<div class="testimonial-author-name">Emily S.</div>
|
||||||
|
<div class="testimonial-author-role">Facilities Director</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── CTA ── -->
|
||||||
|
<section class="cta-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="cta-inner">
|
||||||
|
<div class="cta-text">
|
||||||
|
<p class="label">Start Your Project</p>
|
||||||
|
<h2 class="display-md">Ready to get it done right?</h2>
|
||||||
|
<p>Whether it's a repair call, a maintenance contract, or a full construction project — Sea Haven is ready to help. Get a detailed, no-obligation quote from our team.</p>
|
||||||
|
</div>
|
||||||
|
<div class="cta-actions">
|
||||||
|
<a href="/contact/" class="btn btn-primary">Request a Free Quote</a>
|
||||||
|
<div class="cta-phone">
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 3.5C2 2.67 2.67 2 3.5 2h1.586a1 1 0 0 1 .707.293l1.414 1.414a1 1 0 0 1 0 1.414L6.12 6.207A10.003 10.003 0 0 0 9.793 9.88l1.086-1.086a1 1 0 0 1 1.414 0l1.414 1.414A1 1 0 0 1 14 11v1.5c0 .83-.67 1.5-1.5 1.5C6.596 14 2 9.404 2 3.5z"/></svg>
|
||||||
|
Or call us: <strong>(631) 776-5102</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<script type="application/ld+json">
|
||||||
|
{
|
||||||
|
"@context": "https://schema.org",
|
||||||
|
"@type": "LocalBusiness",
|
||||||
|
"name": "Sea Haven Industries",
|
||||||
|
"description": "Construction and facilities services company specializing in electrical, plumbing, HVACR, handyman, and garage door services.",
|
||||||
|
"url": "https://seahaven.com",
|
||||||
|
"telephone": "+16317765102",
|
||||||
|
"email": "work-orders@seahaven.com",
|
||||||
|
"address": {
|
||||||
|
"@type": "PostalAddress",
|
||||||
|
"streetAddress": "710 Koehler Ave",
|
||||||
|
"addressLocality": "Ronkonkoma",
|
||||||
|
"addressRegion": "NY",
|
||||||
|
"postalCode": "11779",
|
||||||
|
"addressCountry": "US"
|
||||||
|
},
|
||||||
|
"image": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png",
|
||||||
|
"numberOfEmployees": {
|
||||||
|
"@type": "QuantitativeValue",
|
||||||
|
"minValue": 120
|
||||||
|
},
|
||||||
|
"foundingDate": "2006",
|
||||||
|
"serviceType": ["Electrical Work", "Plumbing", "HVACR Services", "Handyman Services", "Garage Door Repair"]
|
||||||
|
}
|
||||||
|
</script>
|
||||||
1553
package-lock.json
generated
Normal file
1553
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
15
package.json
Normal file
15
package.json
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"name": "seahaven-site",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"private": true,
|
||||||
|
"description": "Sea Haven Industries marketing site — static HTML built with Eleventy, served from S3 + CloudFront.",
|
||||||
|
"scripts": {
|
||||||
|
"build": "eleventy",
|
||||||
|
"serve": "eleventy --serve",
|
||||||
|
"clean": "rm -rf _site"
|
||||||
|
},
|
||||||
|
"license": "UNLICENSED",
|
||||||
|
"dependencies": {
|
||||||
|
"@11ty/eleventy": "3.1.6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,244 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Privacy Policy — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Privacy Policy for Sea Haven Industries. Learn how we collect, use, and protect your personal information.">
|
|
||||||
<meta property="og:title" content="Privacy Policy — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Privacy Policy for Sea Haven Industries. Learn how we collect, use, and protect your personal information.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/privacy-policy/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/privacy-policy/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Prose Content ── */
|
|
||||||
.prose-section {
|
|
||||||
background: var(--surface);
|
|
||||||
padding: clamp(4rem, 8vw, 7rem) 0;
|
|
||||||
}
|
|
||||||
.prose {
|
|
||||||
max-width: 800px;
|
|
||||||
}
|
|
||||||
.prose h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.375rem;
|
|
||||||
line-height: 1.25;
|
|
||||||
color: var(--text);
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
}
|
|
||||||
.prose h3:first-child {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.prose p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul {
|
|
||||||
padding-left: 1.5rem;
|
|
||||||
list-style-type: disc;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul li {
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.prose a {
|
|
||||||
color: var(--rose);
|
|
||||||
text-decoration: underline;
|
|
||||||
text-underline-offset: 2px;
|
|
||||||
}
|
|
||||||
.prose a:hover {
|
|
||||||
color: var(--rose-dark);
|
|
||||||
}
|
|
||||||
.prose em {
|
|
||||||
color: var(--text-muted);
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<span>Privacy Policy</span>
|
|
||||||
</nav>
|
|
||||||
<h1>Privacy Policy</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Content ── -->
|
|
||||||
<section class="prose-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="prose">
|
|
||||||
<p><em>Last updated: April 4, 2026</em></p>
|
|
||||||
|
|
||||||
<p>Sea Haven Industries, Inc. ("we," "us," or "our") operates the website seahaven.com. This Privacy Policy describes how we collect, use, and protect your personal information when you visit our website. This page is provided for informational purposes only and does not constitute legal advice.</p>
|
|
||||||
|
|
||||||
<h3>Information We Collect</h3>
|
|
||||||
<p>We may collect the following types of information when you interact with our website:</p>
|
|
||||||
<ul>
|
|
||||||
<li><strong>Personal Information:</strong> Name, email address, phone number, mailing address, and other details you voluntarily provide through contact forms or service inquiries.</li>
|
|
||||||
<li><strong>Usage Data:</strong> Information about how you access and use our website, including your IP address, browser type, pages visited, time spent on pages, and referring URLs.</li>
|
|
||||||
<li><strong>Cookies and Tracking Technologies:</strong> Small data files stored on your device that help us improve your browsing experience.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>How We Use Your Information</h3>
|
|
||||||
<p>We use the information we collect for the following purposes:</p>
|
|
||||||
<ul>
|
|
||||||
<li>To respond to your inquiries and provide requested services</li>
|
|
||||||
<li>To improve and maintain our website</li>
|
|
||||||
<li>To communicate with you about projects, services, or updates</li>
|
|
||||||
<li>To comply with legal obligations</li>
|
|
||||||
<li>To analyze website usage and trends</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Information Sharing</h3>
|
|
||||||
<p>We do not sell, trade, or rent your personal information to third parties. We may share your information in the following circumstances:</p>
|
|
||||||
<ul>
|
|
||||||
<li>With trusted service providers who assist us in operating our website and conducting business, provided they agree to keep your information confidential</li>
|
|
||||||
<li>When required by law, regulation, or legal process</li>
|
|
||||||
<li>To protect the rights, property, or safety of Sea Haven Industries, our users, or others</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Cookies</h3>
|
|
||||||
<p>Our website may use cookies and similar tracking technologies to enhance your experience. Cookies help us understand how visitors use our site and allow us to improve its functionality. You can control cookie settings through your browser preferences. Disabling cookies may affect certain features of the website.</p>
|
|
||||||
|
|
||||||
<h3>Data Security</h3>
|
|
||||||
<p>We implement reasonable administrative, technical, and physical safeguards to protect your personal information from unauthorized access, alteration, disclosure, or destruction. However, no method of transmission over the Internet or electronic storage is completely secure, and we cannot guarantee absolute security.</p>
|
|
||||||
|
|
||||||
<h3>Third-Party Links</h3>
|
|
||||||
<p>Our website may contain links to third-party websites. We are not responsible for the privacy practices or content of those sites. We encourage you to review the privacy policies of any third-party websites you visit.</p>
|
|
||||||
|
|
||||||
<h3>Children's Privacy</h3>
|
|
||||||
<p>Our website is not directed at children under the age of 13, and we do not knowingly collect personal information from children. If we become aware that we have collected information from a child under 13, we will take steps to delete that information promptly.</p>
|
|
||||||
|
|
||||||
<h3>Changes to This Policy</h3>
|
|
||||||
<p>We may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated revision date. We encourage you to review this policy periodically to stay informed about how we protect your information.</p>
|
|
||||||
|
|
||||||
<h3>Contact Us</h3>
|
|
||||||
<p>If you have questions or concerns about this Privacy Policy, please contact us:</p>
|
|
||||||
<p>Sea Haven Industries, Inc.<br>
|
|
||||||
710 Koehler Ave, Ronkonkoma, NY 11779<br>
|
|
||||||
Email: <a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a><br>
|
|
||||||
Phone: (631) 776-5102</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
76
privacy-policy/index.njk
Normal file
76
privacy-policy/index.njk
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Privacy Policy — Sea Haven Industries"
|
||||||
|
description: "Privacy Policy for Sea Haven Industries. Learn how we collect, use, and protect your personal information."
|
||||||
|
pageCss: legal
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<span>Privacy Policy</span>
|
||||||
|
</nav>
|
||||||
|
<h1>Privacy Policy</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Content ── -->
|
||||||
|
<section class="prose-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="prose">
|
||||||
|
<p><em>Last updated: April 4, 2026</em></p>
|
||||||
|
|
||||||
|
<p>Sea Haven Industries, Inc. ("we," "us," or "our") operates the website seahaven.com. This Privacy Policy describes how we collect, use, and protect your personal information when you visit our website. This page is provided for informational purposes only and does not constitute legal advice.</p>
|
||||||
|
|
||||||
|
<h3>Information We Collect</h3>
|
||||||
|
<p>We may collect the following types of information when you interact with our website:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Personal Information:</strong> Name, email address, phone number, mailing address, and other details you voluntarily provide through contact forms or service inquiries.</li>
|
||||||
|
<li><strong>Usage Data:</strong> Information about how you access and use our website, including your IP address, browser type, pages visited, time spent on pages, and referring URLs.</li>
|
||||||
|
<li><strong>Cookies and Tracking Technologies:</strong> Small data files stored on your device that help us improve your browsing experience.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>How We Use Your Information</h3>
|
||||||
|
<p>We use the information we collect for the following purposes:</p>
|
||||||
|
<ul>
|
||||||
|
<li>To respond to your inquiries and provide requested services</li>
|
||||||
|
<li>To improve and maintain our website</li>
|
||||||
|
<li>To communicate with you about projects, services, or updates</li>
|
||||||
|
<li>To comply with legal obligations</li>
|
||||||
|
<li>To analyze website usage and trends</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Information Sharing</h3>
|
||||||
|
<p>We do not sell, trade, or rent your personal information to third parties. We may share your information in the following circumstances:</p>
|
||||||
|
<ul>
|
||||||
|
<li>With trusted service providers who assist us in operating our website and conducting business, provided they agree to keep your information confidential</li>
|
||||||
|
<li>When required by law, regulation, or legal process</li>
|
||||||
|
<li>To protect the rights, property, or safety of Sea Haven Industries, our users, or others</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Cookies</h3>
|
||||||
|
<p>Our website may use cookies and similar tracking technologies to enhance your experience. Cookies help us understand how visitors use our site and allow us to improve its functionality. You can control cookie settings through your browser preferences. Disabling cookies may affect certain features of the website.</p>
|
||||||
|
|
||||||
|
<h3>Data Security</h3>
|
||||||
|
<p>We implement reasonable administrative, technical, and physical safeguards to protect your personal information from unauthorized access, alteration, disclosure, or destruction. However, no method of transmission over the Internet or electronic storage is completely secure, and we cannot guarantee absolute security.</p>
|
||||||
|
|
||||||
|
<h3>Third-Party Links</h3>
|
||||||
|
<p>Our website may contain links to third-party websites. We are not responsible for the privacy practices or content of those sites. We encourage you to review the privacy policies of any third-party websites you visit.</p>
|
||||||
|
|
||||||
|
<h3>Children's Privacy</h3>
|
||||||
|
<p>Our website is not directed at children under the age of 13, and we do not knowingly collect personal information from children. If we become aware that we have collected information from a child under 13, we will take steps to delete that information promptly.</p>
|
||||||
|
|
||||||
|
<h3>Changes to This Policy</h3>
|
||||||
|
<p>We may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated revision date. We encourage you to review this policy periodically to stay informed about how we protect your information.</p>
|
||||||
|
|
||||||
|
<h3>Contact Us</h3>
|
||||||
|
<p>If you have questions or concerns about this Privacy Policy, please contact us:</p>
|
||||||
|
<p>Sea Haven Industries, Inc.<br>
|
||||||
|
710 Koehler Ave, Ronkonkoma, NY 11779<br>
|
||||||
|
Email: <a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a><br>
|
||||||
|
Phone: (631) 776-5102</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,453 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Services — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Sea Haven Industries offers reliable electrical, plumbing, HVAC, handyman, and garage door repair services for every need.">
|
|
||||||
<meta property="og:title" content="Services — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Sea Haven Industries offers reliable electrical, plumbing, HVAC, handyman, and garage door repair services for every need.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/services/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/services/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.grecaptcha-badge { visibility: hidden; }
|
|
||||||
|
|
||||||
/* ── Services Intro ── */
|
|
||||||
.services-intro-section { background: var(--surface); }
|
|
||||||
.services-intro-content {
|
|
||||||
max-width: 680px;
|
|
||||||
}
|
|
||||||
.services-intro-content .label { margin-bottom: 0.75rem; }
|
|
||||||
.services-intro-content p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1.0625rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
margin-top: 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Service Cards ── */
|
|
||||||
.services-cards-section {
|
|
||||||
background: var(--surface);
|
|
||||||
padding-top: 0;
|
|
||||||
}
|
|
||||||
.services-grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(3, 1fr);
|
|
||||||
gap: 1.5rem;
|
|
||||||
}
|
|
||||||
.service-card {
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
border-radius: 3px;
|
|
||||||
aspect-ratio: 4/5;
|
|
||||||
background: var(--warm-gray);
|
|
||||||
}
|
|
||||||
.service-card img {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
object-fit: cover;
|
|
||||||
transition: transform 0.6s ease;
|
|
||||||
}
|
|
||||||
.service-card:hover img { transform: scale(1.04); }
|
|
||||||
.service-card-overlay {
|
|
||||||
position: absolute;
|
|
||||||
inset: 0;
|
|
||||||
background: linear-gradient(to top, rgba(20,16,12,0.88) 0%, rgba(20,16,12,0.1) 55%);
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: flex-end;
|
|
||||||
padding: 1.75rem;
|
|
||||||
}
|
|
||||||
.service-card-num {
|
|
||||||
font-size: 0.6875rem;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.12em;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.service-card h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.5rem;
|
|
||||||
color: #fff;
|
|
||||||
line-height: 1.15;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.service-card p {
|
|
||||||
font-size: 0.875rem;
|
|
||||||
color: rgba(255,255,255,0.65);
|
|
||||||
line-height: 1.6;
|
|
||||||
max-height: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
transition: max-height 0.35s ease, opacity 0.35s ease;
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
.service-card:hover p {
|
|
||||||
max-height: 5rem;
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
.service-card-link {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.375rem;
|
|
||||||
font-size: 0.8125rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--rose);
|
|
||||||
margin-top: 0.875rem;
|
|
||||||
transition: gap 0.2s;
|
|
||||||
}
|
|
||||||
.service-card-link:hover { gap: 0.625rem; }
|
|
||||||
|
|
||||||
.service-card-wide {
|
|
||||||
grid-column: span 2;
|
|
||||||
aspect-ratio: 2/1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Contact Form Section ── */
|
|
||||||
.contact-section { background: var(--warm-gray); }
|
|
||||||
.contact-inner {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1.2fr;
|
|
||||||
gap: clamp(3rem, 6vw, 6rem);
|
|
||||||
align-items: start;
|
|
||||||
}
|
|
||||||
.contact-text .label { margin-bottom: 0.75rem; }
|
|
||||||
.contact-text h2 { margin-bottom: 1rem; }
|
|
||||||
.contact-text p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.75;
|
|
||||||
}
|
|
||||||
.contact-form {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: 1rem;
|
|
||||||
}
|
|
||||||
.form-group {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
gap: 0.375rem;
|
|
||||||
}
|
|
||||||
.form-group.full-width {
|
|
||||||
grid-column: span 2;
|
|
||||||
}
|
|
||||||
.form-group label .required {
|
|
||||||
color: var(--rose);
|
|
||||||
}
|
|
||||||
.form-submit {
|
|
||||||
grid-column: span 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Responsive (page-specific) ── */
|
|
||||||
@media (max-width: 1024px) {
|
|
||||||
.services-grid { grid-template-columns: 1fr 1fr; }
|
|
||||||
.service-card-wide { grid-column: span 2; aspect-ratio: 16/9; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
.services-grid { grid-template-columns: 1fr; }
|
|
||||||
.service-card-wide { grid-column: span 1; aspect-ratio: 4/3; }
|
|
||||||
.contact-inner { grid-template-columns: 1fr; }
|
|
||||||
.contact-form { grid-template-columns: 1fr; }
|
|
||||||
.form-group.full-width { grid-column: span 1; }
|
|
||||||
.form-submit { grid-column: span 1; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<!-- Mobile Menu -->
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<span>Services</span>
|
|
||||||
</nav>
|
|
||||||
<h1>Reliable Services for Every Need</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Services Intro ── -->
|
|
||||||
<section class="section services-intro-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="services-intro-content">
|
|
||||||
<p class="label">Services</p>
|
|
||||||
<p>Sea Haven Industries offers a comprehensive suite of facilities maintenance services designed to meet the diverse needs of commercial and industrial clients.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Service Cards ── -->
|
|
||||||
<section class="section services-cards-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="services-grid">
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/electrical.webp"
|
|
||||||
alt="Electrical installation work"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">01 — Electrical</div>
|
|
||||||
<h3>Electrical Work</h3>
|
|
||||||
<p>We offer a wide array of electrical services, including installation, maintenance, and repair of electrical systems and components.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/plumbing.webp"
|
|
||||||
alt="Professional plumbing services"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">02 — Plumbing</div>
|
|
||||||
<h3>Plumbing</h3>
|
|
||||||
<p>From minor repairs to major installations, our experienced and professional plumbers are ready to handle all your plumbing needs.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/hvac.webp"
|
|
||||||
alt="HVAC air conditioning service"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">03 — HVACR</div>
|
|
||||||
<h3>HVACR Services</h3>
|
|
||||||
<p>Our HVACR services include expert installation, efficient repair, and maintenance of heating, ventilation, and air conditioning systems.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card">
|
|
||||||
<img src="/assets/images/handyman.webp"
|
|
||||||
alt="Handyman services"
|
|
||||||
loading="lazy">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">04 — Handyman</div>
|
|
||||||
<h3>Handyman Services</h3>
|
|
||||||
<p>Our expert team is equipped to handle a variety of repair and maintenance tasks, ensuring your facility always remains in prime condition.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="service-card service-card-wide">
|
|
||||||
<img src="/assets/images/garage-door.webp"
|
|
||||||
alt="Garage door repair service"
|
|
||||||
loading="lazy"
|
|
||||||
style="object-position: center 60%">
|
|
||||||
<div class="service-card-overlay">
|
|
||||||
<div class="service-card-num">05 — Garage Door Repair</div>
|
|
||||||
<h3>Garage Door Repair</h3>
|
|
||||||
<p>We provide expert repair and maintenance services to ensure the smooth operation and extended longevity of your garage doors.</p>
|
|
||||||
<a href="/services/" class="service-card-link">
|
|
||||||
Learn more
|
|
||||||
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Contact Form ── -->
|
|
||||||
<section class="section contact-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="contact-inner">
|
|
||||||
<div class="contact-text">
|
|
||||||
<p class="label">Contact Us</p>
|
|
||||||
<h2 class="display-lg">Have a Question or Project Idea? Let's Talk!</h2>
|
|
||||||
<p>Have a project in mind or need more information about our construction services? Contact us today! Our friendly and knowledgeable team is ready to answer your questions and provide you with a detailed estimate.</p>
|
|
||||||
</div>
|
|
||||||
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; border-radius: 2px;">
|
|
||||||
<strong style="color: var(--text);">Message sent!</strong>
|
|
||||||
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for reaching out. We'll get back to you shortly.</p>
|
|
||||||
</div>
|
|
||||||
<form class="contact-form" action="https://usebasin.com/f/08bc652e1969" method="POST">
|
|
||||||
<input type="hidden" name="_gotcha" style="display:none">
|
|
||||||
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
|
||||||
<input type="hidden" name="g-recaptcha-version" value="v3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="first-name">First Name <span class="required">*</span></label>
|
|
||||||
<input type="text" id="first-name" name="first_name" required>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="last-name">Last Name <span class="required">*</span></label>
|
|
||||||
<input type="text" id="last-name" name="last_name" required>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="phone">Phone</label>
|
|
||||||
<input type="tel" id="phone" name="phone">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="subject">Subject</label>
|
|
||||||
<input type="text" id="subject" name="subject">
|
|
||||||
</div>
|
|
||||||
<div class="form-group full-width">
|
|
||||||
<label for="email">Email <span class="required">*</span></label>
|
|
||||||
<input type="email" id="email" name="email" required>
|
|
||||||
</div>
|
|
||||||
<div class="form-group full-width">
|
|
||||||
<label for="message">Message <span class="required">*</span></label>
|
|
||||||
<textarea id="message" name="message" rows="5" required></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-submit">
|
|
||||||
<button type="submit" class="btn btn-primary">Send Message</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
|
|
||||||
// AJAX form submission
|
|
||||||
const contactForm = document.querySelector('.contact-form');
|
|
||||||
const successMsg = document.getElementById('form-success');
|
|
||||||
contactForm.addEventListener('submit', async (e) => {
|
|
||||||
e.preventDefault();
|
|
||||||
const btn = contactForm.querySelector('button[type="submit"]');
|
|
||||||
btn.textContent = 'Sending...';
|
|
||||||
btn.disabled = true;
|
|
||||||
try {
|
|
||||||
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
|
|
||||||
document.getElementById('g-recaptcha-response').value = token;
|
|
||||||
const data = new FormData(contactForm);
|
|
||||||
const res = await fetch(contactForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
|
|
||||||
if (res.ok) {
|
|
||||||
contactForm.reset();
|
|
||||||
contactForm.style.display = 'none';
|
|
||||||
successMsg.style.display = 'block';
|
|
||||||
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
||||||
} else {
|
|
||||||
throw new Error('Submission failed');
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
btn.textContent = 'Send Message';
|
|
||||||
btn.disabled = false;
|
|
||||||
alert('Something went wrong. Please try again or email us directly at work-orders@seahaven.com');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
149
services/index.njk
Normal file
149
services/index.njk
Normal file
|
|
@ -0,0 +1,149 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Services — Sea Haven Industries"
|
||||||
|
description: "Sea Haven Industries offers reliable electrical, plumbing, HVAC, handyman, and garage door repair services for every need."
|
||||||
|
pageCss: services
|
||||||
|
recaptcha: true
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<span>Services</span>
|
||||||
|
</nav>
|
||||||
|
<h1>Reliable Services for Every Need</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Services Intro ── -->
|
||||||
|
<section class="section services-intro-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="services-intro-content">
|
||||||
|
<p class="label">Services</p>
|
||||||
|
<p>Sea Haven Industries offers a comprehensive suite of facilities maintenance services designed to meet the diverse needs of commercial and industrial clients.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Service Cards ── -->
|
||||||
|
<section class="section services-cards-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="services-grid">
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "electrical", "Electrical installation work", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">01 — Electrical</div>
|
||||||
|
<h3>Electrical Work</h3>
|
||||||
|
<p>We offer a wide array of electrical services, including installation, maintenance, and repair of electrical systems and components.</p>
|
||||||
|
<a href="/services/" class="service-card-link" aria-label="Learn more about Electrical Work">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "plumbing", "Professional plumbing services", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">02 — Plumbing</div>
|
||||||
|
<h3>Plumbing</h3>
|
||||||
|
<p>From minor repairs to major installations, our experienced and professional plumbers are ready to handle all your plumbing needs.</p>
|
||||||
|
<a href="/services/" class="service-card-link" aria-label="Learn more about Plumbing">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "hvac", "HVAC air conditioning service", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">03 — HVACR</div>
|
||||||
|
<h3>HVACR Services</h3>
|
||||||
|
<p>Our HVACR services include expert installation, efficient repair, and maintenance of heating, ventilation, and air conditioning systems.</p>
|
||||||
|
<a href="/services/" class="service-card-link" aria-label="Learn more about HVACR Services">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card">
|
||||||
|
{% image "handyman", "Handyman services", 'loading="lazy"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">04 — Handyman</div>
|
||||||
|
<h3>Handyman Services</h3>
|
||||||
|
<p>Our expert team is equipped to handle a variety of repair and maintenance tasks, ensuring your facility always remains in prime condition.</p>
|
||||||
|
<a href="/services/" class="service-card-link" aria-label="Learn more about Handyman Services">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="service-card service-card-wide">
|
||||||
|
{% image "garage-door", "Garage door repair service", 'loading="lazy" style="object-position: center 60%"' %}
|
||||||
|
<div class="service-card-overlay">
|
||||||
|
<div class="service-card-num">05 — Garage Door Repair</div>
|
||||||
|
<h3>Garage Door Repair</h3>
|
||||||
|
<p>We provide expert repair and maintenance services to ensure the smooth operation and extended longevity of your garage doors.</p>
|
||||||
|
<a href="/services/" class="service-card-link" aria-label="Learn more about Garage Door Repair">
|
||||||
|
Learn more
|
||||||
|
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.75" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Contact Form ── -->
|
||||||
|
<section class="section contact-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="contact-inner">
|
||||||
|
<div class="contact-text">
|
||||||
|
<p class="label">Contact Us</p>
|
||||||
|
<h2 class="display-lg">Have a Question or Project Idea? Let's Talk!</h2>
|
||||||
|
<p>Have a project in mind or need more information about our construction services? Contact us today! Our friendly and knowledgeable team is ready to answer your questions and provide you with a detailed estimate.</p>
|
||||||
|
</div>
|
||||||
|
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; border-radius: 2px;">
|
||||||
|
<strong style="color: var(--text);">Message sent!</strong>
|
||||||
|
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for reaching out. We'll get back to you shortly.</p>
|
||||||
|
</div>
|
||||||
|
<form class="contact-form" action="https://usebasin.com/f/08bc652e1969" method="POST">
|
||||||
|
<input type="hidden" name="_gotcha" style="display:none">
|
||||||
|
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
|
||||||
|
<input type="hidden" name="g-recaptcha-version" value="v3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="first-name">First Name <span class="required">*</span></label>
|
||||||
|
<input type="text" id="first-name" name="first_name" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="last-name">Last Name <span class="required">*</span></label>
|
||||||
|
<input type="text" id="last-name" name="last_name" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="phone">Phone</label>
|
||||||
|
<input type="tel" id="phone" name="phone">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="subject">Subject</label>
|
||||||
|
<input type="text" id="subject" name="subject">
|
||||||
|
</div>
|
||||||
|
<div class="form-group full-width">
|
||||||
|
<label for="email">Email <span class="required">*</span></label>
|
||||||
|
<input type="email" id="email" name="email" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group full-width">
|
||||||
|
<label for="message">Message <span class="required">*</span></label>
|
||||||
|
<textarea id="message" name="message" rows="5" required></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-submit">
|
||||||
|
<button type="submit" class="btn btn-primary">Send Message</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,293 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Social Accountability — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Learn about Sea Haven Industries' commitment to social accountability and responsible business practices in the construction industry.">
|
|
||||||
<meta property="og:title" content="Social Accountability — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Learn about Sea Haven Industries' commitment to social accountability and responsible business practices in the construction industry.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/social-accountability/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/social-accountability/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Intro ── */
|
|
||||||
.intro-section {
|
|
||||||
background: var(--surface);
|
|
||||||
}
|
|
||||||
.intro-content {
|
|
||||||
max-width: 800px;
|
|
||||||
}
|
|
||||||
.intro-content h2 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: clamp(1.5rem, 3vw, 2.25rem);
|
|
||||||
line-height: 1.2;
|
|
||||||
color: var(--text);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.intro-content p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ── Accordion ── */
|
|
||||||
.accordion-section {
|
|
||||||
background: var(--surface);
|
|
||||||
padding-top: 0;
|
|
||||||
}
|
|
||||||
.accordion {
|
|
||||||
max-width: 800px;
|
|
||||||
}
|
|
||||||
.accordion details {
|
|
||||||
border-bottom: 1px solid var(--border);
|
|
||||||
}
|
|
||||||
.accordion details:first-child {
|
|
||||||
border-top: 1px solid var(--border);
|
|
||||||
}
|
|
||||||
.accordion summary {
|
|
||||||
font-size: 1rem;
|
|
||||||
font-weight: 600;
|
|
||||||
color: var(--text);
|
|
||||||
padding: 1.25rem 0;
|
|
||||||
cursor: pointer;
|
|
||||||
list-style: none;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
gap: 1rem;
|
|
||||||
}
|
|
||||||
.accordion summary::-webkit-details-marker { display: none; }
|
|
||||||
.accordion summary::after {
|
|
||||||
content: '+';
|
|
||||||
font-size: 1.25rem;
|
|
||||||
font-weight: 400;
|
|
||||||
color: var(--text-muted);
|
|
||||||
flex-shrink: 0;
|
|
||||||
transition: transform 0.2s;
|
|
||||||
}
|
|
||||||
.accordion details[open] summary::after {
|
|
||||||
content: '\2212';
|
|
||||||
}
|
|
||||||
.accordion details .accordion-body {
|
|
||||||
padding-bottom: 1.25rem;
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.75;
|
|
||||||
font-size: 0.9375rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<span>/</span>
|
|
||||||
<span>Social Accountability</span>
|
|
||||||
</nav>
|
|
||||||
<h1>Social Accountability</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Intro ── -->
|
|
||||||
<section class="intro-section section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="intro-content">
|
|
||||||
<h2>At Sea Haven Industries, Inc.,</h2>
|
|
||||||
<p>We are committed to maintaining social accountability and responsibility in compliance with SA8000 International Standards. Our dedication to ethical business practices is integral to our mission and operations. We believe that social accountability is not just a responsibility but a foundation for sustainable growth and success. We are dedicated to fostering a culture of respect, equity, and ethical behavior throughout our organization. We strive to create a positive impact on our employees, communities, and the environment.</p>
|
|
||||||
<p>Click to expand the sections below for more information on our core principles:</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Accordion ── -->
|
|
||||||
<section class="accordion-section section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="accordion">
|
|
||||||
<details>
|
|
||||||
<summary>Respect for Workers' Rights</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We ensure fair treatment of all employees and uphold their rights to freedom of association, collective bargaining, and a safe working environment. Discrimination, forced labor, and child labor are strictly prohibited.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Health & Safety</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>The health and safety of our employees are paramount. We provide a safe and healthy workplace, adhering to all regulatory standards and continuously improving our safety practices and training programs.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Fair Compensation</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We provide fair wages and benefits that meet or exceed legal and industry standards. We ensure that all employees are compensated justly for their work, including overtime pay.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Working Hours</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We comply with applicable laws and industry standards regarding working hours. We ensure that employees have the right to rest and leisure, including adequate time off.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Ethical Business Practices</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We conduct our business with integrity, transparency, and accountability. We are committed to combating corruption, bribery, and unethical practices in all forms.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Environmental Responsibility</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We recognize our responsibility to protect the environment. We strive to minimize our environmental footprint through sustainable practices, resource conservation, and pollution prevention.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Community Engagement</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We actively engage with and support the communities in which we operate. We contribute to local development, respect cultural diversity, and promote social inclusion.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
<details>
|
|
||||||
<summary>Continuous Improvement</summary>
|
|
||||||
<div class="accordion-body">
|
|
||||||
<p>We are committed to continuous improvement in all aspects of social accountability. We regularly review and update our policies and practices to align with evolving standards and stakeholder expectations.</p>
|
|
||||||
</div>
|
|
||||||
</details>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── CTA Banner ── -->
|
|
||||||
<section class="cta-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="cta-inner">
|
|
||||||
<div class="cta-text">
|
|
||||||
<p class="label">Start Your Project</p>
|
|
||||||
<h2 class="display-lg">Get in Touch, Get Results</h2>
|
|
||||||
<p>Have questions or ready to start your project? Contact us today for prompt, professional service and expert advice. We're here to help with all your construction needs.</p>
|
|
||||||
</div>
|
|
||||||
<div class="cta-actions">
|
|
||||||
<a href="/contact/" class="btn btn-primary">Contact Us</a>
|
|
||||||
<div class="cta-phone">
|
|
||||||
<strong>(631) 776-5102</strong>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
105
social-accountability/index.njk
Normal file
105
social-accountability/index.njk
Normal file
|
|
@ -0,0 +1,105 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Social Accountability — Sea Haven Industries"
|
||||||
|
description: "Learn about Sea Haven Industries' commitment to social accountability and responsible business practices in the construction industry."
|
||||||
|
pageCss: social
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<a href="/about/">About</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<span>Social Accountability</span>
|
||||||
|
</nav>
|
||||||
|
<h1>Social Accountability</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Intro ── -->
|
||||||
|
<section class="intro-section section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="intro-content">
|
||||||
|
<h2>At Sea Haven Industries, Inc.,</h2>
|
||||||
|
<p>We are committed to maintaining social accountability and responsibility in compliance with SA8000 International Standards. Our dedication to ethical business practices is integral to our mission and operations. We believe that social accountability is not just a responsibility but a foundation for sustainable growth and success. We are dedicated to fostering a culture of respect, equity, and ethical behavior throughout our organization. We strive to create a positive impact on our employees, communities, and the environment.</p>
|
||||||
|
<p>Click to expand the sections below for more information on our core principles:</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Accordion ── -->
|
||||||
|
<section class="accordion-section section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="accordion">
|
||||||
|
<details>
|
||||||
|
<summary>Respect for Workers' Rights</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We ensure fair treatment of all employees and uphold their rights to freedom of association, collective bargaining, and a safe working environment. Discrimination, forced labor, and child labor are strictly prohibited.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Health & Safety</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>The health and safety of our employees are paramount. We provide a safe and healthy workplace, adhering to all regulatory standards and continuously improving our safety practices and training programs.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Fair Compensation</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We provide fair wages and benefits that meet or exceed legal and industry standards. We ensure that all employees are compensated justly for their work, including overtime pay.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Working Hours</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We comply with applicable laws and industry standards regarding working hours. We ensure that employees have the right to rest and leisure, including adequate time off.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Ethical Business Practices</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We conduct our business with integrity, transparency, and accountability. We are committed to combating corruption, bribery, and unethical practices in all forms.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Environmental Responsibility</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We recognize our responsibility to protect the environment. We strive to minimize our environmental footprint through sustainable practices, resource conservation, and pollution prevention.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Community Engagement</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We actively engage with and support the communities in which we operate. We contribute to local development, respect cultural diversity, and promote social inclusion.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>Continuous Improvement</summary>
|
||||||
|
<div class="accordion-body">
|
||||||
|
<p>We are committed to continuous improvement in all aspects of social accountability. We regularly review and update our policies and practices to align with evolving standards and stakeholder expectations.</p>
|
||||||
|
</div>
|
||||||
|
</details>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── CTA Banner ── -->
|
||||||
|
<section class="cta-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="cta-inner">
|
||||||
|
<div class="cta-text">
|
||||||
|
<p class="label">Start Your Project</p>
|
||||||
|
<h2 class="display-lg">Get in Touch, Get Results</h2>
|
||||||
|
<p>Have questions or ready to start your project? Contact us today for prompt, professional service and expert advice. We're here to help with all your construction needs.</p>
|
||||||
|
</div>
|
||||||
|
<div class="cta-actions">
|
||||||
|
<a href="/contact/" class="btn btn-primary">Contact Us</a>
|
||||||
|
<div class="cta-phone">
|
||||||
|
<strong>(631) 776-5102</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
@ -1,233 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>Terms of Service — Sea Haven Industries</title>
|
|
||||||
<meta name="description" content="Terms of Service for Sea Haven Industries. Review the terms and conditions governing your use of the Sea Haven Industries website.">
|
|
||||||
<meta property="og:title" content="Terms of Service — Sea Haven Industries">
|
|
||||||
<meta property="og:description" content="Terms of Service for Sea Haven Industries. Review the terms and conditions governing your use of the Sea Haven Industries website.">
|
|
||||||
<meta property="og:type" content="website">
|
|
||||||
<meta property="og:url" content="https://seahaven.com/terms-of-service/">
|
|
||||||
<meta property="og:site_name" content="Sea Haven Industries">
|
|
||||||
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
|
|
||||||
<meta name="twitter:card" content="summary_large_image">
|
|
||||||
<meta name="robots" content="index, follow, max-image-preview:large">
|
|
||||||
<link rel="canonical" href="https://seahaven.com/terms-of-service/">
|
|
||||||
|
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
|
|
||||||
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
|
|
||||||
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="/assets/css/main.css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
/* ── Prose Content ── */
|
|
||||||
.prose-section {
|
|
||||||
background: var(--surface);
|
|
||||||
padding: clamp(4rem, 8vw, 7rem) 0;
|
|
||||||
}
|
|
||||||
.prose {
|
|
||||||
max-width: 800px;
|
|
||||||
}
|
|
||||||
.prose h3 {
|
|
||||||
font-family: var(--font-display);
|
|
||||||
font-size: 1.375rem;
|
|
||||||
line-height: 1.25;
|
|
||||||
color: var(--text);
|
|
||||||
margin-top: 2.5rem;
|
|
||||||
margin-bottom: 0.75rem;
|
|
||||||
}
|
|
||||||
.prose h3:first-child {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.prose p {
|
|
||||||
color: var(--text-muted);
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul {
|
|
||||||
padding-left: 1.5rem;
|
|
||||||
list-style-type: disc;
|
|
||||||
color: var(--text-muted);
|
|
||||||
margin-bottom: 1.25rem;
|
|
||||||
}
|
|
||||||
.prose ul li {
|
|
||||||
line-height: 1.8;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.prose a {
|
|
||||||
color: var(--rose);
|
|
||||||
text-decoration: underline;
|
|
||||||
text-underline-offset: 2px;
|
|
||||||
}
|
|
||||||
.prose a:hover {
|
|
||||||
color: var(--rose-dark);
|
|
||||||
}
|
|
||||||
.prose em {
|
|
||||||
color: var(--text-muted);
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<!-- ── Navigation ── -->
|
|
||||||
<header class="site-header scrolled" id="site-header">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="nav-inner">
|
|
||||||
<a href="/" class="nav-logo">
|
|
||||||
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
|
|
||||||
</a>
|
|
||||||
<ul class="nav-links">
|
|
||||||
<li><a href="/services/">Services</a></li>
|
|
||||||
<li><a href="/about/">About</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Accountability</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="/contact/" class="nav-cta">Get a Quote</a>
|
|
||||||
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
|
|
||||||
<span></span><span></span><span></span>
|
|
||||||
</button>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<div class="mobile-menu" id="mobile-menu">
|
|
||||||
<button class="mobile-menu-close" id="menu-close">✕</button>
|
|
||||||
<a href="/services/">Services</a>
|
|
||||||
<a href="/about/">About</a>
|
|
||||||
<a href="/careers/">Careers</a>
|
|
||||||
<a href="/social-accountability/">Accountability</a>
|
|
||||||
<a href="/contact/">Contact</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- ── Page Hero ── -->
|
|
||||||
<section class="page-hero">
|
|
||||||
<div class="container">
|
|
||||||
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
||||||
<a href="/">Home</a>
|
|
||||||
<span>/</span>
|
|
||||||
<span>Terms of Service</span>
|
|
||||||
</nav>
|
|
||||||
<h1>Terms of Service</h1>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Content ── -->
|
|
||||||
<section class="prose-section">
|
|
||||||
<div class="container">
|
|
||||||
<div class="prose">
|
|
||||||
<p><em>Effective Date: April 4, 2026</em></p>
|
|
||||||
|
|
||||||
<p>Welcome to the Sea Haven Industries, Inc. website ("Site"). By accessing or using this Site, you agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, please do not use this Site.</p>
|
|
||||||
|
|
||||||
<h3>1. Acceptance of Terms</h3>
|
|
||||||
<p>By accessing, browsing, or using this Site, you acknowledge that you have read, understood, and agree to be bound by these Terms, as well as our <a href="/privacy-policy/">Privacy Policy</a>. These Terms apply to all visitors, users, and others who access or use the Site.</p>
|
|
||||||
|
|
||||||
<h3>2. Use of Website</h3>
|
|
||||||
<p>You agree to use this Site only for lawful purposes and in a manner that does not infringe upon the rights of, restrict, or inhibit anyone else's use of the Site. You may not use this Site to:</p>
|
|
||||||
<ul>
|
|
||||||
<li>Transmit any unlawful, threatening, abusive, or otherwise objectionable material</li>
|
|
||||||
<li>Gain unauthorized access to other computer systems</li>
|
|
||||||
<li>Use automated means to access the Site without permission</li>
|
|
||||||
<li>Interfere with or disrupt the Site or its servers</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>3. Intellectual Property</h3>
|
|
||||||
<p>All content on this Site, including text, graphics, logos, images, and software, is the property of Sea Haven Industries, Inc. or its licensors and is protected by applicable copyright, trademark, and other intellectual property laws. You may not reproduce, distribute, modify, or create derivative works from any content on this Site without our prior written consent.</p>
|
|
||||||
|
|
||||||
<h3>4. Disclaimer of Warranties</h3>
|
|
||||||
<p>This Site and its content are provided on an "as is" and "as available" basis. Sea Haven Industries makes no representations or warranties of any kind, express or implied, regarding the operation of the Site or the information, content, or materials included on the Site.</p>
|
|
||||||
|
|
||||||
<h3>5. Limitation of Liability</h3>
|
|
||||||
<p>To the fullest extent permitted by law, Sea Haven Industries shall not be liable for any damages of any kind arising from the use of this Site, including but not limited to direct, indirect, incidental, punitive, and consequential damages.</p>
|
|
||||||
|
|
||||||
<h3>6. Indemnification</h3>
|
|
||||||
<p>You agree to indemnify, defend, and hold harmless Sea Haven Industries, Inc., its officers, directors, employees, and agents from and against any claims, liabilities, damages, losses, or expenses arising out of or in any way connected with your access to or use of the Site.</p>
|
|
||||||
|
|
||||||
<h3>7. Governing Law</h3>
|
|
||||||
<p>These Terms shall be governed by and construed in accordance with the laws of the State of New York, without regard to its conflict of law principles.</p>
|
|
||||||
|
|
||||||
<h3>8. Modifications to Terms</h3>
|
|
||||||
<p>We reserve the right to modify these Terms at any time. Any changes will be effective immediately upon posting on the Site. Your continued use of the Site after changes are posted constitutes your acceptance of the revised Terms.</p>
|
|
||||||
|
|
||||||
<h3>9. Contact Us</h3>
|
|
||||||
<p>If you have any questions about these Terms of Service, please contact us:</p>
|
|
||||||
<p>Sea Haven Industries, Inc.<br>
|
|
||||||
710 Koehler Ave, Ronkonkoma, NY 11779<br>
|
|
||||||
Email: <a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a><br>
|
|
||||||
Phone: (631) 776-5102</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<!-- ── Footer ── -->
|
|
||||||
<footer class="site-footer">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer-grid">
|
|
||||||
<div class="footer-brand">
|
|
||||||
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
|
|
||||||
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="#" aria-label="LinkedIn">in</a>
|
|
||||||
<a href="#" aria-label="Facebook">f</a>
|
|
||||||
<a href="#" aria-label="Instagram">ig</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Services</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/services/">Electrical Work</a></li>
|
|
||||||
<li><a href="/services/">Plumbing</a></li>
|
|
||||||
<li><a href="/services/">HVACR Services</a></li>
|
|
||||||
<li><a href="/services/">Handyman Services</a></li>
|
|
||||||
<li><a href="/services/">Garage Door Repair</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Company</h4>
|
|
||||||
<ul>
|
|
||||||
<li><a href="/about/">About Us</a></li>
|
|
||||||
<li><a href="/careers/">Careers</a></li>
|
|
||||||
<li><a href="/social-accountability/">Social Accountability</a></li>
|
|
||||||
<li><a href="/contact/">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="footer-col">
|
|
||||||
<h4>Contact</h4>
|
|
||||||
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
|
|
||||||
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
|
|
||||||
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
|
|
||||||
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-bottom">
|
|
||||||
<p>©<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
|
|
||||||
<ul class="footer-bottom-links">
|
|
||||||
<li><a href="/privacy-policy/">Privacy Policy</a></li>
|
|
||||||
<li><a href="/terms-of-service/">Terms of Service</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const header = document.getElementById('site-header');
|
|
||||||
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
|
|
||||||
window.addEventListener('scroll', onScroll, { passive: true });
|
|
||||||
onScroll();
|
|
||||||
const hamburger = document.getElementById('hamburger');
|
|
||||||
const mobileMenu = document.getElementById('mobile-menu');
|
|
||||||
const menuClose = document.getElementById('menu-close');
|
|
||||||
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
|
|
||||||
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
mobileMenu.querySelectorAll('a').forEach(a => {
|
|
||||||
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
65
terms-of-service/index.njk
Normal file
65
terms-of-service/index.njk
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
title: "Terms of Service — Sea Haven Industries"
|
||||||
|
description: "Terms of Service for Sea Haven Industries. Review the terms and conditions governing your use of the Sea Haven Industries website."
|
||||||
|
pageCss: legal
|
||||||
|
---
|
||||||
|
<!-- ── Page Hero ── -->
|
||||||
|
<section class="page-hero">
|
||||||
|
<div class="container">
|
||||||
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
||||||
|
<a href="/">Home</a>
|
||||||
|
<span aria-hidden="true">/</span>
|
||||||
|
<span>Terms of Service</span>
|
||||||
|
</nav>
|
||||||
|
<h1>Terms of Service</h1>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- ── Content ── -->
|
||||||
|
<section class="prose-section">
|
||||||
|
<div class="container">
|
||||||
|
<div class="prose">
|
||||||
|
<p><em>Effective Date: April 4, 2026</em></p>
|
||||||
|
|
||||||
|
<p>Welcome to the Sea Haven Industries, Inc. website ("Site"). By accessing or using this Site, you agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, please do not use this Site.</p>
|
||||||
|
|
||||||
|
<h3>1. Acceptance of Terms</h3>
|
||||||
|
<p>By accessing, browsing, or using this Site, you acknowledge that you have read, understood, and agree to be bound by these Terms, as well as our <a href="/privacy-policy/">Privacy Policy</a>. These Terms apply to all visitors, users, and others who access or use the Site.</p>
|
||||||
|
|
||||||
|
<h3>2. Use of Website</h3>
|
||||||
|
<p>You agree to use this Site only for lawful purposes and in a manner that does not infringe upon the rights of, restrict, or inhibit anyone else's use of the Site. You may not use this Site to:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Transmit any unlawful, threatening, abusive, or otherwise objectionable material</li>
|
||||||
|
<li>Gain unauthorized access to other computer systems</li>
|
||||||
|
<li>Use automated means to access the Site without permission</li>
|
||||||
|
<li>Interfere with or disrupt the Site or its servers</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>3. Intellectual Property</h3>
|
||||||
|
<p>All content on this Site, including text, graphics, logos, images, and software, is the property of Sea Haven Industries, Inc. or its licensors and is protected by applicable copyright, trademark, and other intellectual property laws. You may not reproduce, distribute, modify, or create derivative works from any content on this Site without our prior written consent.</p>
|
||||||
|
|
||||||
|
<h3>4. Disclaimer of Warranties</h3>
|
||||||
|
<p>This Site and its content are provided on an "as is" and "as available" basis. Sea Haven Industries makes no representations or warranties of any kind, express or implied, regarding the operation of the Site or the information, content, or materials included on the Site.</p>
|
||||||
|
|
||||||
|
<h3>5. Limitation of Liability</h3>
|
||||||
|
<p>To the fullest extent permitted by law, Sea Haven Industries shall not be liable for any damages of any kind arising from the use of this Site, including but not limited to direct, indirect, incidental, punitive, and consequential damages.</p>
|
||||||
|
|
||||||
|
<h3>6. Indemnification</h3>
|
||||||
|
<p>You agree to indemnify, defend, and hold harmless Sea Haven Industries, Inc., its officers, directors, employees, and agents from and against any claims, liabilities, damages, losses, or expenses arising out of or in any way connected with your access to or use of the Site.</p>
|
||||||
|
|
||||||
|
<h3>7. Governing Law</h3>
|
||||||
|
<p>These Terms shall be governed by and construed in accordance with the laws of the State of New York, without regard to its conflict of law principles.</p>
|
||||||
|
|
||||||
|
<h3>8. Modifications to Terms</h3>
|
||||||
|
<p>We reserve the right to modify these Terms at any time. Any changes will be effective immediately upon posting on the Site. Your continued use of the Site after changes are posted constitutes your acceptance of the revised Terms.</p>
|
||||||
|
|
||||||
|
<h3>9. Contact Us</h3>
|
||||||
|
<p>If you have any questions about these Terms of Service, please contact us:</p>
|
||||||
|
<p>Sea Haven Industries, Inc.<br>
|
||||||
|
710 Koehler Ave, Ronkonkoma, NY 11779<br>
|
||||||
|
Email: <a href="mailto:work-orders@seahaven.com">work-orders@seahaven.com</a><br>
|
||||||
|
Phone: (631) 776-5102</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
Loading…
Add table
Reference in a new issue