15 Commits

Author SHA1 Message Date
16789a63b9 Merge version_1 into main
Merge version_1 into main
2026-03-04 12:27:24 +00:00
cb3dec0e6b Update theme colors 2026-03-04 12:27:18 +00:00
cfa949f446 Merge version_1 into main
Merge version_1 into main
2026-03-04 12:27:07 +00:00
59040dd6ce Update theme colors 2026-03-04 12:27:00 +00:00
eff5fff3a4 Switch to version 1: modified src/app/styles/variables.css 2026-03-04 12:26:46 +00:00
2b050434c4 Switch to version 1: modified src/app/practical-info/page.tsx 2026-03-04 12:26:46 +00:00
1138025394 Switch to version 1: modified src/app/page.tsx 2026-03-04 12:26:45 +00:00
05228c8def Switch to version 1: modified src/app/layout.tsx 2026-03-04 12:26:45 +00:00
32a2ef25a2 Switch to version 1: modified src/app/contact/page.tsx 2026-03-04 12:26:44 +00:00
71a229b26c Merge version_2 into main
Merge version_2 into main
2026-03-04 12:25:29 +00:00
11b074c822 Merge version_2 into main
Merge version_2 into main
2026-03-04 12:22:25 +00:00
261408461b Merge version_2 into main
Merge version_2 into main
2026-03-04 12:22:09 +00:00
4b7bb0da4e Merge version_2 into main
Merge version_2 into main
2026-03-04 12:21:47 +00:00
b9a5ef4bc8 Merge version_2 into main
Merge version_2 into main
2026-03-03 21:06:34 +00:00
bb198cc31d Merge version_2 into main
Merge version_2 into main
2026-03-03 20:58:26 +00:00
5 changed files with 122 additions and 43 deletions

View File

