Merge version_2 into main #5

Merged
bender merged 2 commits from version_2 into main 2026-03-08 01:15:05 +00:00
2 changed files with 82 additions and 215 deletions

View File

@@ -6,10 +6,9 @@ import HeroOverlay from "@/components/sections/hero/HeroOverlay";
import TestimonialAboutCard from "@/components/sections/about/TestimonialAboutCard";
import FeatureCardNine from "@/components/sections/feature/FeatureCardNine";
import MetricCardFourteen from "@/components/sections/metrics/MetricCardFourteen";
import TestimonialCardTwo from "@/components/sections/testimonial/TestimonialCardTwo";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
import { Handshake, Star } from "lucide-react";
import { Handshake, Clock } from "lucide-react";
export default function HomePage() {
const navItems = [
@@ -22,8 +21,7 @@ export default function HomePage() {
const footerColumns = [
{
title: "Tjenester",
items: [
title: "Tjenester", items: [
{ label: "Snømåking", href: "#services" },
{ label: "Gruskosting", href: "#services" },
{ label: "Hogging av trær", href: "#services" },
@@ -31,8 +29,7 @@ export default function HomePage() {
],
},
{
title: "Bedriften",
items: [
title: "Bedriften", items: [
{ label: "Om oss", href: "#about" },
{ label: "Kontakt", href: "#contact" },
{ label: "Personvern", href: "#" },
@@ -40,8 +37,7 @@ export default function HomePage() {
],
},
{
title: "Kontakt",
items: [
title: "Kontakt", items: [
{ label: "Telefon: +47 XXX XX XXX", href: "#" },
{ label: "E-post: info@tromsohjelpservice.no", href: "#" },
{ label: "Tromsø, Nord-Norge", href: "#" },
@@ -67,9 +63,7 @@ export default function HomePage() {
<NavbarStyleCentered
navItems={navItems}
button={{
text: "Få tilbud",
href: "#contact",
}}
text: "Få tilbud", href: "#contact"}}
brandName="Tromsø Hjelp & Service"
/>
</div>
@@ -113,55 +107,31 @@ export default function HomePage() {
features={[
{
id: 1,
title: "Snømåking & Vintervedlikehold",
description: "Profesjonell snørydding av oppkjørsler, parkeringsplasser og inngangsveier. Vi sikrer trafikk og sikkerhet hele vinteren gjennom.",
phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/father-kid-having-fun-outdoors-full-shot_23-2149293133.jpg?_wi=1",
imageAlt: "Snøplog snørydding oppkjørsel",
},
title: "Snømåking & Vintervedlikehold", description: "Profesjonell snørydding av oppkjørsler, parkeringsplasser og inngangsveier. Vi sikrer trafikk og sikkerhet hele vinteren gjennom.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/father-kid-having-fun-outdoors-full-shot_23-2149293133.jpg?_wi=1", imageAlt: "Snøplog snørydding oppkjørsel"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/wooden-fence-covered-snow-mountains_181624-37797.jpg?_wi=1",
imageAlt: "Vintervedlikehold snø is",
},
imageSrc: "http://img.b2bpic.net/free-photo/wooden-fence-covered-snow-mountains_181624-37797.jpg?_wi=1", imageAlt: "Vintervedlikehold snø is"},
},
{
id: 2,
title: "Gruskosting & Salg av Grus",
description: "Vi tilbyr profesjonell gruskosting og leverer høykvalitets grus for oppkjørsler og uteområder.",
phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/excavator-digging-day-light-outdoors_23-2149194769.jpg?_wi=1",
imageAlt: "Grus levering oppkjørsel material",
},
title: "Gruskosting & Salg av Grus", description: "Vi tilbyr profesjonell gruskosting og leverer høykvalitets grus for oppkjørsler og uteområder.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/excavator-digging-day-light-outdoors_23-2149194769.jpg?_wi=1", imageAlt: "Grus levering oppkjørsel material"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/gull-with-black-beak-surrounded-by-grass-pond-sunlight-daytime_181624-19036.jpg?_wi=1",
imageAlt: "Grus spreding oppkjørsel",
},
imageSrc: "http://img.b2bpic.net/free-photo/gull-with-black-beak-surrounded-by-grass-pond-sunlight-daytime_181624-19036.jpg?_wi=1", imageAlt: "Grus spreding oppkjørsel"},
},
{
id: 3,
title: "Hogging & Fjerning av Trær",
description: "Sikker og profesjonell hogging og fjerning av trær. Vi håndterer både små og store jobber med moderne utstyr.",
phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/mother-son-walking-through-muddy-location_23-2148943167.jpg?_wi=1",
imageAlt: "Hogging av trær sag",
},
title: "Hogging & Fjerning av Trær", description: "Sikker og profesjonell hogging og fjerning av trær. Vi håndterer både små og store jobber med moderne utstyr.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/mother-son-walking-through-muddy-location_23-2148943167.jpg?_wi=1", imageAlt: "Hogging av trær sag"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-material-pieces-wooden-boxes_181624-18062.jpg?_wi=1",
imageAlt: "Tre fjerning helt",
},
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-material-pieces-wooden-boxes_181624-18062.jpg?_wi=1", imageAlt: "Tre fjerning helt"},
},
{
id: 4,
title: "Bilvask & Vedlikehold",
description: "Profesjonell bilvask og vedlikehold av kjøretøy. Vi bruker miljøvennlige produkter og moderne utstyr.",
phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/young-man-washing-his-car-carwash_1303-27475.jpg?_wi=1",
imageAlt: "Profesjonell bilvask bil vanning",
},
title: "Bilvask & Vedlikehold", description: "Profesjonell bilvask og vedlikehold av kjøretøy. Vi bruker miljøvennlige produkter og moderne utstyr.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/young-man-washing-his-car-carwash_1303-27475.jpg?_wi=1", imageAlt: "Profesjonell bilvask bil vanning"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/mechanic-servicing-car_1170-1606.jpg?_wi=1",
imageAlt: "Bilvedlikehold arbeid mekaniker",
},
imageSrc: "http://img.b2bpic.net/free-photo/mechanic-servicing-car_1170-1606.jpg?_wi=1", imageAlt: "Bilvedlikehold arbeid mekaniker"},
},
]}
showStepNumbers={true}
@@ -177,131 +147,61 @@ export default function HomePage() {
tag="Våre styrker"
metrics={[
{
id: "1",
value: "24/7",
description: "Rask respons på anmodninger. Vi er tilgjengelige når du trenger oss mest.",
},
id: "1", value: "24/7", description: "Rask respons på anmodninger. Vi er tilgjengelige når du trenger oss mest."},
{
id: "2",
value: "100%",
description: "Pålitelig service. Konkurransedyktige priser og fleksible løsninger for alle behov.",
},
id: "2", value: "100%", description: "Pålitelig service. Konkurransedyktige priser og fleksible løsninger for alle behov."},
{
id: "3",
value: "2+ ",
description: "År med erfaring i lokal service. Kjent og respektert i Tromsø og omegn.",
},
id: "3", value: "10+", description: "År med erfaring i lokal service. Kjent og respektert i Tromsø og omegn."},
{
id: "4",
value: "100+ ",
description: "Fornøyde kunder. Vi har gjennomført tusenvis av jobber med høy kvalitet.",
},
id: "4", value: "1000+", description: "Fornøyde kunder. Vi har gjennomført tusenvis av jobber med høy kvalitet."},
]}
metricsAnimation="slide-up"
useInvertedBackground={false}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardTwo
title="Hva kundene våre sier"
description="Lese om erfaringene fra privatpersoner og bedrifter som har brukt Tromsø Hjelp & Service"
textboxLayout="default"
animationType="slide-up"
useInvertedBackground={false}
testimonials={[
{
id: "1",
name: "Per Hansen",
role: "Huseier",
testimonial: "Utrolig rask respons og profesjonell jobbing. De håndterte snøryddingen perfekt hele vinteren.",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/male-business-executive-using-mobile-phone_1170-838.jpg",
imageAlt: "Mann portrett profesjonell arbeid",
},
{
id: "2",
name: "Ingrid Nordstad",
role: "Bedriftseier",
testimonial: "Høyt profesjonelle og dyktige folk. Leverer alltid som avtalt, og prisen er konkurransedyktig.",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/portrait-mature-woman-smiling_23-2148407645.jpg",
imageAlt: "Kvinne portrett profesjonell bedrift",
},
{
id: "3",
name: "Bjørn Larsen",
role: "Huseier",
testimonial: "Trengte hjelp med flytting og de var superfleksible. Ryddig og effektiv service fra start til slutt.",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/modern-man-with-coffee_23-2147961596.jpg",
imageAlt: "Mann portrett arbeid service",
},
{
id: "4",
name: "Anne Marie Olsen",
role: "Eiendomsforvalter",
testimonial: "Vi bruker dem for snørydding og gruskosting. Alltid punktlige og leverer god kvalitet. Anbefales varmt!",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/businesswoman-using-sign-language-outdoors-work_23-2148740315.jpg",
imageAlt: "Kvinne arbeid portrett professional",
},
{
id: "5",
name: "Knut Eriksen",
role: "Huseier",
testimonial: "Profesjonell hogging av trær. Sikre og dyktige folk som rydder opp etter seg selv.",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-caucasian-man-looking-camera-doing-yes-gesture-isolated-olive-green-background-with-copy-space_141793-78065.jpg",
imageAlt: "Mann portrett håndverk arbeid",
},
{
id: "6",
name: "Hanne Sørensen",
role: "Restauranteier",
testimonial: "Bilen vår fikk fin vask. Grundig og miljøvennlig. Vi bruker dem igjen!",
icon: Star,
imageSrc: "http://img.b2bpic.net/free-photo/portrait-smiling-asian-girl-white-collar-shirt-working-cafe-managing-restaurant-looking-con_1258-127576.jpg",
imageAlt: "Kvinne restauranteier portrett",
},
]}
/>
<div id="opening-hours" data-section="opening-hours">
<div className="py-20 px-6 md:px-0">
<div className="flex flex-col items-center justify-center max-w-2xl mx-auto">
<div className="flex items-center justify-center w-12 h-12 mb-6 rounded-full bg-[var(--primary-cta)] text-white">
<Clock className="w-6 h-6" />
</div>
<h2 className="text-4xl md:text-5xl font-extrabold text-center mb-4 text-[var(--foreground)]">Åpningstider</h2>
<div className="w-full space-y-6 mt-8">
<div className="flex justify-between items-center p-4 rounded-lg bg-[var(--card)] border border-[var(--accent)]">
<span className="text-lg font-semibold text-[var(--foreground)]">Mandag - Fredag</span>
<span className="text-lg font-semibold text-[var(--primary-cta)]">14:00 - 20:00</span>
</div>
<div className="flex justify-between items-center p-4 rounded-lg bg-[var(--card)] border border-[var(--accent)]">
<span className="text-lg font-semibold text-[var(--foreground)]">Lørdag - Søndag</span>
<span className="text-lg font-semibold text-[var(--primary-cta)]">16:00 - 21:00</span>
</div>
</div>
<p className="text-center mt-8 text-[var(--foreground)]/75">Ring oss for akutte behov utenfor disse tidene</p>
</div>
</div>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
title="Kontakt oss for tilbud"
description="Fyll ut skjemaet under eller ring oss direkte. Vi svarer raskt og gir deg en upliktig kostnadsestimate for ditt prosjekt."
description="Fyll ut skjemaet under eller ring oss direkte. Vi svarer raskt og gir deg en uforpliktende kostnadsestimate for ditt prosjekt."
inputs={[
{
name: "name",
type: "text",
placeholder: "Navn",
required: true,
name: "name", type: "text", placeholder: "Navn", required: true,
},
{
name: "phone",
type: "tel",
placeholder: "Telefonnummer",
required: true,
name: "phone", type: "tel", placeholder: "Telefonnummer", required: true,
},
{
name: "email",
type: "email",
placeholder: "E-postadresse",
required: true,
name: "email", type: "email", placeholder: "E-postadresse", required: true,
},
{
name: "service",
type: "text",
placeholder: "Hva trenger du hjelp med?",
required: true,
name: "service", type: "text", placeholder: "Hva trenger du hjelp med?", required: true,
},
]}
textarea={{
name: "message",
placeholder: "Fortell oss mer om prosjektet ditt (valgfritt)",
rows: 5,
name: "message", placeholder: "Fortell oss mer om prosjektet ditt (valgfritt)", rows: 5,
required: false,
}}
useInvertedBackground={false}
@@ -321,4 +221,4 @@ export default function HomePage() {
</div>
</ThemeProvider>
);
}
}

