first commit
This commit is contained in:
35
src/app/about-us/page.tsx
Normal file
35
src/app/about-us/page.tsx
Normal file
@@ -0,0 +1,35 @@
|
||||
import React from "react";
|
||||
import AboutHero from "@/components/sections/AboutHero";
|
||||
import TheDoormileWay from "@/components/sections/TheDoormileWay";
|
||||
import EVLogisticSection from "@/components/sections/EVLogisticSection";
|
||||
import WomenSection from "@/components/sections/WomenSection";
|
||||
import CompetitiveEdge from "@/components/sections/CompetitiveEdge";
|
||||
import IntelligenceGrid from "@/components/sections/IntelligenceGrid";
|
||||
import OurTeam from "@/components/sections/OurTeam";
|
||||
import AboutCTA from "@/components/sections/AboutCTA";
|
||||
|
||||
export const metadata = {
|
||||
title: "About Us – Doormile",
|
||||
description: "Meet the best crew and operators behind Doormile. Explore our roadmap, competitive edge, and operational excellence in EV and last-mile logistics.",
|
||||
};
|
||||
|
||||
export default function AboutUsPage() {
|
||||
return (
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="86" className="elementor elementor-86">
|
||||
<AboutHero />
|
||||
<TheDoormileWay />
|
||||
<EVLogisticSection />
|
||||
<WomenSection />
|
||||
<CompetitiveEdge />
|
||||
<IntelligenceGrid />
|
||||
<OurTeam />
|
||||
<AboutCTA />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
23
src/app/blog/page.tsx
Normal file
23
src/app/blog/page.tsx
Normal file
@@ -0,0 +1,23 @@
|
||||
import React from "react";
|
||||
import BlogsHero from "@/components/sections/BlogsHero";
|
||||
import BlogGrid from "@/components/sections/BlogGrid";
|
||||
|
||||
export const metadata = {
|
||||
title: "Blog – Doormile",
|
||||
description: "Insights and logistics intelligence from the team behind Doormile. Learn how AI is transforming EV planning and last-mile operations.",
|
||||
};
|
||||
|
||||
export default function BlogPage() {
|
||||
return (
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="104" className="elementor elementor-104">
|
||||
<BlogsHero />
|
||||
<BlogGrid />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
25
src/app/contact/page.tsx
Normal file
25
src/app/contact/page.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import React from "react";
|
||||
import ContactsHero from "@/components/sections/ContactsHero";
|
||||
import ContactForm from "@/components/sections/ContactForm";
|
||||
import ContactMap from "@/components/sections/ContactMap";
|
||||
|
||||
export const metadata = {
|
||||
title: "Contact Us – Doormile",
|
||||
description: "Get in touch with Doormile's last-mile logistics team. Call us, email, visit our Gachibowli, Hyderabad office, or drop a message.",
|
||||
};
|
||||
|
||||
export default function ContactPage() {
|
||||
return (
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="41" className="elementor elementor-41">
|
||||
<ContactsHero />
|
||||
<ContactForm />
|
||||
<ContactMap />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -1,26 +1,402 @@
|
||||
@import "tailwindcss";
|
||||
/* Tailwind utilities ONLY — preflight/base and components are disabled so production Elementor/WordPress CSS controls body, typography, colors, spacing, and resets. */
|
||||
@import "tailwindcss/utilities";
|
||||
|
||||
:root {
|
||||
--background: #ffffff;
|
||||
--foreground: #171717;
|
||||
}
|
||||
@media (min-width: 1025px) {
|
||||
#masthead .elementor-element.elementor-element-466de1b {
|
||||
top: 5px !important;
|
||||
padding: 0 28px !important;
|
||||
}
|
||||
|
||||
@theme inline {
|
||||
--color-background: var(--background);
|
||||
--color-foreground: var(--foreground);
|
||||
--font-sans: var(--font-geist-sans);
|
||||
--font-mono: var(--font-geist-mono);
|
||||
}
|
||||
#masthead .elementor-element.elementor-element-e052838 {
|
||||
margin-left: 1.4% !important;
|
||||
border-radius: 28px !important;
|
||||
background: rgba(31, 31, 31, 0.82) !important;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--background: #0a0a0a;
|
||||
--foreground: #ededed;
|
||||
#masthead .elementor-element.elementor-element-d681ece {
|
||||
align-items: center !important;
|
||||
min-height: 104px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-472172e {
|
||||
padding-top: 18px !important;
|
||||
padding-bottom: 18px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-846e53d .hfe-site-logo .hfe-site-logo-container img {
|
||||
width: 190px !important;
|
||||
height: auto !important;
|
||||
margin-left: 24px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-e44ee7e,
|
||||
#masthead .elementor-element.elementor-element-f961133 {
|
||||
padding-top: 14px !important;
|
||||
padding-bottom: 14px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-0b7bf6f > .elementor-widget-container {
|
||||
padding: 0 42px !important;
|
||||
border-radius: 22px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-0b7bf6f .header-menu-container .main-menu > li > a {
|
||||
padding-top: 15px !important;
|
||||
padding-bottom: 16px !important;
|
||||
font-size: 15px !important;
|
||||
line-height: 1.2 !important;
|
||||
}
|
||||
|
||||
#masthead .header-menu-container .main-menu {
|
||||
gap: 18px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-cabdb09 a.header-button {
|
||||
min-width: 185px !important;
|
||||
min-height: 58px !important;
|
||||
padding: 0 34px !important;
|
||||
border-radius: 24px !important;
|
||||
font-size: 18px !important;
|
||||
line-height: 58px !important;
|
||||
}
|
||||
|
||||
#masthead .elementor-element.elementor-element-466de1b.dm-header-scrolled {
|
||||
top: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
background: var(--background);
|
||||
color: var(--foreground);
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
.dm-contact-section {
|
||||
position: relative;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr) minmax(420px, 48%);
|
||||
min-height: 720px;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
background: #1f1f1f;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.dm-contact-left {
|
||||
position: relative;
|
||||
min-width: 0;
|
||||
padding: clamp(48px, 5vw, 76px) clamp(28px, 5vw, 72px);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.dm-contact-map {
|
||||
position: absolute;
|
||||
left: -5%;
|
||||
bottom: -1%;
|
||||
z-index: 0;
|
||||
width: min(980px, 112%);
|
||||
max-width: none;
|
||||
opacity: 0.34;
|
||||
pointer-events: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.dm-contact-kicker,
|
||||
.dm-contact-title,
|
||||
.dm-contact-copy,
|
||||
.dm-contact-info {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.dm-contact-kicker {
|
||||
margin: 0 0 clamp(44px, 5vw, 64px);
|
||||
color: #fff;
|
||||
font-size: clamp(16px, 1.2vw, 20px);
|
||||
font-weight: 600;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
.dm-contact-title {
|
||||
max-width: 850px;
|
||||
margin: 0;
|
||||
color: #fff;
|
||||
font-size: clamp(44px, 5.2vw, 86px);
|
||||
font-weight: 400;
|
||||
line-height: 1.18;
|
||||
letter-spacing: 0;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.dm-contact-copy {
|
||||
margin: clamp(36px, 4.5vw, 58px) 0 0;
|
||||
color: rgba(255, 255, 255, 0.92);
|
||||
font-size: clamp(18px, 1.55vw, 26px);
|
||||
font-weight: 400;
|
||||
line-height: 1.45;
|
||||
}
|
||||
|
||||
.dm-contact-info {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(180px, 0.85fr) minmax(260px, 1.45fr);
|
||||
gap: clamp(32px, 5vw, 74px);
|
||||
max-width: 860px;
|
||||
margin-top: clamp(72px, 7vw, 114px);
|
||||
}
|
||||
|
||||
.dm-contact-info-item h3 {
|
||||
margin: 0 0 32px;
|
||||
color: #fff;
|
||||
font-size: clamp(18px, 1.5vw, 25px);
|
||||
font-weight: 800;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
.dm-contact-info-item p {
|
||||
margin: 0;
|
||||
color: #fff;
|
||||
font-size: clamp(17px, 1.35vw, 24px);
|
||||
font-weight: 500;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.dm-contact-card {
|
||||
align-self: stretch;
|
||||
min-width: 0;
|
||||
margin: 22px 34px 0 0;
|
||||
padding: clamp(72px, 7vw, 132px) clamp(42px, 7.2vw, 150px) clamp(50px, 5.5vw, 82px);
|
||||
border-radius: 34px 34px 0 0;
|
||||
background: #fff;
|
||||
color: #1b1b1b;
|
||||
}
|
||||
|
||||
.dm-contact-card h3 {
|
||||
margin: 0 0 clamp(44px, 5vw, 68px);
|
||||
color: #1b1b1b;
|
||||
font-size: clamp(34px, 2.6vw, 45px);
|
||||
font-weight: 800;
|
||||
line-height: 1.1;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
.dm-contact-form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 28px;
|
||||
}
|
||||
|
||||
.dm-contact-form label {
|
||||
display: block;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.dm-contact-form label > span {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.dm-contact-form input,
|
||||
.dm-contact-form textarea {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
border: 1.5px solid #a9a9a9;
|
||||
border-radius: 14px;
|
||||
background: #fff;
|
||||
color: #1b1b1b;
|
||||
font-family: inherit;
|
||||
font-size: clamp(17px, 1.05vw, 20px);
|
||||
font-weight: 500;
|
||||
line-height: 1.4;
|
||||
outline: none;
|
||||
box-shadow: none;
|
||||
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
||||
}
|
||||
|
||||
.dm-contact-form input {
|
||||
height: 72px;
|
||||
padding: 0 28px;
|
||||
}
|
||||
|
||||
.dm-contact-form textarea {
|
||||
min-height: 250px;
|
||||
padding: 24px 28px;
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
.dm-contact-form input::placeholder,
|
||||
.dm-contact-form textarea::placeholder {
|
||||
color: #9c9c9c;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.dm-contact-form input:focus,
|
||||
.dm-contact-form textarea:focus {
|
||||
border-color: #c01227;
|
||||
box-shadow: 0 0 0 3px rgba(192, 18, 39, 0.11);
|
||||
}
|
||||
|
||||
.dm-contact-status {
|
||||
margin: -6px 0 0;
|
||||
font-size: 15px;
|
||||
font-weight: 700;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
.dm-contact-status-success {
|
||||
color: #247a3d;
|
||||
}
|
||||
|
||||
.dm-contact-status-error {
|
||||
color: #c01227;
|
||||
}
|
||||
|
||||
.dm-contact-submit {
|
||||
display: inline-flex;
|
||||
align-items: stretch;
|
||||
align-self: flex-start;
|
||||
height: 72px;
|
||||
margin-top: 26px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
border: 1.5px solid #e31d32;
|
||||
border-radius: 14px;
|
||||
background: #fff;
|
||||
color: #2d2d2d;
|
||||
font-family: inherit;
|
||||
font-size: clamp(16px, 1.02vw, 19px);
|
||||
font-weight: 800;
|
||||
line-height: 1;
|
||||
cursor: pointer;
|
||||
transition: transform 0.2s ease, border-color 0.2s ease, color 0.2s ease;
|
||||
}
|
||||
|
||||
.dm-contact-submit span:first-child {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
min-width: 220px;
|
||||
padding: 0 34px;
|
||||
}
|
||||
|
||||
.dm-contact-submit-icon {
|
||||
position: relative;
|
||||
display: inline-flex;
|
||||
width: 70px;
|
||||
min-width: 70px;
|
||||
background: #c01227;
|
||||
}
|
||||
|
||||
.dm-contact-submit-icon::before,
|
||||
.dm-contact-submit-icon::after {
|
||||
position: absolute;
|
||||
content: "";
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.dm-contact-submit-icon::before {
|
||||
top: 35px;
|
||||
left: 23px;
|
||||
width: 28px;
|
||||
height: 3px;
|
||||
transform: rotate(-45deg);
|
||||
transform-origin: right center;
|
||||
}
|
||||
|
||||
.dm-contact-submit-icon::after {
|
||||
top: 25px;
|
||||
right: 25px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
border-top: 3px solid #fff;
|
||||
border-right: 3px solid #fff;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.dm-contact-submit:hover,
|
||||
.dm-contact-submit:focus-visible {
|
||||
transform: translateY(-1px);
|
||||
border-color: #c01227;
|
||||
color: #111;
|
||||
}
|
||||
|
||||
.dm-contact-submit:disabled {
|
||||
cursor: wait;
|
||||
opacity: 0.72;
|
||||
}
|
||||
|
||||
@media (max-width: 1200px) {
|
||||
.dm-contact-section {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.dm-contact-left {
|
||||
min-height: 640px;
|
||||
}
|
||||
|
||||
.dm-contact-card {
|
||||
margin: 0 28px 40px;
|
||||
border-radius: 28px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 720px) {
|
||||
.dm-contact-left {
|
||||
min-height: auto;
|
||||
padding: 42px 22px 58px;
|
||||
}
|
||||
|
||||
.dm-contact-title {
|
||||
font-size: clamp(38px, 12vw, 58px);
|
||||
}
|
||||
|
||||
.dm-contact-info {
|
||||
grid-template-columns: 1fr;
|
||||
gap: 42px;
|
||||
margin-top: 54px;
|
||||
}
|
||||
|
||||
.dm-contact-info-item h3 {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
|
||||
.dm-contact-card {
|
||||
margin: 0 16px 32px;
|
||||
padding: 44px 22px 34px;
|
||||
border-radius: 24px;
|
||||
}
|
||||
|
||||
.dm-contact-card h3 {
|
||||
margin-bottom: 34px;
|
||||
}
|
||||
|
||||
.dm-contact-form {
|
||||
gap: 20px;
|
||||
}
|
||||
|
||||
.dm-contact-form input {
|
||||
height: 60px;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
.dm-contact-form textarea {
|
||||
min-height: 190px;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.dm-contact-submit {
|
||||
width: 100%;
|
||||
height: 64px;
|
||||
}
|
||||
|
||||
.dm-contact-submit span:first-child {
|
||||
flex: 1 1 auto;
|
||||
min-width: 0;
|
||||
padding: 0 22px;
|
||||
}
|
||||
|
||||
.dm-contact-submit-icon {
|
||||
width: 64px;
|
||||
min-width: 64px;
|
||||
}
|
||||
}
|
||||
|
||||
25
src/app/how-it-works/page.tsx
Normal file
25
src/app/how-it-works/page.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import React from "react";
|
||||
import HowItWorksHero from "../../components/sections/HowItWorksHero";
|
||||
import Miles3 from "../../components/sections/Miles3";
|
||||
import TheDoormileWay from "../../components/sections/TheDoormileWay";
|
||||
|
||||
export const metadata = {
|
||||
title: "How It Works – Doormile",
|
||||
description: "See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI.",
|
||||
};
|
||||
|
||||
export default function HowItWorksPage() {
|
||||
return (
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="59" className="elementor elementor-59">
|
||||
<HowItWorksHero />
|
||||
<Miles3 />
|
||||
<TheDoormileWay />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -1,20 +1,26 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Geist, Geist_Mono } from "next/font/google";
|
||||
import { Manrope } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import Header from "@/components/layout/Header";
|
||||
import Footer from "@/components/layout/Footer";
|
||||
import BodyClasses from "@/components/layout/BodyClasses";
|
||||
import BodyOverlay from "@/components/layout/BodyOverlay";
|
||||
import { HeaderUIProvider } from "@/components/layout/HeaderUIProvider";
|
||||
import { SHARED_BODY_CLASSES } from "@/lib/bodyClasses";
|
||||
|
||||
const geistSans = Geist({
|
||||
variable: "--font-geist-sans",
|
||||
subsets: ["latin"],
|
||||
});
|
||||
|
||||
const geistMono = Geist_Mono({
|
||||
variable: "--font-geist-mono",
|
||||
const manrope = Manrope({
|
||||
subsets: ["latin"],
|
||||
variable: "--font-manrope",
|
||||
weight: ["300", "400", "500", "600", "700", "800"],
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Create Next App",
|
||||
description: "Generated by create next app",
|
||||
title: "Doormile — Last-Mile Logistics Intelligence",
|
||||
description: "Doormile powers last-mile logistics with MileTruth™ AI, providing connected miles, SLA protection, and carrier management.",
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true,
|
||||
},
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
@@ -23,11 +29,51 @@ export default function RootLayout({
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
return (
|
||||
<html
|
||||
lang="en"
|
||||
className={`${geistSans.variable} ${geistMono.variable} h-full antialiased`}
|
||||
>
|
||||
<body className="min-h-full flex flex-col">{children}</body>
|
||||
<html lang="en-US" className={manrope.variable}>
|
||||
<head>
|
||||
{/* FontAwesome icons */}
|
||||
<link
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"
|
||||
/>
|
||||
{/* Load WordPress & Elementor compiled styles from public folder */}
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-elementor-generated-globals.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-elementor-base.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-elementor-custom.min.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-theme-core.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-global-overrides.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-layout-main.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-responsive-laptops.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-elementor-hfe.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-icons-fontello-load.css" />
|
||||
<link rel="stylesheet" href="/css/vendor/vendor-icons-fontello.css" />
|
||||
<link rel="stylesheet" href="/css/custom-frontend.min.css" />
|
||||
<link rel="stylesheet" href="/css/all-inlined-head-styles.css" />
|
||||
</head>
|
||||
{/*
|
||||
Production DOM (index.php + header.php):
|
||||
body
|
||||
├─ body-overlay (direct child of body — index.php line 6 / header.php line 5)
|
||||
├─ body-container (header.php line 14)
|
||||
│ └─ #page.hfeed.site (header.php line 15)
|
||||
│ ├─ header#masthead
|
||||
│ ├─ content-wrapper (children)
|
||||
│ └─ footer
|
||||
SSR ships body with shared WP/Elementor classes; BodyClasses (client) refines per route.
|
||||
*/}
|
||||
<body className={SHARED_BODY_CLASSES}>
|
||||
<BodyClasses />
|
||||
<HeaderUIProvider>
|
||||
<BodyOverlay />
|
||||
<div className="body-container">
|
||||
<div id="page" className="hfeed site">
|
||||
<Header />
|
||||
{children}
|
||||
<Footer />
|
||||
</div>
|
||||
</div>
|
||||
</HeaderUIProvider>
|
||||
</body>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
27
src/app/miletruth/page.tsx
Normal file
27
src/app/miletruth/page.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
import React from "react";
|
||||
import MileTruthHero from "../../components/sections/MileTruthHero";
|
||||
import Workflow1 from "../../components/sections/Workflow1";
|
||||
import Workflow2 from "../../components/sections/Workflow2";
|
||||
import Workflow3 from "../../components/sections/Workflow3";
|
||||
|
||||
export const metadata = {
|
||||
title: "MileTruth – Doormile",
|
||||
description: "Optimizes every stage of the delivery journey for maximum efficiency. Explore the only AI built exclusively for logistics.",
|
||||
};
|
||||
|
||||
export default function MileTruthPage() {
|
||||
return (
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="59" className="elementor elementor-59">
|
||||
<MileTruthHero />
|
||||
<Workflow1 />
|
||||
<Workflow2 />
|
||||
<Workflow3 />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -1,65 +1,37 @@
|
||||
import Image from "next/image";
|
||||
import React from "react";
|
||||
import type { Metadata } from "next";
|
||||
import IndexHero from "@/components/sections/IndexHero";
|
||||
import StatsBar from "@/components/sections/StatsBar";
|
||||
import TheProblem from "@/components/sections/TheProblem";
|
||||
import MarqueeTicker from "@/components/sections/MarqueeTicker";
|
||||
import ConnectedLogistics from "@/components/sections/ConnectedLogistics";
|
||||
import TheDoormileWay from "@/components/sections/TheDoormileWay";
|
||||
import EVSection from "@/components/sections/EVSection";
|
||||
import IndustrySolutions from "@/components/sections/IndustrySolutions";
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Doormile — Last-Mile Logistics Intelligence",
|
||||
description:
|
||||
"Doormile helps logistics companies track every mile with MileTruth™ AI. Real-time SLA protection and connected miles visibility.",
|
||||
};
|
||||
|
||||
export default function Home() {
|
||||
return (
|
||||
<div className="flex flex-col flex-1 items-center justify-center bg-zinc-50 font-sans dark:bg-black">
|
||||
<main className="flex flex-1 w-full max-w-3xl flex-col items-center justify-between py-32 px-16 bg-white dark:bg-black sm:items-start">
|
||||
<Image
|
||||
className="dark:invert"
|
||||
src="/next.svg"
|
||||
alt="Next.js logo"
|
||||
width={100}
|
||||
height={20}
|
||||
priority
|
||||
/>
|
||||
<div className="flex flex-col items-center gap-6 text-center sm:items-start sm:text-left">
|
||||
<h1 className="max-w-xs text-3xl font-semibold leading-10 tracking-tight text-black dark:text-zinc-50">
|
||||
To get started, edit the page.tsx file.
|
||||
</h1>
|
||||
<p className="max-w-md text-lg leading-8 text-zinc-600 dark:text-zinc-400">
|
||||
Looking for a starting point or more instructions? Head over to{" "}
|
||||
<a
|
||||
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
||||
className="font-medium text-zinc-950 dark:text-zinc-50"
|
||||
>
|
||||
Templates
|
||||
</a>{" "}
|
||||
or the{" "}
|
||||
<a
|
||||
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
||||
className="font-medium text-zinc-950 dark:text-zinc-50"
|
||||
>
|
||||
Learning
|
||||
</a>{" "}
|
||||
center.
|
||||
</p>
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="61" className="elementor elementor-61">
|
||||
<IndexHero />
|
||||
<StatsBar />
|
||||
<TheProblem />
|
||||
<MarqueeTicker />
|
||||
<ConnectedLogistics />
|
||||
<TheDoormileWay />
|
||||
<EVSection />
|
||||
<IndustrySolutions />
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col gap-4 text-base font-medium sm:flex-row">
|
||||
<a
|
||||
className="flex h-12 w-full items-center justify-center gap-2 rounded-full bg-foreground px-5 text-background transition-colors hover:bg-[#383838] dark:hover:bg-[#ccc] md:w-[158px]"
|
||||
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
className="dark:invert"
|
||||
src="/vercel.svg"
|
||||
alt="Vercel logomark"
|
||||
width={16}
|
||||
height={16}
|
||||
/>
|
||||
Deploy Now
|
||||
</a>
|
||||
<a
|
||||
className="flex h-12 w-full items-center justify-center rounded-full border border-solid border-black/[.08] px-5 transition-colors hover:border-transparent hover:bg-black/[.04] dark:border-white/[.145] dark:hover:bg-[#1a1a1a] md:w-[158px]"
|
||||
href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
Documentation
|
||||
</a>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
65
src/app/solutions/page.tsx
Normal file
65
src/app/solutions/page.tsx
Normal file
@@ -0,0 +1,65 @@
|
||||
import React from "react";
|
||||
import SolutionsHero from "@/components/sections/SolutionsHero";
|
||||
import SolutionCard1 from "@/components/sections/SolutionCard1";
|
||||
|
||||
export const metadata = {
|
||||
title: "Solutions – Doormile",
|
||||
description: "Discover how Doormile's connected logistics platform serves diverse industries (FMCG, Pharma, and Enterprise) with tailored solutions.",
|
||||
};
|
||||
|
||||
export default function SolutionsPage() {
|
||||
return (
|
||||
<>
|
||||
<style dangerouslySetInnerHTML={{ __html: `
|
||||
/* Fix "Why Businesses Choose Doormile" section — anchor absolute image left, push content right */
|
||||
.elementor-element.elementor-element-ead59d3 {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
.elementor-element.elementor-element-f35119c {
|
||||
position: absolute !important;
|
||||
left: -2% !important;
|
||||
top: 50% !important;
|
||||
transform: translateY(-50%) !important;
|
||||
width: 48% !important;
|
||||
max-width: 520px !important;
|
||||
opacity: 0.18 !important;
|
||||
z-index: 0 !important;
|
||||
pointer-events: none;
|
||||
}
|
||||
.elementor-element.elementor-element-56ecbb3 {
|
||||
position: relative !important;
|
||||
z-index: 1 !important;
|
||||
width: 55% !important;
|
||||
max-width: 55% !important;
|
||||
margin-left: auto !important;
|
||||
margin-right: 4% !important;
|
||||
}
|
||||
.elementor-element.elementor-element-56ecbb3 .e-con-inner {
|
||||
max-width: 100% !important;
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
@media (max-width: 1020px) {
|
||||
.elementor-element.elementor-element-f35119c { display: none !important; }
|
||||
.elementor-element.elementor-element-56ecbb3 {
|
||||
width: 100% !important;
|
||||
max-width: 100% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
}
|
||||
`}} />
|
||||
|
||||
<div className="content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none">
|
||||
<div className="content">
|
||||
<div className="content-inner">
|
||||
<div data-elementor-type="wp-page" data-elementor-id="59" className="elementor elementor-59">
|
||||
<SolutionsHero />
|
||||
<SolutionCard1 />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user