@@ -57,7 +57,9 @@ export default function ContactPage() {
brandName="Alpine Haven"
navItems={navItems}
button={{
text: "Book Now", href: "#"}}
text: "Book Now",
href: "#",
}}
className="fixed top-0 left-0 right-0 z-50"
buttonClassName="text-xs uppercase tracking-wide"
/>
@@ -68,13 +70,25 @@ export default function ContactPage() {
features={[
{
id: 1,
title: "Phone", description: "Call us directly at +41 (0)33 856 80 00 for immediate assistance. Our multilingual concierge team is available 24/7 to answer questions and help with bookings.", imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=3", imageAlt: "Contact by phone"},
title: "Phone",
description: "Call us directly at +41 (0)33 856 80 00 for immediate assistance. Our multilingual concierge team is available 24/7 to answer questions and help with bookings.",
imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=3",
imageAlt: "Contact by phone",
},
{
id: 2,
title: "Email", description: "Reach us at info@alpinehaven.ch for detailed inquiries, group bookings, or special requests. We respond to all emails within 24 hours during business hours.", imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=3", imageAlt: "Email contact"},
title: "Email",
description: "Reach us at info@alpinehaven.ch for detailed inquiries, group bookings, or special requests. We respond to all emails within 24 hours during business hours.",
imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=3",
imageAlt: "Email contact",
},
{
id: 3,
title: "Visit Us", description: "Alpine Haven, Dorfstrasse 42, 3822 Wilderswil, Switzerland. Nestled in the Bernese Oberland region with direct access to alpine trails and Swiss village charm.", imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=3", imageAlt: "Our location"},
title: "Visit Us",
description: "Alpine Haven, Dorfstrasse 42, 3822 Wilderswil, Switzerland. Nestled in the Bernese Oberland region with direct access to alpine trails and Swiss village charm.",
imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=3",
imageAlt: "Our location",
},
]}
title="Get In Touch"
description="We're delighted to assist with your alpine retreat. Connect with our team through any of these channels."

View File

@@ -5,22 +5,36 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const sourceSans3 = Source_Sans_3({
variable: "--font-source-sans-3", subsets: ["latin"],
variable: "--font-source-sans-3",
subsets: ["latin"],
});
export const metadata: Metadata = {
title: "Alpine Haven Boutique Hotel & Apartments in Switzerland", description: "Discover refined alpine luxury in the heart of Switzerland. Panoramic mountain views, serviced apartments, and peaceful Swiss hospitality await at Alpine Haven.", keywords: "boutique hotel Switzerland, alpine resort, luxury accommodation, serviced apartments, mountain views", robots: {
title: "Alpine Haven Boutique Hotel & Apartments in Switzerland",
description: "Discover refined alpine luxury in the heart of Switzerland. Panoramic mountain views, serviced apartments, and peaceful Swiss hospitality await at Alpine Haven.",
keywords: "boutique hotel Switzerland, alpine resort, luxury accommodation, serviced apartments, mountain views",
robots: {
index: true,
follow: true,
},
openGraph: {
title: "Alpine Haven Swiss Luxury Retreat", description: "Experience panoramic alpine views and refined hospitality in Switzerland's most serene boutique hotel and serviced apartments.", url: "https://alpinehaven.ch", siteName: "Alpine Haven", type: "website", images: [
title: "Alpine Haven Swiss Luxury Retreat",
description: "Experience panoramic alpine views and refined hospitality in Switzerland's most serene boutique hotel and serviced apartments.",
url: "https://alpinehaven.ch",
siteName: "Alpine Haven",
type: "website",
images: [
{
url: "http://img.b2bpic.net/free-photo/landscape-punta-sorapiss-surrounded-by-lake-italy_181624-60947.jpg", alt: "Panoramic Swiss alpine landscape"},
url: "http://img.b2bpic.net/free-photo/landscape-punta-sorapiss-surrounded-by-lake-italy_181624-60947.jpg",
alt: "Panoramic Swiss alpine landscape",
},
],
},
twitter: {
card: "summary_large_image", title: "Alpine Haven Swiss Boutique Hotel", description: "Panoramic views, peaceful alpine retreat, luxury serviced apartments", images: ["http://img.b2bpic.net/free-photo/landscape-punta-sorapiss-surrounded-by-lake-italy_181624-60947.jpg"],
card: "summary_large_image",
title: "Alpine Haven Swiss Boutique Hotel",
description: "Panoramic views, peaceful alpine retreat, luxury serviced apartments",
images: ["http://img.b2bpic.net/free-photo/landscape-punta-sorapiss-surrounded-by-lake-italy_181624-60947.jpg"],
},
};

View File

@@ -3,7 +3,7 @@
import Link from "next/link";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
import HeroOverlay from "@/components/sections/hero/HeroOverlay";
import HeroLogoBillboardSplit from "@/components/sections/hero/HeroLogoBillboardSplit";
import AboutMetric from "@/components/sections/about/AboutMetric";
import FeatureCardSeven from "@/components/sections/feature/FeatureCardSeven";
import ProductCardOne from "@/components/sections/product/ProductCardOne";
@@ -62,7 +62,8 @@ export default function HomePage() {
brandName="Alpine Haven"
navItems={navItems}
button={{
text: "Book Now", href: "#"
text: "Book Now",
href: "#",
}}
className="fixed top-0 left-0 right-0 z-50"
buttonClassName="text-xs uppercase tracking-wide"
@@ -70,15 +71,19 @@ export default function HomePage() {
</div>
<div id="hero" data-section="hero">
<HeroOverlay
title="Alpine Haven"
<HeroLogoBillboardSplit
logoText="Alpine Haven"
description="Discover the perfect blend of comfort and simplicity. Panoramic mountain views, peaceful alpine air, and refined Swiss hospitality await."
background={{ variant: "plain" }}
buttons={[{ text: "Book Now", href: "#" }]}
layoutOrder="default"
imageSrc="http://img.b2bpic.net/free-photo/landscape-punta-sorapiss-surrounded-by-lake-italy_181624-60947.jpg"
imageAlt="Panoramic Swiss alpine landscape with crystalline lake"
buttons={[{ text: "Book Now", href: "#" }]}
frameStyle="card"
mediaAnimation="opacity"
buttonAnimation="slide-up"
containerClassName="min-h-screen flex flex-col justify-center"
titleClassName="text-5xl md:text-7xl font-light tracking-tight"
logoClassName="text-5xl md:text-7xl font-light tracking-tight"
descriptionClassName="text-lg md:text-xl leading-relaxed font-light"
buttonClassName="px-8 py-3 text-sm uppercase tracking-widest"
/>
@@ -105,15 +110,24 @@ export default function HomePage() {
features={[
{
id: 1,
title: "Deluxe Mountain Room", description: "45 m² | North-facing with unobstructed alpine peaks, large windows, natural light throughout the day, minimalist furnishings in warm tones.", imageSrc: "http://img.b2bpic.net/free-photo/indoor-design-luxury-resort_23-2150497282.jpg?_wi=1", imageAlt: "Deluxe mountain room with alpine views"
title: "Deluxe Mountain Room",
description: "45 m² | North-facing with unobstructed alpine peaks, large windows, natural light throughout the day, minimalist furnishings in warm tones.",
imageSrc: "http://img.b2bpic.net/free-photo/indoor-design-luxury-resort_23-2150497282.jpg?_wi=1",
imageAlt: "Deluxe mountain room with alpine views",
},
{
id: 2,
title: "Premium Lake Suite", description: "60 m² | South-facing panoramic lake and valley views, private terrace, spa-inspired bathroom with heated floors, custom-crafted furniture.", imageSrc: "http://img.b2bpic.net/free-photo/bangkok-thailand-august-12-2016-beautiful-luxury-bathroom_1203-2725.jpg", imageAlt: "Premium lake suite with spa bathroom"
title: "Premium Lake Suite",
description: "60 m² | South-facing panoramic lake and valley views, private terrace, spa-inspired bathroom with heated floors, custom-crafted furniture.",
imageSrc: "http://img.b2bpic.net/free-photo/bangkok-thailand-august-12-2016-beautiful-luxury-bathroom_1203-2725.jpg",
imageAlt: "Premium lake suite with spa bathroom",
},
{
id: 3,
title: "Classic Alpine Room", description: "38 m² | Cozy and intimate, partial mountain view, efficient layout perfect for travelers seeking simplicity and elegance.", imageSrc: "http://img.b2bpic.net/free-photo/indoor-design-luxury-resort_23-2150497282.jpg?_wi=2", imageAlt: "Classic alpine room with mountain view"
title: "Classic Alpine Room",
description: "38 m² | Cozy and intimate, partial mountain view, efficient layout perfect for travelers seeking simplicity and elegance.",
imageSrc: "http://img.b2bpic.net/free-photo/indoor-design-luxury-resort_23-2150497282.jpg?_wi=2",
imageAlt: "Classic alpine room with mountain view",
},
]}
title="Room Categories"
@@ -131,10 +145,18 @@ export default function HomePage() {
<ProductCardOne
products={[
{
id: "1", name: "One-Bedroom Apartment", price: "72 m²", imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-exercising-after-online-instructor_23-2149240292.jpg", imageAlt: "One-bedroom serviced apartment"
id: "1",
name: "One-Bedroom Apartment",
price: "72 m²",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-exercising-after-online-instructor_23-2149240292.jpg",
imageAlt: "One-bedroom serviced apartment",
},
{
id: "2", name: "Two-Bedroom Apartment", price: "95 m²", imageSrc: "http://img.b2bpic.net/free-photo/couple-home-spending-time-together_23-2149185075.jpg", imageAlt: "Two-bedroom luxury apartment"
id: "2",
name: "Two-Bedroom Apartment",
price: "95 m²",
imageSrc: "http://img.b2bpic.net/free-photo/couple-home-spending-time-together_23-2149185075.jpg",
imageAlt: "Two-bedroom luxury apartment",
},
]}
title="Stay Longer"
@@ -152,13 +174,28 @@ export default function HomePage() {
<MetricCardEleven
metrics={[
{
id: "1", value: "Dawn", title: "Morning Light", description: "Golden sunlight across the peaks", imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=1", imageAlt: "Sunrise in the mountains"
id: "1",
value: "Dawn",
title: "Morning Light",
description: "Golden sunlight across the peaks",
imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=1",
imageAlt: "Sunrise in the mountains",
},
{
id: "2", value: "Day", title: "Alpine Air", description: "Crisp breeze, endless horizons", imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=1", imageAlt: "Alpine meadow landscape"
id: "2",
value: "Day",
title: "Alpine Air",
description: "Crisp breeze, endless horizons",
imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=1",
imageAlt: "Alpine meadow landscape",
},
{
id: "3", value: "Dusk", title: "Evenings with a View", description: "Sunsets paint the sky amber and rose", imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=1", imageAlt: "Mountain sunset view"
id: "3",
value: "Dusk",
title: "Evenings with a View",
description: "Sunsets paint the sky amber and rose",
imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=1",
imageAlt: "Mountain sunset view",
},
]}
title="Moments at Alpine Haven"

View File

@@ -57,7 +57,9 @@ export default function PracticalInfoPage() {
brandName="Alpine Haven"
navItems={navItems}
button={{
text: "Book Now", href: "#"}}
text: "Book Now",
href: "#",
}}
className="fixed top-0 left-0 right-0 z-50"
buttonClassName="text-xs uppercase tracking-wide"
/>
@@ -68,13 +70,25 @@ export default function PracticalInfoPage() {
features={[
{
id: 1,
title: "Arrival & Check-in", description: "Arrive between 3 PM and 7 PM for seamless check-in. Our concierge team welcomes you with complimentary alpine tea and detailed local orientation. Early arrival can be arranged upon request.", imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=2", imageAlt: "Alpine Haven entrance"},
title: "Arrival & Check-in",
description: "Arrive between 3 PM and 7 PM for seamless check-in. Our concierge team welcomes you with complimentary alpine tea and detailed local orientation. Early arrival can be arranged upon request.",
imageSrc: "http://img.b2bpic.net/free-photo/light-through-mountains_395237-33.jpg?_wi=2",
imageAlt: "Alpine Haven entrance",
},
{
id: 2,
title: "Getting Around", description: "Located just 20 minutes from the nearest alpine railway. Complimentary shuttle service to local hiking trails and village markets available daily. Bicycle rentals and private car services on request.", imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=2", imageAlt: "Mountain roads and access"},
title: "Getting Around",
description: "Located just 20 minutes from the nearest alpine railway. Complimentary shuttle service to local hiking trails and village markets available daily. Bicycle rentals and private car services on request.",
imageSrc: "http://img.b2bpic.net/free-photo/wonderful-landscape-ukrainian-carpathian-mountains_176420-7175.jpg?_wi=2",
imageAlt: "Mountain roads and access",
},
{
id: 3,
title: "Dining & Amenities", description: "Our farm-to-table restaurant serves regional Swiss cuisine daily. Room service available 7 AM to 10 PM. Wellness centre with mountain-view spa, fitness studio, and meditation spaces for complete relaxation.", imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=2", imageAlt: "Dining and amenities"},
title: "Dining & Amenities",
description: "Our farm-to-table restaurant serves regional Swiss cuisine daily. Room service available 7 AM to 10 PM. Wellness centre with mountain-view spa, fitness studio, and meditation spaces for complete relaxation.",
imageSrc: "http://img.b2bpic.net/free-photo/mesmerizing-view-mountains-covered-snow-sunrise_181624-15487.jpg?_wi=2",
imageAlt: "Dining and amenities",
},
]}
title="Essential Information"
description="Everything you need to know for your alpine retreat at Alpine Haven."

View File

@@ -2,23 +2,23 @@
/* Base units */
/* --vw is set by ThemeProvider */
/* --background: #fcf6ec;;;;;;
--card: #f3ede2;;;;;;
--foreground: #2e2521;;;;;;
--primary-cta: #2e2521;;;;;;
--secondary-cta: #ffffff;;;;;;
--accent: #b2a28b;;;;;;
--background-accent: #b2a28b;;;;;; */
/* --background: #f5f4f0;;;;
--card: #ffffff;;;;
--foreground: #1a1a1a;;;;
--primary-cta: #2c2c2c;;;;
--secondary-cta: #f5f4f0;;;;
--accent: #8a8a8a;;;;
--background-accent: #e8e6e1;;;; */
--background: #fcf6ec;;;;;;
--card: #f3ede2;;;;;;
--foreground: #2e2521;;;;;;
--primary-cta: #2e2521;;;;;;
--primary-cta-text: #fcf6ec;;;;;;
--secondary-cta: #ffffff;;;;;;
--secondary-cta-text: #2e2521;;;;;;
--accent: #b2a28b;;;;;;
--background-accent: #b2a28b;;;;;;
--background: #f5f4f0;;;;
--card: #ffffff;;;;
--foreground: #1a1a1a;;;;
--primary-cta: #2c2c2c;;;;
--primary-cta-text: #f5f4f0;;;;
--secondary-cta: #f5f4f0;;;;
--secondary-cta-text: #1a1a1a;;;;
--accent: #8a8a8a;;;;
--background-accent: #e8e6e1;;;;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);