View File

@@ -5,10 +5,9 @@ import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarS
import HeroOverlay from "@/components/sections/hero/HeroOverlay";
import FeatureCardNine from "@/components/sections/feature/FeatureCardNine";
import MetricCardFourteen from "@/components/sections/metrics/MetricCardFourteen";
import TestimonialCardTwo from "@/components/sections/testimonial/TestimonialCardTwo";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
import { Star } from "lucide-react";
import { Clock } from "lucide-react";
export default function ServicesPage() {
const navItems = [
@@ -94,38 +93,30 @@ export default function ServicesPage() {
{
id: 1,
title: "Snømåking & Vintervedlikehold", description: "Profesjonell snørydding av oppkjørsler, parkeringsplasser og inngangsveier. Vi sikrer trafikk og sikkerhet hele vinteren gjennom.", phoneOne: {
imageSrc:
"http://img.b2bpic.net/free-photo/father-kid-having-fun-outdoors-full-shot_23-2149293133.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/father-kid-having-fun-outdoors-full-shot_23-2149293133.jpg"},
phoneTwo: {
imageSrc:
"http://img.b2bpic.net/free-photo/wooden-fence-covered-snow-mountains_181624-37797.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/wooden-fence-covered-snow-mountains_181624-37797.jpg"},
},
{
id: 2,
title: "Gruskosting & Salg av Grus", description: "Vi tilbyr profesjonell gruskosting og leverer høykvalitets grus for oppkjørsler og uteområder.", phoneOne: {
imageSrc:
"http://img.b2bpic.net/free-photo/excavator-digging-day-light-outdoors_23-2149194769.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/excavator-digging-day-light-outdoors_23-2149194769.jpg"},
phoneTwo: {
imageSrc:
"http://img.b2bpic.net/free-photo/gull-with-black-beak-surrounded-by-grass-pond-sunlight-daytime_181624-19036.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/gull-with-black-beak-surrounded-by-grass-pond-sunlight-daytime_181624-19036.jpg"},
},
{
id: 3,
title: "Hogging & Fjerning av Trær", description: "Sikker og profesjonell hogging og fjerning av trær. Vi håndterer både små og store jobber med moderne utstyr.", phoneOne: {
imageSrc:
"http://img.b2bpic.net/free-photo/mother-son-walking-through-muddy-location_23-2148943167.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/mother-son-walking-through-muddy-location_23-2148943167.jpg"},
phoneTwo: {
imageSrc:
"http://img.b2bpic.net/free-photo/vertical-shot-material-pieces-wooden-boxes_181624-18062.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-material-pieces-wooden-boxes_181624-18062.jpg"},
},
{
id: 4,
title: "Bilvask & Vedlikehold", description: "Profesjonell bilvask og vedlikehold av kjøretøy. Vi bruker miljøvennlige produkter og moderne utstyr.", phoneOne: {
imageSrc:
"http://img.b2bpic.net/free-photo/young-man-washing-his-car-carwash_1303-27475.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/young-man-washing-his-car-carwash_1303-27475.jpg"},
phoneTwo: {
imageSrc:
"http://img.b2bpic.net/free-photo/mechanic-servicing-car_1170-1606.jpg"},
imageSrc: "http://img.b2bpic.net/free-photo/mechanic-servicing-car_1170-1606.jpg"},
},
]}
showStepNumbers={true}
@@ -141,63 +132,39 @@ export default function ServicesPage() {
tag="Våre styrker"
metrics={[
{
id: "1", value: "24/7", description:
"Rask respons på anmodninger. Vi er tilgjengelige når du trenger oss mest."},
id: "1", value: "24/7", description: "Rask respons på anmodninger. Vi er tilgjengelige når du trenger oss mest."},
{
id: "2", value: "100%", description:
"Pålitelig service. Konkurransedyktige priser og fleksible løsninger for alle behov."},
id: "2", value: "100%", description: "Pålitelig service. Konkurransedyktige priser og fleksible løsninger for alle behov."},
{
id: "3", value: "10+", description:
"År med erfaring i lokal service. Kjent og respektert i Tromsø og omegn."},
id: "3", value: "10+", description: "År med erfaring i lokal service. Kjent og respektert i Tromsø og omegn."},
{
id: "4", value: "1000+", description:
"Fornøyde kunder. Vi har gjennomført tusenvis av jobber med høy kvalitet."},
id: "4", value: "1000+", description: "Fornøyde kunder. Vi har gjennomført tusenvis av jobber med høy kvalitet."},
]}
metricsAnimation="slide-up"
useInvertedBackground={false}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardTwo
title="Hva kundene våre sier"
description="Lese om erfaringene fra privatpersoner og bedrifter som har brukt Tromsø Hjelp & Service"
textboxLayout="default"
animationType="slide-up"
useInvertedBackground={false}
testimonials={[
{
id: "1", name: "Per Hansen", role: "Huseier", testimonial:
"Utrolig rask respons og profesjonell jobbing. De håndterte snøryddingen perfekt hele vinteren.", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/male-business-executive-using-mobile-phone_1170-838.jpg", imageAlt: "Per Hansen"},
{
id: "2", name: "Ingrid Nordstad", role: "Bedriftseier", testimonial:
"Høyt profesjonelle og dyktige folk. Leverer alltid som avtalt, og prisen er konkurransedyktig.", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/portrait-mature-woman-smiling_23-2148407645.jpg", imageAlt: "Ingrid Nordstad"},
{
id: "3", name: "Bjørn Larsen", role: "Huseier", testimonial:
"Trengte hjelp med flytting og de var superfleksible. Ryddig og effektiv service fra start til slutt.", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/modern-man-with-coffee_23-2147961596.jpg", imageAlt: "Bjørn Larsen"},
{
id: "4", name: "Anne Marie Olsen", role: "Eiendomsforvalter", testimonial:
"Vi bruker dem for snørydding og gruskosting. Alltid punktlige og leverer god kvalitet. Anbefales varmt!", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/businesswoman-using-sign-language-outdoors-work_23-2148740315.jpg", imageAlt: "Anne Marie Olsen"},
{
id: "5", name: "Knut Eriksen", role: "Huseier", testimonial:
"Profesjonell hogging av trær. Sikre og dyktige folk som rydder opp etter seg selv.", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/smiling-young-caucasian-man-looking-camera-doing-yes-gesture-isolated-olive-green-background-with-copy-space_141793-78065.jpg", imageAlt: "Knut Eriksen"},
{
id: "6", name: "Hanne Sørensen", role: "Restauranteier", testimonial:
"Bilen vår fikk fin vask. Grundig og miljøvennlig. Vi bruker dem igjen!", icon: Star,
imageSrc:
"http://img.b2bpic.net/free-photo/portrait-smiling-asian-girl-white-collar-shirt-working-cafe-managing-restaurant-looking-con_1258-127576.jpg", imageAlt: "Hanne Sørensen"},
]}
/>
<div id="opening-hours" data-section="opening-hours">
<div className="py-20 px-6 md:px-0">
<div className="flex flex-col items-center justify-center max-w-2xl mx-auto">
<div className="flex items-center justify-center w-12 h-12 mb-6 rounded-full bg-[var(--primary-cta)] text-white">
<Clock className="w-6 h-6" />
</div>
<h2 className="text-4xl md:text-5xl font-extrabold text-center mb-4 text-[var(--foreground)]">Åpningstider</h2>
<div className="w-full space-y-6 mt-8">
<div className="flex justify-between items-center p-4 rounded-lg bg-[var(--card)] border border-[var(--accent)]">
<span className="text-lg font-semibold text-[var(--foreground)]">Mandag - Fredag</span>
<span className="text-lg font-semibold text-[var(--primary-cta)]">14:00 - 20:00</span>
</div>
<div className="flex justify-between items-center p-4 rounded-lg bg-[var(--card)] border border-[var(--accent)]">
<span className="text-lg font-semibold text-[var(--foreground)]">Lørdag - Søndag</span>
<span className="text-lg font-semibold text-[var(--primary-cta)]">16:00 - 21:00</span>
</div>
</div>
<p className="text-center mt-8 text-[var(--foreground)]/75">Ring oss for akutte behov utenfor disse tidene</p>
</div>
</div>
</div>
<div id="contact" data-section="contact">
@@ -239,4 +206,4 @@ export default function ServicesPage() {
</div>
</ThemeProvider>
);
}
}