507 lines
19 KiB
JSON
507 lines
19 KiB
JSON
{
|
|
"projectName": "KwaNtofontofo",
|
|
"businessType": "hotel",
|
|
"industry": "hotel",
|
|
"tone": "",
|
|
"tier": 2,
|
|
"serviceType": "hotel",
|
|
"generatedAt": "2026-06-23T07:49:35.004Z",
|
|
"sections": [
|
|
{
|
|
"name": "WarmRegalWelcomeHeroSection",
|
|
"importPath": "@/components/sections/WarmRegalWelcomeHeroSection",
|
|
"position": 0,
|
|
"role": "hero",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": 3,
|
|
"layout": "flex-row",
|
|
"headings": [],
|
|
"buttonLabels": [
|
|
"Book Your Royal Stay"
|
|
],
|
|
"people": [],
|
|
"allText": [
|
|
"next/image",
|
|
"next/link",
|
|
"@/components/ui/Button",
|
|
"warmregalwelcomehero",
|
|
"hero",
|
|
"relative h-[80vh] lg:h-[90vh] overflow-hidden",
|
|
"KwaNtofontofo guest house exterior with swimming pool and nature reserve view",
|
|
"100vw",
|
|
"object-cover",
|
|
"absolute inset-0 bg-black/50",
|
|
"absolute inset-0 flex items-center",
|
|
"container mx-auto px-4 text-center",
|
|
"text-4xl md:text-6xl font-bold text-white mb-4",
|
|
"Welcome to",
|
|
"text-[#d4af37]",
|
|
"KwaNtofontofo",
|
|
"text-lg md:text-xl text-white/90 max-w-2xl mx-auto mb-8",
|
|
"Experience complete privacy and regal comfort just 1 km from Pietermaritzburg Airport. \n Across the street, zebras graze and monkeys play in the nature reserve. \n This is your home away from home — where you are treated like royalty.",
|
|
"default",
|
|
"lg",
|
|
"bg-[#d4af37] hover:bg-[#b8962f] text-white px-8 py-3 rounded-lg font-semibold",
|
|
"Book Your Royal Stay"
|
|
]
|
|
},
|
|
{
|
|
"name": "KwaNtofontofoStorySection",
|
|
"importPath": "@/components/sections/KwaNtofontofoStorySection",
|
|
"position": 1,
|
|
"role": "about",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": 13,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Our Story — A Home Away from Home"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"next/image",
|
|
"lucide-react",
|
|
"kwantofontofostory",
|
|
"our-story",
|
|
"py-20 bg-white",
|
|
"container mx-auto px-4",
|
|
"grid grid-cols-1 lg:grid-cols-2 gap-12 items-center",
|
|
"relative h-80 lg:h-[500px] overflow-hidden rounded-xl",
|
|
"KwaNtofontofo guest house with peaceful outdoor area",
|
|
"(max-width: 768px) 100vw, 50vw",
|
|
"object-cover",
|
|
"text-3xl md:text-4xl font-bold text-gray-900 mb-6",
|
|
"Our Story — A Home Away from Home",
|
|
"space-y-4 text-gray-600 leading-relaxed",
|
|
"KwaNtofontofo was born in 2004 with a clear dream: to become one of the finest guest houses in KwaZulu-Natal. \n Nestled at",
|
|
"44 Rutherford Circle, Bisley, Pietermaritzburg",
|
|
", we offer a sanctuary of complete privacy \n where you can unwind and feel truly at home. Just across the street, a nature reserve hosts zebras grazing and monkeys \n swinging in the trees — a daily reminder of the natural beauty surrounding us.",
|
|
"Our vision is to be synonymous with the highest professional standards, with staff equipped to welcome guests from all \n walks of life. Our mission: to provide excellent, efficient, and professional services within safe, affordable, and \n accessible facilities — exceeding expectations through trained staff who live the spirit of",
|
|
"ubuntu",
|
|
"What awaits you:",
|
|
"tea and coffee in your room, free secure parking monitored by a burglar alarm, \n Wi-Fi throughout, laundry service, a refreshing swimming pool with a tranquil entertainment area and braai facilities, \n and a delicious traditional English breakfast served daily (dinner available on request). Whether you are a business \n traveler, a UKZN academic, an airport transit guest, or a leisure tourist, we promise a memorable experience — treated \n like a king or queen from the moment you arrive.",
|
|
"mt-8 flex flex-wrap gap-4",
|
|
"flex items-center gap-2 text-sm text-gray-500",
|
|
"text-[#d4af37]",
|
|
"1 km from airport, 4 km from UKZN",
|
|
"Tea & Coffee",
|
|
"Free Secure Parking",
|
|
"Wi-Fi",
|
|
"Laundry Service",
|
|
"Swimming Pool",
|
|
"Breakfast Available"
|
|
]
|
|
},
|
|
{
|
|
"name": "ThemedRegalSuitesSection",
|
|
"importPath": "@/components/sections/ThemedRegalSuitesSection",
|
|
"position": 2,
|
|
"role": "unknown",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": 13,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Themed Regal Suites"
|
|
],
|
|
"buttonLabels": [
|
|
"Book Now"
|
|
],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"@/hooks/useMedusaProducts",
|
|
"@/components/ui/Card",
|
|
"@/components/ui/Button",
|
|
"next/link",
|
|
"next/image",
|
|
"lucide-react",
|
|
"themedregalsuites",
|
|
"themed-suites",
|
|
"py-20 bg-white",
|
|
"container mx-auto px-4 text-center",
|
|
"text-lg text-gray-500",
|
|
"Loading our royal suites...",
|
|
"text-lg text-red-500",
|
|
"Unable to load suites. Please try again later.",
|
|
"py-20 bg-neutral-50",
|
|
"container mx-auto px-4",
|
|
"text-center mb-12",
|
|
"text-3xl md:text-4xl font-bold text-gray-900 mb-4",
|
|
"Themed Regal Suites",
|
|
"text-gray-600 max-w-2xl mx-auto",
|
|
"Each of our six individually themed, fully air-conditioned luxury suites offers en-suite bathroom, TV with DStv, and a private sanctuary feel. Choose the room that speaks to your soul.",
|
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",
|
|
"hover:shadow-[var(--shadow-lifted)] hover:-translate-y-0.5 transition-all duration-200 ease-out",
|
|
"relative aspect-video overflow-hidden rounded-t-xl",
|
|
"(max-width: 768px) 100vw, 50vw",
|
|
"object-cover",
|
|
"w-full h-full bg-gray-200 flex items-center justify-center text-gray-400",
|
|
"text-xl font-semibold text-gray-900",
|
|
"text-gray-500 line-clamp-2",
|
|
"flex items-center gap-2 text-sm text-gray-500",
|
|
"Air-conditioned",
|
|
"DStv",
|
|
"Wi-Fi",
|
|
"flex items-center justify-between",
|
|
"text-[#d4af37] font-bold text-lg",
|
|
"default",
|
|
"sm",
|
|
"bg-[#d4af37] hover:bg-[#b8962f] text-white",
|
|
"Book Now"
|
|
]
|
|
},
|
|
{
|
|
"name": "KwaNtofontofoSpecialsSection",
|
|
"importPath": "@/components/sections/KwaNtofontofoSpecialsSection",
|
|
"position": 3,
|
|
"role": "cms-promotions",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": -1,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"KwaNtofontofo Specials"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"@/hooks/useEmDashContent",
|
|
"@/components/ui/Card",
|
|
"next/image",
|
|
"@/components/ui/Badge",
|
|
"promotions",
|
|
"flex justify-center py-16",
|
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
|
"specials",
|
|
"kwantofontofospecials",
|
|
"py-16 bg-neutral-50",
|
|
"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",
|
|
"text-3xl font-bold text-[#d4af37] text-center mb-4",
|
|
"KwaNtofontofo Specials",
|
|
"text-center text-neutral-600 mb-12 max-w-2xl mx-auto",
|
|
"Exclusive offers crafted to make your stay even more regal. Treat yourself to a memorable escape.",
|
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8",
|
|
"overflow-hidden border border-neutral-100 shadow-[var(--shadow-card)] hover:shadow-[var(--shadow-lifted)] hover:-translate-y-0.5 transition-all duration-200 ease-out",
|
|
"aspect-video relative overflow-hidden",
|
|
"Special offer",
|
|
"(max-width: 768px) 100vw, 50vw",
|
|
"object-cover hover:scale-105 transition-transform duration-500 ease-out",
|
|
"text-lg text-[#111827]",
|
|
"Special",
|
|
"text-neutral-600 text-sm mb-3",
|
|
"default",
|
|
"bg-[#d4af37] text-white px-3 py-1 text-sm"
|
|
],
|
|
"cmsCollection": "promotions"
|
|
},
|
|
{
|
|
"name": "GuesthouseGallerySection",
|
|
"importPath": "@/components/sections/GuesthouseGallerySection",
|
|
"position": 4,
|
|
"role": "gallery",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": -1,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"A Visual Journey",
|
|
"{d.title || ''}"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"@/hooks/useEmDashContent",
|
|
"next/image",
|
|
"gallery",
|
|
"flex justify-center py-16",
|
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
|
"guesthousegallery",
|
|
"py-16 bg-white",
|
|
"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",
|
|
"text-3xl font-bold text-[#d4af37] text-center mb-4",
|
|
"A Visual Journey",
|
|
"text-center text-neutral-600 mb-12 max-w-2xl mx-auto",
|
|
"Step inside KwaNtofontofo — elegant interiors, tranquil pool, braai entertainment, and nature's backdrop.",
|
|
"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6",
|
|
"group relative overflow-hidden rounded-xl border border-neutral-100 shadow-[var(--shadow-card)] hover:shadow-[var(--shadow-lifted)] transition-all duration-200 ease-out",
|
|
"aspect-[4/3] relative",
|
|
"Gallery image",
|
|
"(max-width: 768px) 100vw, (max-width: 1024px) 50vw, 33vw",
|
|
"object-cover group-hover:scale-105 transition-transform duration-500 ease-out",
|
|
"absolute inset-0 bg-gradient-to-t from-black/50 via-transparent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end p-4",
|
|
"text-white font-semibold text-lg",
|
|
"text-white/80 text-sm"
|
|
],
|
|
"cmsCollection": "gallery"
|
|
},
|
|
{
|
|
"name": "ImveloInsightsSection",
|
|
"importPath": "@/components/sections/ImveloInsightsSection",
|
|
"position": 5,
|
|
"role": "blog",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": -1,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Imvelo Insights",
|
|
"{d.title || 'Untitled'}"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"@/hooks/useEmDashContent",
|
|
"next/image",
|
|
"lucide-react",
|
|
"posts",
|
|
"flex justify-center py-16",
|
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
|
"stories",
|
|
"imveloinsights",
|
|
"py-16 bg-white",
|
|
"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",
|
|
"text-3xl font-bold text-[#d4af37] text-center mb-4",
|
|
"Imvelo Insights",
|
|
"text-center text-neutral-600 mb-12 max-w-2xl mx-auto",
|
|
"Stories from our journal — wildlife encounters, braai recipes, and local gems in Pietermaritzburg.",
|
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8",
|
|
"rounded-xl border border-neutral-100 bg-white shadow-[var(--shadow-card)] hover:shadow-[var(--shadow-lifted)] hover:-translate-y-0.5 transition-all duration-200 ease-out overflow-hidden",
|
|
"aspect-video relative overflow-hidden",
|
|
"Journal post",
|
|
"(max-width: 768px) 100vw, 50vw",
|
|
"object-cover hover:scale-105 transition-transform duration-500 ease-out",
|
|
"p-5",
|
|
"text-xs uppercase tracking-widest text-[#2563eb] font-semibold",
|
|
"mt-2 text-lg font-bold text-[#111827]",
|
|
"Untitled",
|
|
"mt-2 text-neutral-600 text-sm line-clamp-3",
|
|
"mt-4 flex items-center justify-between",
|
|
"text-xs text-neutral-500",
|
|
"By",
|
|
"inline-flex items-center text-[#d4af37] font-medium text-sm hover:underline cursor-pointer",
|
|
"Read more",
|
|
"ml-1 w-3 h-3"
|
|
],
|
|
"cmsCollection": "posts"
|
|
},
|
|
{
|
|
"name": "GuestsLalaKahlePraiseSection",
|
|
"importPath": "@/components/sections/GuestsLalaKahlePraiseSection",
|
|
"position": 6,
|
|
"role": "unknown",
|
|
"hasImage": false,
|
|
"hasForm": false,
|
|
"itemCount": 3,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Lala Kahle — Rest Well"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"Sipho Mkhize",
|
|
"Business traveller from Durban",
|
|
"Immaculate cleanliness, secure parking, and the warmest welcome. Woke up to zebras grazing across the road — unforgettable.",
|
|
"Linda Botha",
|
|
"UKZN visiting lecturer",
|
|
"Perfect for academics. Peaceful, fast Wi-Fi, and a hearty English breakfast. Felt like a queen during my stay.",
|
|
"James & Karen Wilson",
|
|
"Transit guests from the UK",
|
|
"One night turned into three. The braai area and pool made our stopover feel like a mini-holiday.",
|
|
"guestslalakahlepraise",
|
|
"guest-praise",
|
|
"py-16 bg-neutral-50",
|
|
"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",
|
|
"text-3xl font-bold text-[#d4af37] text-center mb-4",
|
|
"Lala Kahle — Rest Well",
|
|
"text-center text-neutral-600 mb-12 max-w-2xl mx-auto",
|
|
"Hear from guests who experienced regal treatment and restful sleep at KwaNtofontofo.",
|
|
"grid grid-cols-1 md:grid-cols-3 gap-6",
|
|
"bg-card rounded-xl p-6 border border-border shadow-[var(--shadow-card)]",
|
|
"text-muted-foreground mb-4 italic",
|
|
"“",
|
|
"”",
|
|
"font-semibold text-foreground",
|
|
"text-sm text-muted-foreground"
|
|
]
|
|
},
|
|
{
|
|
"name": "PlanYourRoyalStayCTASection",
|
|
"importPath": "@/components/sections/PlanYourRoyalStayCTASection",
|
|
"position": 7,
|
|
"role": "pricing",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": 2,
|
|
"layout": "flex-row",
|
|
"headings": [
|
|
"Reserve Your Royal Stay"
|
|
],
|
|
"buttonLabels": [
|
|
"Reserve Your Royal Stay"
|
|
],
|
|
"people": [],
|
|
"allText": [
|
|
"next/image",
|
|
"next/link",
|
|
"@/components/ui/Button",
|
|
"book-now",
|
|
"plantoyourroyalstayctasection",
|
|
"relative flex items-center justify-center py-24 md:py-32 px-4 overflow-hidden",
|
|
"absolute inset-0",
|
|
"Luxurious guest house room with warm lighting",
|
|
"(max-width: 768px) 100vw, 100vw",
|
|
"object-cover brightness-50",
|
|
"relative z-10 max-w-2xl text-center text-white",
|
|
"text-4xl md:text-5xl font-bold mb-4",
|
|
"Reserve Your Royal Stay",
|
|
"text-lg md:text-xl mb-8 opacity-90",
|
|
"Enjoy a private, air-conditioned haven just 1 km from the airport. Limited exclusive rooms available — book now for a truly regal experience.",
|
|
"default",
|
|
"lg",
|
|
"bg-[#d4af37] hover:bg-[#b8962e] text-white px-8 py-4 text-lg font-semibold shadow-lg"
|
|
]
|
|
},
|
|
{
|
|
"name": "KwaNtofontofoEnquirySection",
|
|
"importPath": "@/components/sections/KwaNtofontofoEnquirySection",
|
|
"position": 8,
|
|
"role": "contact",
|
|
"hasImage": false,
|
|
"hasForm": true,
|
|
"itemCount": 13,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Thank You",
|
|
"Get in Touch"
|
|
],
|
|
"buttonLabels": [
|
|
"Send Enquiry"
|
|
],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"react",
|
|
"@/components/ui/Button",
|
|
"@/components/ui/Input",
|
|
"lucide-react",
|
|
"contact",
|
|
"bg-white py-16 px-4",
|
|
"max-w-lg mx-auto text-center",
|
|
"text-3xl font-bold text-[#d4af37] mb-4",
|
|
"Thank You",
|
|
"text-gray-600",
|
|
"Your enquiry has been received. We will get back to you personally and promptly.",
|
|
"kwantofontofoenquirysection",
|
|
"bg-neutral-50 py-16 px-4",
|
|
"max-w-5xl mx-auto grid md:grid-cols-2 gap-10 items-start",
|
|
"text-3xl font-bold text-gray-900 mb-6",
|
|
"Get in Touch",
|
|
"text-gray-600 mb-8",
|
|
"Have a question or want to book? Drop us a message and we will respond personally.",
|
|
"space-y-4 text-gray-700",
|
|
"flex items-start gap-3",
|
|
"w-5 h-5 text-[#d4af37] mt-1",
|
|
"font-semibold",
|
|
"Phone / WhatsApp",
|
|
"+27 33 940 1234",
|
|
"Email",
|
|
"info@kwantofontofo.co.za",
|
|
"Address",
|
|
"44 Rutherford Circle, Bisley, Pietermaritzburg, 3201, KwaZulu-Natal",
|
|
"bg-white rounded-xl p-6 shadow-[var(--shadow-card)] space-y-4",
|
|
"block text-sm font-medium text-gray-700 mb-1",
|
|
"Your Name",
|
|
"text",
|
|
"e.g. Thandi Mokoena",
|
|
"Email Address",
|
|
"email",
|
|
"you@example.com",
|
|
"Your Message",
|
|
"w-full border border-gray-300 rounded-lg px-3 py-2 focus:outline-none focus:ring-2 focus:ring-[#d4af37] focus:border-transparent",
|
|
"Tell us how we can help...",
|
|
"submit",
|
|
"default",
|
|
"lg",
|
|
"w-full bg-[#d4af37] hover:bg-[#b8962e] text-white",
|
|
"Send Enquiry"
|
|
]
|
|
},
|
|
{
|
|
"name": "KwaNtofontofoLocationSection",
|
|
"importPath": "@/components/sections/KwaNtofontofoLocationSection",
|
|
"position": 9,
|
|
"role": "unknown",
|
|
"hasImage": true,
|
|
"hasForm": false,
|
|
"itemCount": -1,
|
|
"layout": "grid",
|
|
"headings": [
|
|
"Our Location",
|
|
"Business Hours",
|
|
"KwaNtofontofo Guest House location"
|
|
],
|
|
"buttonLabels": [],
|
|
"people": [],
|
|
"allText": [
|
|
"use client",
|
|
"@/hooks/useEmDashContent",
|
|
"lucide-react",
|
|
"business_hours",
|
|
"flex justify-center py-16",
|
|
"w-8 h-8 rounded-full border-2 border-[#d4af37] border-t-transparent animate-spin",
|
|
"location",
|
|
"kwantofontofolocation",
|
|
"bg-white py-16 px-4",
|
|
"max-w-5xl mx-auto",
|
|
"text-3xl font-bold text-gray-900 mb-6 text-center",
|
|
"Our Location",
|
|
"grid md:grid-cols-2 gap-8",
|
|
"space-y-4",
|
|
"flex items-start gap-3",
|
|
"w-5 h-5 text-[#d4af37] mt-1",
|
|
"font-semibold",
|
|
"Address",
|
|
"text-gray-600",
|
|
"44 Rutherford Circle, Bisley, Pietermaritzburg, 3201, KwaZulu-Natal",
|
|
"Convenience & Safety",
|
|
"Opposite the Bisley Nature Reserve. Just 1 km from Pietermaritzburg Airport. Secure parking under burglar alarm.",
|
|
"w-full h-64 rounded-xl overflow-hidden border border-gray-200",
|
|
"100%",
|
|
"lazy",
|
|
"no-referrer-when-downgrade",
|
|
"KwaNtofontofo Guest House location",
|
|
"bg-neutral-50 rounded-xl p-6 border border-gray-200",
|
|
"flex items-center gap-2 mb-4",
|
|
"w-5 h-5 text-[#d4af37]",
|
|
"text-xl font-semibold text-gray-900",
|
|
"Business Hours",
|
|
"space-y-2",
|
|
"flex justify-between text-gray-700",
|
|
"font-medium",
|
|
"text-red-500",
|
|
"Closed",
|
|
"text-sm text-gray-500 mt-4",
|
|
"* Public holidays may differ. Please enquire."
|
|
],
|
|
"cmsCollection": "business_hours"
|
|
}
|
|
],
|
|
"navigationLinks": [
|
|
"KwaNtofontofo",
|
|
"Home",
|
|
"Themed Regal Suites",
|
|
"Kwa Ntofontofo Story",
|
|
"Kwa Ntofontofo Specials",
|
|
"Guesthouse Gallery",
|
|
"Kwa Ntofontofo Enquiry",
|
|
"Book a Room"
|
|
]
|
|
} |